---
title: "Signature"
canonical_url: "https://www.nutrient.io/api/python/signing/signature/"
md_url: "https://www.nutrient.io/api/python/signing/signature.md"
last_updated: "2026-05-26T07:02:01.465Z"
description: "Provides functionality for signing PDF documents. Supports both digital signatures (with certificate) and electronic signatures (visual only)."
---

Provides functionality for signing PDF documents. Supports both digital signatures (with certificate) and electronic signatures (visual only).

The class enables adding signatures to PDF documents: Digital signatures use PFX/P12 certificates to cryptographically sign the document.Electronic signatures add visual representation (image/text) without cryptographic signing. For PAdES-B compliance, use CAdES signature mode (the default). For PAdES-T compliance, configure a in the signature options.

```python

from nutrient_sdk import Signature

```

## Construction

```python

Signature()

```

Creates a new `Signature` instance with default settings.

## Methods

### sign

```python

def sign(self, document: Document, output_path: str, options: DigitalSignatureOptions) -> None

```

Applies an invisible digital signature to a document.

**Parameters:**

| Name          | Type                                                                        | Description                                                       |
| ------------- | --------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| `document`    | [`Document`](/api/python/document/)                                         | The document to sign.                                             |
| `output_path` | `str`                                                                       | The path where the signed PDF will be saved.                      |
| `options`     | [`DigitalSignatureOptions`](/api/python/signing/digital-signature-options/) | The digital signature options including certificate and metadata. |

---

### sign_field

```python

def sign_field(self, document: Document, output_path: str, field_name: str, options: DigitalSignatureOptions, appearance: SignatureAppearance) -> None

```

Applies a signature to a document using an existing signature field. Supports both digital signatures (with certificate) and electronic signatures (visual only).

**Parameters:**

| Name          | Type                                                                        | Description                                                             |
| ------------- | --------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| `document`    | [`Document`](/api/python/document/)                                         | The document to sign.                                                   |
| `output_path` | `str`                                                                       | The path where the signed PDF will be saved.                            |
| `field_name`  | `str`                                                                       | The name of the existing signature form field to use for the signature. |
| `options`     | [`DigitalSignatureOptions`](/api/python/signing/digital-signature-options/) | The digital signature options. Can be null for electronic signatures.   |
| `appearance`  | [`SignatureAppearance`](/api/python/signing/signature-appearance/)          | The visual appearance of the signature.                                 |

---

---

## Related pages

- [Digital Signature Options](/api/python/signing/digital-signature-options.md)
- [Signature Appearance](/api/python/signing/signature-appearance.md)
- [All public classes import directly from the top-level package:](/api/python/signing.md)
- [Timestamp Configuration](/api/python/signing/timestamp-configuration.md)

