> ## Documentation Index
> Fetch the complete documentation index at: https://agenticbanking.backbase.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Reference

> API operations, error code mappings, and troubleshooting reference for the DocuSign Connector

export const VendorApiVersionTag = ({versions, label = "Supports"}) => {
  useEffect(() => {
    if (!versions || versions.length === 0) {
      return undefined;
    }
    const findAndSegmentStart = (reference, target) => {
      let i = 0;
      while (i < reference.length && i < target.length && reference[i] === target[i]) {
        i += 1;
      }
      let start = i;
      while (start > 0 && (/[0-9.vR]/).test(target[start - 1])) {
        start -= 1;
      }
      return start;
    };
    const formatText = () => {
      const suffix = " operations";
      if (versions.length === 1) {
        return `${label} ${versions[0]}${suffix}`;
      }
      const [first, ...rest] = versions;
      const last = rest[rest.length - 1];
      const andStart = findAndSegmentStart(first, last);
      const lead = first.slice(0, andStart);
      if (versions.length === 2) {
        return `${label} ${first} and ${last.slice(andStart)}${suffix}`;
      }
      const stems = versions.map(version => version.slice(andStart));
      return `${label} ${lead}${stems.slice(0, -1).join(", ")}, and ${stems[stems.length - 1]}${suffix}`;
    };
    const text = formatText();
    const mountCallout = () => {
      const titleRow = document.querySelector("#page-title")?.parentElement;
      if (!titleRow) {
        return null;
      }
      let callout = titleRow.querySelector("[data-vendor-api-version-callout='true']");
      if (!callout) {
        callout = document.createElement("div");
        callout.dataset.vendorApiVersionCallout = "true";
        callout.className = "vendor-api-version-callout vendor-api-version-callout--in-title";
        titleRow.appendChild(callout);
      }
      callout.replaceChildren();
      const textEl = document.createElement("span");
      textEl.className = "vendor-api-version-text";
      textEl.textContent = text;
      callout.appendChild(textEl);
      return callout;
    };
    let callout = mountCallout();
    if (callout) {
      return () => {
        callout?.remove();
      };
    }
    const observer = new MutationObserver(() => {
      callout = mountCallout();
      if (callout) {
        observer.disconnect();
      }
    });
    observer.observe(document.body, {
      childList: true,
      subtree: true
    });
    return () => {
      observer.disconnect();
      callout?.remove();
    };
  }, [versions, label]);
  return null;
};

export const vendorApiVersions = ["DocuSign API v2.1"];

<VendorApiVersionTag versions={vendorApiVersions} />

The DocuSign integration adds electronic signature capabilities to your app, supporting simple and advanced e-signature methods for signing documents. For setup steps, see [Get started](/connectors/kyc-kyb/docusign/get-started).

## Supported operations

The DocuSign connector supports the following signature methods.

### Simple e-signature

* **Non-embedded e-signature** enables signers to complete document signatures outside the host app, typically through email or the DocuSign signing portal.

* **Embedded e-signature** integrates the signing experience directly within your app, allowing signers to review and sign documents without leaving your app's interface.

### Advanced e-signature

* **Advanced Electronic Signature (AES)** provides a higher level of security than standard e-signatures by requiring signers to verify their identity with a secondary authentication factor, such as a unique access code or a mobile OTP.

* AES is also available in embedded and non-embedded variants.

## Events

The DocuSign connector includes inbound webhook support for real-time signing status processing.

### Webhook events

Grand Central processes DocuSign Connect events and transforms them into unified status values. The following table maps each DocuSign Connect event to its unified status:

| DocuSign Connect event | Scope    | Unified status                |
| :--------------------- | :------- | :---------------------------- |
| `recipient-completed`  | Signer   | `signer_completed`            |
| `recipient-declined`   | Signer   | `signer_declined`             |
| `recipient-sent`       | Signer   | `signer_sent`                 |
| `recipient-delivered`  | Signer   | `signer_viewed`               |
| `envelope-completed`   | Document | `signature_request_completed` |
| `envelope-declined`    | Document | `signature_request_declined`  |
| `envelope-voided`      | Document | `signature_request_cancelled` |
| `envelope-expired`     | Document | `signature_request_expired`   |

## Error mapping

The following table maps each DocuSign error code to its Grand Central counterpart:

| DocuSign code                               | Grand Central code |
| :------------------------------------------ | :----------------- |
| `400`                                       | `GC025`            |
| `401`                                       | `GC002`            |
| `403`                                       | `GC004`            |
| `404`                                       | `GC054`            |
| `405`                                       | `GC004`            |
| `408`                                       | `GC061`            |
| `415`                                       | `GC068`            |
| `429`                                       | `GC031`            |
| `444`                                       | `GC004`            |
| `500`                                       | `GC027`            |
| `ACCOUNT_LACKS_PERMISSIONS`                 | `GC004`            |
| `ACCOUNT_NOT_AUTHORIZED_FOR_ENVELOPE`       | `GC002`            |
| `AUTHORIZATION_INVALID_TOKEN`               | `GC008`            |
| `DOCUMENT_DOES_NOT_EXIST`                   | `GC025`            |
| `DOCUMENT_UPLOAD_NOT_ALLOWED`               | `GC028`            |
| `EDIT_LOCK_ENVELOPE_ALREADY_LOCKED`         | `GC028`            |
| `EDIT_LOCK_ENVELOPE_NOT_LOCKED`             | `GC028`            |
| `ENVELOPE_ALLOWANCE_EXCEEDED`               | `GC028`            |
| `ENVELOPE_CANNOT_VOID_INVALID_STATE`        | `GC028`            |
| `ENVELOPE_DOES_NOT_EXIST`                   | `GC025`            |
| `ENVELOPE_INVALID_STATUS`                   | `GC025`            |
| `HOURLY_APIINVOCATION_LIMIT_EXCEEDED`       | `GC028`            |
| `HOURLY_ENVELOPE_POLLING_LIMIT_EXCEEDED`    | `GC028`            |
| `INVALID_CAPTIVE_RECIPIENT_OPERATION`       | `GC025`            |
| `INVALID_EMAIL_ADDRESS_FOR_RECIPIENT`       | `GC025`            |
| `INVALID_RECIPIENT_ID`                      | `GC025`            |
| `INVALID_REQUEST_PARAMETER`                 | `GC025`            |
| `ONESIGNALLSIGN_NOT_SATISFIED`              | `GC028`            |
| `PARTNER_AUTHENTICATION_FAILED`             | `GC028`            |
| `PAGE_IMAGE_NOT_FOUND`                      | `GC028`            |
| `PLAN_ITEM_NOT_ENABLED`                     | `GC028`            |
| `RECIPIENT_NOT_IN_SEQUENCE`                 | `GC025`            |
| `RESOURCE_NOT_FOUND`                        | `GC028`            |
| `SIGNATURE_PROVIDER_INVALID_NAME`           | `GC025`            |
| `UNABLE_TO_LOAD_DOCUMENT`                   | `GC028`            |
| `UNKNOWN_ENVELOPE_RECIPIENT`                | `GC028`            |
| `UNSUPPORTED_PDF_CONTENT`                   | `GC025`            |
| `USER_AUTHENTICATION_FAILED`                | `GC028`            |
| `USER_DOES_NOT_BELONG_TO_SPECIFIED_ACCOUNT` | `GC028`            |
| `USER_DOES_NOT_EXIST_IN_SYSTEM`             | `GC028`            |
| `USER_LACKS_MEMBERSHIP`                     | `GC028`            |
| `USER_LACKS_PERMISSIONS`                    | `GC028`            |
| `USER_NOT_ACCOUNT_ADMIN`                    | `GC028`            |
| `USER_NOT_ENVELOPE_SENDER_OR_RECIPIENT`     | `GC028`            |
| `USER_NOT_FOUND`                            | `GC028`            |
| `UNSPECIFIED_ERROR`                         | `GC027`            |

<Info>
  For a complete list of Grand Central error codes and their descriptions, see [Error codes](/connectors/reference/error-codes).
</Info>
