What the Integration Does
The integration automates the creation, delivery, and secure e-signature execution of real estate contracts inside our property management workflow. Every envelope sent has a full audit trail synced back to our platform's immutable timeline.
- Purchase Agreements
- Assignment of Contract
- Joint Venture Agreements
- Closing Addenda
- Assignment Fee Agreements
- Option Contracts
Authentication & Authorization
We support two DocuSign authentication flows, both using DocuSign's approved patterns:
- 1. JWT User Application (server-to-server)Used for our internal service account operations. Scopes requested:
signatureimpersonation - 2. OAuth 2.0 Authorization Code GrantUsed when authorized team members connect their own DocuSign accounts. Each user's refresh token is stored encrypted, rotated automatically 60 seconds before expiry, and revoked immediately on disconnect.
API Endpoints Called
POST /v2.1/accounts/{accountId}/envelopes — create + sendGET /v2.1/accounts/{accountId}/envelopes/{id} — poll statusGET /v2.1/accounts/{accountId}/envelopes/{id}/documents/combined — download signed PDFPUT /v2.1/accounts/{accountId}/envelopes/{id} — void or resendGET /v2.1/accounts/{accountId}/templates — list user's templatesPOST /v2.1/accounts/{accountId}/connect — auto-provision webhook configGET /oauth/userinfo — verify token + resolve base URIData Security & Handling
- All DocuSign communication over HTTPS/TLS 1.3
- Access tokens cached in memory only; refresh tokens encrypted at rest in MongoDB
- Private RSA key stored in secure environment variables — never in source control
- DocuSign Connect webhook payloads validated with HMAC-SHA256 signatures
- Signed documents stored per Perrin Properties' retention policy — no third-party access
- No SSN or financial account numbers collected via DocuSign tabs
- Every envelope send is logged to an immutable audit timeline
Envelope Status & Webhooks
Envelope status updates flow back to iSpeedToClose in two ways:
- Primary: DocuSign Connect webhooks push HMAC-signed status events to
POST /api/docusign/webhook. Auto-provisioned per user viaPOST /connect. - Fallback: User-triggered polling via
GET /envelopes/{id}refreshes local state when needed.
Who Signs the Documents
Recipients on our envelopes fall into these categories:
- Property sellers (individuals or trusts)
- Cash buyers / real estate investors
- Joint venture partners
- Title agents / escrow officers
- Attorneys (occasional CC recipients)
Signer authentication: Standard email-based recipient authentication (DocuSign default). Signers may be required to complete Access Code or SMS authentication on a per-template basis when configured by the sending user.
Error Handling & Reliability
- All DocuSign responses logged with trace tokens for support diagnostics
- 401 Unauthorized triggers one automatic token refresh + single retry
- Failed sends surface DocuSign's
errorCodeandmessagedirectly in the UI - 429 rate-limited responses back off exponentially
- Batch operations executed concurrently to stay under upstream timeout ceilings
Integration Contact
fd01c390-69eb-4613-a231-aad3ed6aa312