Skip to content

n8n & Make Automation

Integrate WPsigner with automation platforms like n8n and Make to create powerful no-code workflows.

PlatformBest ForPricing
n8nSelf-hosted, technical usersFree (self-hosted)
MakeVisual workflows, beginnersFree tier available
IntegromatSame as Make (rebranded)Same as Make

  1. Add Webhook node to your n8n workflow
  2. Copy the webhook URL provided
  3. Configure in WPsigner:
    • Go to WPsigner → More → Webhooks
    • Add new webhook with n8n URL
    • Select events to trigger

Example: Document Signed → Slack Notification

Section titled “Example: Document Signed → Slack Notification”
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ WPsigner │───▶│ n8n │───▶│ Slack │
│ Webhook │ │ Workflow │ │ Message │
└─────────────┘ └─────────────┘ └─────────────┘

n8n Workflow:

  1. Webhook node - Receives WPsigner events
  2. IF node - Check event type = document.completed
  3. Slack node - Send notification

Webhook payload (JSON):

{
"event": "document.completed",
"document_id": 123,
"document_title": "Service Agreement",
"completed_at": "2026-01-15T14:30:00Z",
"signers": [
{
"name": "John Smith",
"email": "john@example.com",
"signed_at": "2026-01-15T14:30:00Z"
}
]
}
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ HubSpot │───▶│ n8n │───▶│ WPsigner │
│ New Deal │ │ Workflow │ │ Create Doc │
└─────────────┘ └─────────────┘ └─────────────┘

n8n Workflow:

  1. HubSpot Trigger - New deal created
  2. HTTP Request node - Call WPsigner API:
    • Method: POST
    • URL: https://yoursite.com/wp-json/wpsigner/v1/documents
    • Headers:
      • X-WPS-API-Key: your_key
      • X-WPS-API-Secret: your_secret
    • Body (JSON):
{
"title": "{{$node.HubSpot.json.dealname}} Agreement",
"template_id": 123,
"signers": [{
"name": "{{$node.HubSpot.json.contact_name}}",
"email": "{{$node.HubSpot.json.contact_email}}"
}],
"send_emails": true
}

  1. Create new scenario in Make
  2. Add Webhooks module → Custom webhook
  3. Copy webhook URL
  4. Add to WPsigner:
    • Go to WPsigner → More → Webhooks
    • Paste Make webhook URL
    • Select events

Example: Document Completed → Google Sheets

Section titled “Example: Document Completed → Google Sheets”
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ WPsigner │───▶│ Make │───▶│Google Sheets│
│ Webhook │ │ Scenario │ │ Add Row │
└─────────────┘ └─────────────┘ └─────────────┘

Make Scenario:

  1. Webhooks - Custom webhook (receives WPsigner data)
  2. Router - Filter by event type
  3. Google Sheets - Add row with document details

Data mapping:

WPsigner FieldGoogle Sheets Column
document_titleDocument Name
completed_atDate Completed
signers[0].nameSigner Name
signers[0].emailSigner Email
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Typeform │───▶│ Make │───▶│ WPsigner │
│ Response │ │ Scenario │ │ Create Doc │
└─────────────┘ └─────────────┘ └─────────────┘

Make Scenario:

  1. Typeform - Watch responses
  2. HTTP module - Make a request:
    • URL: https://yoursite.com/wp-json/wpsigner/v1/documents
    • Method: POST
    • Headers:
      • X-WPS-API-Key: your_key
      • X-WPS-API-Secret: your_secret
    • Body type: JSON
    • Request content:
{
"title": "Contract for {{answers.email}}",
"template_id": 123,
"signers": [{
"name": "{{answers.name}}",
"email": "{{answers.email}}"
}],
"send_emails": true
}

New CRM lead → Wait 1 hour → Create document → Send for signature
Lead not qualified? → Skip
Document completed → Download PDF → Upload to Google Drive → Update Airtable
Document sent → Wait 3 days → Check if signed
Not signed? → Send reminder email
Wait 3 more days → Escalate to sales
Document completed → Update CRM → Create invoice → Notify team

EventTriggered When
document.createdNew document created
document.sentDocument emails sent
document.viewedSigner opens document
document.signedIndividual signature applied
document.completedAll signatures complete
document.declinedSigner declines
document.expiredDocument expires unsigned
document.voidedAdmin voids document

Include in every HTTP request:

Headers:
X-WPS-API-Key: wps_your_key_here
X-WPS-API-Secret: your_secret_here
Content-Type: application/json

Verify webhook signature:

Header: X-WPS-Signature
Value: HMAC-SHA256 of payload

Most automation platforms handle this automatically or allow secret validation.


  • Add error handling branches in your workflows
  • Set up notifications for failed executions
  • Log all attempts for debugging
  • WPsigner allows 60 requests/minute
  • Add delays between bulk operations
  • Use batch endpoints when available
  1. Use test webhooks first
  2. Verify data mapping works
  3. Test error scenarios
  4. Monitor first few production runs

IssueSolution
Webhook not triggeringVerify URL is correct and accessible
Authentication errorsCheck API key and secret
Missing dataVerify event includes needed fields
Timeout errorsIncrease timeout, check WPsigner server