Signing should not mean sending documents somewhere else.

Signer runs inside your own Doconut application. The document, the signature image and your certificate stay on your servers, and the signed file comes back as a PDF or a Word document.

One plugin, two ways to sign.

Use the C# API when signing happens on the server, and the drop-in widget when a person signs in the browser. Both follow the same licensing and certificate rules.

Sign from C#

Resolve DocumentSigner from dependency injection and call SignAsync with the document, the signature image, where it goes and, for a digital seal, your certificate.

Sign in the browser

The widget lets a user upload a PDF or Word file, draw, type or upload a signature, place it on the page, and download the signed result.

Your own certificate

Seal documents with your own PFX / PKCS#12 certificate. It is held in memory only and never logged, returned to a client or persisted.

Problems found at startup

When the widget is enabled, a missing file, a wrong password or a certificate without a private key stops the app at startup, not at the first signature.

Build your own UI

The widget talks to three documented HTTP endpoints. Use the same contract to build a signing screen that matches your product.

Web-farm ready

Behind a load balancer, uploads and signed results can live in a shared folder, encrypted at rest with AES-256.

Each signature is placed once, on one page. Hardware tokens, smart cards, HSMs and the Windows certificate store are not supported: the certificate must be a PFX file with its private key.

Everything a signature needs, in one plugin

Visible signatures, digital seals and Word output, with the same Doconut plugin model you already use for the viewer.

PDF and Word documents

Sign PDF and Word (.docx) files. A Word document is returned as a sealed PDF by default, or as a Word file.

Draw, type or upload

The visible signature is a PNG image: drawn on a canvas, typed in a signature font, or uploaded as PNG, JPG or GIF.

Digital seal

PDF seals are PKCS#7 detached signatures with SHA-256, for RSA or ECDSA keys, and carry the issuer certificates found in your PFX.

Signer details

The signer's name, the reason and the location can travel with the signature.

Customizable widget

Override any label, theme colors and fonts through CSS custom properties, and react to the widget's callbacks.

Clear startup log

At startup Doconut logs which certificate it uses and warns when it is expired, not yet valid, or not issued for document signing.

Signing widget showing the Digital signature and Visual only options

Choose how much a signature has to prove.

SignRequest.Mode, or the widget's Digital signature / Visual only choice, decides whether a signature is sealed.

Certified

The default. A visible signature plus a digital seal that PDF readers can verify for identity and integrity. Needs your certificate under a paid license.

Visual

The visible signature only. No certificate is needed, and the result is a picture, not a verifiable signature.

Word output

For .docx sources: a signed PDF (the default, verifiable everywhere) or a Word file with an OOXML package signature, which not every viewer shows.

Sign a document in a few lines of C#.

Register the plugin inside AddDoconut, then resolve DocumentSigner and call SignAsync. The result is the signed document as a stream, with its extension.

ContractSigning.cs
builder.Services.AddDoconut(options =>
{
    options.LicensePath = "Doconut.Viewer.lic";
    options.AddPlugin<Doconut.Plugins.Signer.SignerPlugin>();
});

var request = new SignRequest(
    new VisibleSignature(
        SignatureKind.Drawn, signaturePng),
    new SignaturePlacement(
        Page: 1, X: 0.58, Y: 0.80, W: 0.32, H: 0.12),
    SignerName: "Ada Lovelace",
    Reason: "I approve this document");

SignResult result = await signer.SignAsync(
    pdf, ".pdf", request, certificate, ct);
A document page with a visible signature placed by the Doconut Signer plugin

Available for every Doconut build.

Install the Signer package that matches your Doconut package, at the same version.

.NET 8

Doconut.NET8.Signer

.NET 6

Doconut.NET6.Signer

.NET Standard 2.1

Doconut.NETStandard.Signer

.NET Framework 4.7.2

Doconut.NETFramework.Signer (C# 9.0 or later)

Try it first, then sign for real.

Signer needs a license that grants the Signer capability. Its license file, Doconut.Viewer.Signer.lic, goes next to Doconut.Viewer.lic.

Evaluation

A temporary Demo license signs with a built-in demo certificate. The seal is genuine, but the output is watermarked and PDF readers do not trust it.

Production

A paid license that grants Signer, plus your own certificate, gives clean, sealed output.

Certificate checks

An expired or not-yet-valid certificate does not stop the app, but Certified signatures are refused until it is replaced. Visual signatures keep working.

Reader trust

A PDF reader shows the signature as valid when it trusts your certificate's root, such as your organization's own PKI.

Signer Plugin pricing

Choose the license that matches how you deploy document signing in your Doconut application.

LicensePriceBest forIncludes
Developer License
Coming soon
One developer building or maintaining a Doconut signing integration.Licensed access to the Signer plugin for development and project implementation.
Site License
Coming soon
A production deployment owned by one organization.Document signing for site-level deployments that need predictable commercial coverage.
SDK License
Coming soon
Teams embedding Doconut into redistributed or multi-client software.Broader licensing for SDK-style distribution and customer-facing product scenarios.

Signer plugin prices will be published soon. Contact us for a quote; final licensing terms depend on your Doconut license type and deployment model.

Contact sales

Where document signing fits.

Use the plugin when people or processes need to sign documents without leaving your application.

Contracts and agreements signed by customers inside a self-service portal.
Internal approvals where a manager signs a PDF before it moves on.
Server-side workflows that seal generated PDFs with the organization's certificate.
Word documents that must come back as a signed, sealed PDF.
Applications that need a simple visible stamp, with no certificate at all.

Signer adds the signature to the document. Who may sign, and in what order, stays under your application's control.

Signer Plugin FAQ

Key details for teams evaluating document signing in Doconut.

Which documents can I sign?

PDF and Word (.docx) files. A Word document is signed to PDF by default, or kept as Word with an OOXML package signature.

What is the difference between Certified and Visual?

Certified adds a visible signature plus a digital seal that a PDF reader can verify. Visual adds the visible signature only: no certificate is needed, and it is not cryptographically verifiable.

Which certificates can I use?

A PFX / PKCS#12 file with its private key, with RSA or ECDSA keys. Hardware tokens, smart cards, HSMs and the Windows certificate store are not supported; export the certificate to a PFX.

Will Adobe Reader trust my signature?

A reader trusts the signature when it trusts the certificate's root. With your organization's PKI, that holds on machines that trust your root. Certificates on the Adobe Approved Trust List are, as far as we know, issued on a hardware token or HSM, which this plugin cannot use; check with your certificate provider.

Can I try it before buying?

Yes. A temporary Demo license signs with the built-in demo certificate. The output is watermarked and readers do not trust the demo certificate, but you can build and test the integration end to end.

Do I have to use the widget?

No. You can sign from C# with DocumentSigner, use the drop-in widget, or build your own UI against the documented HTTP endpoints.

Which platforms are supported?

Signer ships for .NET 8, .NET 6, .NET Standard 2.1 and .NET Framework 4.7.2, and runs wherever the matching Doconut package runs. On .NET 8 and .NET 6 that is Windows and glibc-based Linux x64.