Add legally valid Aadhaar eSignatures to your product with a simple REST API. Upload a PDF, add signers, and get signing links back. Self serve with transparent pricing: ₹999/month plus credits from ₹15 per signature. No sales call.
Three calls take a PDF to a signing link. Use an official SDK or call the REST API from any language.
// npm install signyu
import { readFile } from "node:fs/promises";
import { SignYu } from "signyu";
const signyu = new SignYu({ apiKey: process.env.SIGNYU_API_KEY });
// 1. Upload the PDF
const doc = await signyu.documents.create({
file: await readFile("agreement.pdf"),
name: "Service Agreement",
});
// 2. Add signers
await signyu.documents.addSigners(doc.documentId, [
{ name: "Asha Rao", phone: "9876543210", email: "[email protected]" },
]);
// 3. Send and get a signing link per signer
const sent = await signyu.documents.send(doc.documentId);
console.log(sent.signers[0].signUrl);
# pip install signyu
import os
from signyu import SignYu
client = SignYu(api_key=os.environ["SIGNYU_API_KEY"])
# 1. Upload the PDF
with open("agreement.pdf", "rb") as f:
doc = client.documents.create(file=f, name="Service Agreement")
# 2. Add signers
client.documents.add_signers(doc["documentId"], [
{"name": "Asha Rao", "phone": "9876543210", "email": "[email protected]"},
])
# 3. Send and get a signing link per signer
sent = client.documents.send(doc["documentId"])
print(sent["signers"][0]["signUrl"])
# 1. Upload the PDF
curl -X POST https://signyu.com/api/v1/documents \
-H "Authorization: Bearer $SIGNYU_API_KEY" \
-F "[email protected]" \
-F "name=Service Agreement"
# 2. Add signers
curl -X POST https://signyu.com/api/v1/documents/{documentId}/signers \
-H "Authorization: Bearer $SIGNYU_API_KEY" \
-H "Content-Type: application/json" \
-d '{"signers":[{"name":"Asha Rao","phone":"9876543210","email":"[email protected]"}]}'
# 3. Send for signature
curl -X POST https://signyu.com/api/v1/documents/{documentId}/send \
-H "Authorization: Bearer $SIGNYU_API_KEY"
Everything you need to collect Aadhaar eSignatures
A focused API that covers the whole signing flow, from upload to certificate.
Aadhaar OTP eSign
Signers authenticate with an OTP sent to their Aadhaar linked mobile, through eMudhra, a licensed Certifying Authority. Signatures are valid under Section 3A of the IT Act 2000.
Signed webhooks
Receive signer.signed and document.completed events. Every delivery carries an HMAC SHA-256 signature so you can verify it came from us.
Custom signature placement
Place each signer's stamp on any page with exact coordinates, or use the default slot and skip placement entirely.
Completion certificate
Download a Signature Completion Certificate with a chronological audit trail for every completed document.
Official SDKs
Install signyu from npm or PyPI, or use the OpenAPI spec and Postman collection with any language.
Built for India
Our application servers run in Mumbai and signed documents are stored in India (AWS Mumbai).
Real time webhooks
Add webhook endpoints in your dashboard and we POST a JSON event to each one when a signer signs (signer.signed) and when the document is complete (document.completed). The completed event includes the certificate URL, so you can store the signed PDF and the audit trail together. Verify each request by computing an HMAC SHA-256 of the raw body with your endpoint secret and comparing it to the signature header.
API access is ₹999 per month with a 3-day free trial. Signatures are paid with credits, from ₹15 per signature on packs of 10 or more, GST inclusive. One credit is used per signer when you send a document. There is no setup fee, no annual contract, and no sales call.
Are signatures made through the API legally valid?
Yes. Every signature is an Aadhaar OTP based electronic signature issued through eMudhra, a licensed Certifying Authority, and is valid under Section 3A of the Information Technology Act 2000. A few documents, listed in the First Schedule of the Act (such as wills, powers of attorney, trusts, and sale deeds for immovable property), cannot be signed electronically under Indian law.
Which eSign service provider do you use?
SignYu uses eMudhra's eSign gateway. eMudhra runs the Aadhaar OTP authentication and issues the signature certificate. Aadhaar numbers are entered on the gateway and are never sent to or stored by SignYu.
Do signers need to create an account?
No. Each signer gets a signing link by email (and in the API response). They open it, verify with an OTP on their Aadhaar linked mobile, and the document is signed.
How long does an integration take?
The core flow is four API calls: create a document, add signers, send, and receive a webhook. With the official SDKs most teams have a working integration in a day or less.
How many signers can a document have?
Up to 6 signers per document. Every signer gets their own signing link when you send, and the final PDF carries every signature, each in its own stamp position.
How do I know when a document has been signed?
Configure a webhook endpoint in your dashboard. We send signer.signed when each signer finishes and document.completed when everyone has signed. You can also poll GET /api/v1/documents/{id} for status.
Can I control where the signature appears on the PDF?
Yes. Pass custom placement per signer with the page number and box coordinates. If you omit it, the signature goes in a default slot.
Do you have SDKs?
Yes. Official SDKs for Node.js (npm install signyu) and Python (pip install signyu). For other languages, use the REST API directly with the OpenAPI spec or the Postman collection.
Do I get a GST invoice?
Yes. GST invoices are issued for both the API subscription and credit purchases, and are available from your dashboard.
Start building with the SignYu API
Get API keys in minutes. Your first 3 days of API access are free.