PandaDoc Recipient & Signature Management
Overview
Recipients in PandaDoc are the people who receive, view, and sign documents. In MSP engagements, documents typically involve multiple parties -- the client decision-maker who signs the agreement, sometimes a technical contact who reviews, and the MSP representative who countersigns. PandaDoc supports complex signing workflows with ordered signing, role-based assignments, and real-time completion tracking. Understanding recipient management is essential for smooth contract execution.
MCP Tools
Available Tools
| Tool | Description | Key Parameters |
|---|---|---|
pandadoc-create-document | Create document with recipients | recipients array in document creation |
pandadoc-add-recipient | Add a recipient to an existing document | document_id, email, first_name, last_name, role, signing_order |
pandadoc-get-document | Get document with recipient details | id (required) |
pandadoc-get-document-status | Check recipient completion status | id (required) |
Add Recipients During Document Creation
When calling pandadoc-create-document, include the recipients array:
{
"recipients": [
{
"email": "john@acme.com",
"first_name": "John",
"last_name": "Smith",
"role": "Client",
"signing_order": 1
},
{
"email": "sarah@techforce.com",
"first_name": "Sarah",
"last_name": "Johnson",
"role": "MSP",
"signing_order": 2
}
]
}
Add a Recipient to an Existing Document
Call pandadoc-add-recipient with:
- Document: Set
document_idto the document ID (required) - Email: Set
emailto the recipient's email address - Name: Set
first_nameandlast_name - Role: Set
roleto match a role defined in the template - Order: Set
signing_orderto control when they sign
Example: Add a co-signer:
pandadoc-add-recipientwithdocument_id=msFYActMfJHqNTKH9tcPFa,email="cfo@acme.com",first_name="Lisa",last_name="Chen",role="Approver",signing_order=2
Check Recipient Completion
Call pandadoc-get-document with the document id to see recipient status:
- Review the
recipientsarray - Check
has_completedfor each recipient truemeans the recipient has completed their signing actionfalsemeans they have not yet signed
Key Concepts
Recipient Roles
Roles define what actions a recipient takes on the document:
| Role | Description | Common Use |
|---|---|---|
| Signer | Must sign the document | Client decision-maker, MSP authorized representative |
| Approver | Must approve before sending | Internal review (e.g., MSP manager approval) |
| Viewer | Can view but not sign | CC'd stakeholders, technical contacts |
| CC | Receives a copy after completion | Accounting, project managers |
Signing Order
Signing order controls the sequence in which recipients receive and sign the document:
| Order | Description | Example |
|---|---|---|
| 1 | Signs first | Client CEO signs the MSA |
| 2 | Signs second (after #1 completes) | MSP owner countersigns |
| 3 | Signs third | Witness or notary (if required) |
When signing order is set:
- Recipient #1 receives the document first
- Recipient #2 is notified only after #1 has completed
- This ensures proper document flow and prevents premature signing
When signing order is not set (or all set to the same value):
- All recipients receive the document simultaneously
- Any recipient can sign in any order
Multi-Party MSP Agreements
Common multi-party signing scenarios for MSPs:
| Scenario | Signers | Signing Order |
|---|---|---|
| Simple MSA | Client + MSP | Client signs first (1), MSP countersigns (2) |
| Board-approved MSA | Client + Board + MSP | Client signs (1), Board approves (2), MSP signs (3) |
| Multi-site SOW | Client HQ + Branch Manager + MSP | HQ signs (1), Branch signs (1), MSP countersigns (2) |
| Vendor agreement | Client + MSP + Vendor | Client signs (1), Vendor signs (2), MSP signs (3) |
| Internal review | MSP Tech + MSP Manager | Tech reviews (1), Manager approves (2), then send to client |
Completion Tracking
Track the progress of document signing across all recipients:
| Status | Meaning |
|---|---|
has_completed: false | Recipient has not yet signed |
has_completed: true | Recipient has completed their action |
| All recipients completed | Document status changes to document.completed |
Field Reference
Recipient Fields
| Field | Type | Description |
|---|---|---|
email | string | Recipient email address (required) |
first_name | string | Recipient first name |
last_name | string | Recipient last name |
role | string | Recipient role (must match template role) |
signing_order | integer | Signing sequence (1, 2, 3...) |
has_completed | boolean | Whether the recipient has completed their action |
recipient_type | string | Type of recipient (signer, approver, viewer, cc) |
Common Workflows
Set Up a Standard MSP Contract Signing
- Create document with
pandadoc-create-documentincluding two recipients:- Client signer with
signing_order=1 - MSP signer with
signing_order=2
- Client signer with
- Send the document with
pandadoc-send-document - Client receives the document and signs
- MSP representative is automatically notified to countersign
- Document status changes to
document.completed
Add a Recipient After Document Creation
- Get the document with
pandadoc-get-documentto review current recipients - Call
pandadoc-add-recipientwith the new recipient's details - Verify the recipient was added by calling
pandadoc-get-documentagain
Check Who Has Signed
- Call
pandadoc-get-documentwith the documentid - Review the
recipientsarray - For each recipient, check
has_completed:true= signedfalse= waiting for signature
- Report the signing progress
Follow Up on Unsigned Documents
- Call
pandadoc-list-documentswithstatus=document.sentto find sent documents - For each document, call
pandadoc-get-documentto check recipient completion - Identify recipients where
has_completed=false - Flag documents that have been waiting more than 3-5 business days
Handle a Declined Document
- When a document status is
document.declined:- Contact the recipient to understand their concerns
- Address the issues (modify terms, pricing, scope)
- Create a new document from the same template with updated content
- Send the new document to the same recipients
Response Examples
Document with Recipients:
{
"id": "msFYActMfJHqNTKH9tcPFa",
"name": "Acme Corp - Managed Services Agreement",
"status": "document.sent",
"recipients": [
{
"email": "john@acme.com",
"first_name": "John",
"last_name": "Smith",
"role": "Client",
"signing_order": 1,
"has_completed": true
},
{
"email": "sarah@techforce.com",
"first_name": "Sarah",
"last_name": "Johnson",
"role": "MSP",
"signing_order": 2,
"has_completed": false
}
]
}
Recipient Added:
{
"email": "cfo@acme.com",
"first_name": "Lisa",
"last_name": "Chen",
"role": "Approver",
"signing_order": 2,
"has_completed": false
}
Error Handling
Common Errors
| Error | Cause | Resolution |
|---|---|---|
| Invalid email | Email format is incorrect | Verify the email address format |
| Role not found | Role does not exist in template | Check template roles with pandadoc-get-template |
| Duplicate recipient | Email already added to document | Check existing recipients before adding |
| Cannot add recipient | Document already sent or completed | Recipients must be added before sending |
| Invalid signing order | Signin |