WPForms Integration
Automate your document signing workflow by connecting WPForms with WPsigner. When a form is submitted, WPsigner automatically creates a document from a template, maps the signer information, and sends it for signature — all without writing any code.
How It Works
Section titled “How It Works”The integration uses a feed-based system. Each feed connects one WPForms form to one WPsigner Template:
Form Submitted → Feed Triggers → Document Created from Template → Email Sent to Signer| Component | Description |
|---|---|
| Feed | A connection rule that links a form to a template |
| Template | A pre-configured PDF with signature fields positioned via drag & drop |
| Signer Mapping | Links form fields (Name, Email) to the document signer |
| Variable Mapping | Passes extra form data as template variables |
| Auto-send | Optionally sends the signing email immediately |
Prerequisites
Section titled “Prerequisites”Before setting up the integration, you need:
- WPsigner installed and activated (v1.4.0+)
- WPForms installed and activated (Lite or Pro)
- At least one WPForms form created with name and email fields
- At least one WPsigner Template with signature fields configured
Step 1: Create a WPsigner Template
Section titled “Step 1: Create a WPsigner Template”A template is a reusable PDF document with pre-positioned fields (signature, name, email, date, etc.). The template defines where the signer will sign and what information they need to fill in.
Creating a Template from the Document Editor
Section titled “Creating a Template from the Document Editor”- Go to WPsigner → New Document
- Upload your PDF document (e.g., NDA, contract, service agreement)
- Add a signer in Step 2 (Signers)
- Enter any placeholder name and email — these will be replaced by the form data
- Position your fields in Step 3 (Fields)
- Drag and drop Signature, Name, Email, Date, or Text fields onto the PDF
- Position them exactly where you want them to appear
- Resize fields as needed
- Go to Step 4 (Review) and click Save as Template
- Enter a template name (e.g., “NDA Contract”) and optional description
- Click Save Template
Verifying Your Template
Section titled “Verifying Your Template”After saving, verify the template was created correctly:
- Go to WPsigner → Templates
- You should see your new template listed with the field count
- You can preview the template to confirm field positions
Step 2: Create a WPForms Form
Section titled “Step 2: Create a WPForms Form”If you don’t already have a form, create one in WPForms:
- Go to WPForms → Add New
- Choose a template or start from a Blank Form
- Add at minimum:
- A Name field (Simple or First/Last)
- An Email field
- You can add additional fields that will be available for variable mapping (company, phone, address, etc.)
- Save the form and embed it on a page
Recommended Form Fields
Section titled “Recommended Form Fields”| Field | Purpose | Required |
|---|---|---|
| Name | Maps to document signer name | ✅ Yes |
| Maps to signer email for signing link | ✅ Yes | |
| Single Line Text (Company) | Can be mapped to template variables | Optional |
| Phone | Can be mapped to template variables | Optional |
| Address | Can be mapped to template variables | Optional |
| Paragraph Text | Any additional data for the document | Optional |
Step 3: Connect the Integration
Section titled “Step 3: Connect the Integration”Navigate to the Integration Page
Section titled “Navigate to the Integration Page”- Go to WPsigner → Integrations in your WordPress admin
- Locate the WPForms card under WordPress Plugins
- Click Configure
You’ll see the WPForms Integration page with:
- A status badge showing Connected (if WPForms is active)
- The count of available forms and configured feeds
- A New Feed button
Create a New Feed
Section titled “Create a New Feed”- Click the New Feed button
- A modal window will appear with the following configuration options:
Feed Name
Section titled “Feed Name”- Give your feed a descriptive name (e.g., “NDA Contract Feed”, “Service Agreement - Signup”)
- This name is shown in the feeds list for easy identification
WPForms Form
Section titled “WPForms Form”- Select the WPForms form that will trigger this integration from the dropdown
- All active WPForms forms on your site will be listed
- When you select a form, its fields are automatically loaded for mapping
WPsigner Template
Section titled “WPsigner Template”- Select the WPsigner template to use when creating documents
- Only templates with configured fields will work correctly
Document Title
Section titled “Document Title”- Define the title for each generated document
- You can use dynamic variables that will be replaced with actual data:
| Variable | Replaced With | Example |
|---|---|---|
{{signer_name}} | Signer’s full name | John Smith |
{{signer_email}} | Signer’s email | john@example.com |
{{date}} | Current date | 2026-02-07 |
{{company_name}} | Company name (if mapped) | Acme Corp |
Example title: NDA - {{signer_name}} - {{date}}
This would generate: “NDA - John Smith - 2026-02-07”
Primary Signer
Section titled “Primary Signer”Map the form fields to the signer information:
- Name Field: Select which WPForms field contains the signer’s name
- Email Field: Select which WPForms field contains the signer’s email
- The signing link will be sent to this email address
Both the Name and Email fields are required. If either is missing when the form is submitted, the integration will skip the submission and log the error.
Variable Mapping (Optional)
Section titled “Variable Mapping (Optional)”Map additional form fields to template variables. This allows you to pass extra data from the form into the document:
- Click Add to add a new mapping row
- In the left input, enter the variable name (e.g.,
custom.company,custom.phone) - In the right dropdown, select the corresponding WPForms field
- Repeat for each variable you want to map
Example mappings:
| Variable | Form Field | Use Case |
|---|---|---|
custom.company | Company Name | Include company in document |
custom.phone | Phone Number | Add phone to document |
custom.address | Address | Include address in document |
custom.amount | Payment Amount | Add pricing to contract |
Auto-send Document
Section titled “Auto-send Document”- Enabled ✅ (default): The signer receives an email with the signing link immediately after form submission
- Disabled: The document is created but stays in “Draft” status. You can manually send it later from the WPsigner dashboard
Feed Enabled
Section titled “Feed Enabled”- Enabled ✅ (default): The feed is active and will trigger on form submissions
- Disabled: The feed is paused and will not create documents
Save the Feed
Section titled “Save the Feed”Click Save Feed to save the configuration. The page will reload and you’ll see your new feed in the list.
Step 4: Test the Integration
Section titled “Step 4: Test the Integration”- Open your WPForms form on the frontend
- Fill in the form with test data:
- Enter your own name and email so you receive the signing email
- Submit the form
- Check your email for the signing link (if Auto-send is enabled)
- Verify in WPsigner:
- Go to WPsigner → Documents
- You should see a new document with the title you configured
- Open the document to verify:
- The signer’s name and email are correct
- The fields (signature, name, email, date) are positioned correctly on the PDF
- Complete the signing to verify the full end-to-end flow
Managing Feeds
Section titled “Managing Feeds”Edit a Feed
Section titled “Edit a Feed”- Go to WPsigner → Integrations → WPForms
- Click the Edit button on the feed card
- Modify the settings as needed
- Click Save Feed
Enable/Disable a Feed
Section titled “Enable/Disable a Feed”- Click the Enable or Disable button on the feed card to toggle the feed status
- Disabled feeds will not trigger on form submissions
Delete a Feed
Section titled “Delete a Feed”- Click the Delete button (trash icon) on the feed card
- Confirm the deletion
- The feed will be permanently removed
Use Cases
Section titled “Use Cases”| Scenario | Setup |
|---|---|
| Client onboarding | Contact form → NDA template → Auto-send |
| Quote requests | Quote form → Service agreement template |
| Job applications | Application form → Offer letter template |
| Event registration | Registration form → Waiver template → Auto-send |
| Lead capture | Lead form → Follow-up contract template |
| Rental agreements | Booking form → Rental agreement template → Auto-send |
| Service agreements | Order form → Service contract template |
Multiple Feeds
Section titled “Multiple Feeds”You can create multiple feeds for the same form or template:
- One form, multiple templates: Submit one form and generate different documents based on different templates
- Multiple forms, one template: Different forms can all use the same document template with different signer data
- One-to-one: Each form has its own dedicated template
Each feed operates independently. When a form is submitted, all active feeds linked to that form will trigger.
Confirmation & Follow-up
Section titled “Confirmation & Follow-up”After the form is submitted and the document is created, you can customize what the user sees:
In WPForms
Section titled “In WPForms”- Go to WPForms → Edit Form → Settings → Confirmations
- Set the confirmation type to Message
- Customize the message:
Thank you! Please check your email for a signing link. You will receive a document to sign shortly.In WPsigner
Section titled “In WPsigner”Once the signer signs the document:
- They see a completion page with a success message
- A signed copy is stored in WPsigner
- The document status updates to Completed
WPForms Lite vs Pro
Section titled “WPForms Lite vs Pro”| Feature | Lite (Free) | Pro |
|---|---|---|
| Form creation | ✅ | ✅ |
| Name & Email fields | ✅ | ✅ |
| WPsigner feed integration | ✅ | ✅ |
| Document auto-send | ✅ | ✅ |
| Variable mapping | ✅ | ✅ |
| Entry storage & meta | ❌ | ✅ |
| Conditional logic on fields | ❌ | ✅ |
Developer Hooks
Section titled “Developer Hooks”The integration fires an action hook after creating a document, allowing developers to extend the workflow:
/** * Fires after a document is created from a WPForms submission. * * @param int $document_id Created document ID. * @param int $entry_id Form entry ID (0 with Lite). * @param array $fields Submitted field values. * @param array $form_data Form configuration data. * @param array $feed Feed configuration used. */do_action('wps_wpforms_document_created', $document_id, $entry_id, $fields, $form_data, $feed);Example usage:
add_action('wps_wpforms_document_created', function ($document_id, $entry_id, $fields, $form_data, $feed) { // Send a Slack notification wp_remote_post('https://hooks.slack.com/services/...', [ 'body' => wp_json_encode([ 'text' => "New document #{$document_id} created from WPForms submission.", ]), 'headers' => ['Content-Type' => 'application/json'], ]);}, 10, 5);Troubleshooting
Section titled “Troubleshooting”Common Issues
Section titled “Common Issues”| Issue | Cause | Solution |
|---|---|---|
| No document created after form submission | Feed not active | Check feed is enabled |
| No document created | Form or template not selected | Verify feed configuration |
| Signer not receiving email | Auto-send not enabled | Enable “Auto-send document” in the feed |
| Signer not receiving email | SMTP issue | Check your WordPress email configuration |
| Fields not appearing on signed PDF | Template has no fields | Re-create the template with fields positioned correctly |
| Wrong signer name/email | Field mapping incorrect | Edit the feed and check the Primary Signer mapping |
| ”WPForms is not installed” warning | Plugin not active | Install and activate WPForms |
Checking Error Logs
Section titled “Checking Error Logs”If documents are not being created, check the WordPress debug log:
- Enable debug logging in
wp-config.php:
define('WP_DEBUG', true);define('WP_DEBUG_LOG', true);- Check the log file at
wp-content/debug.log - Look for entries starting with
[WPsigner WPForms]
Rate Limiting
Section titled “Rate Limiting”The integration has a built-in rate limit of 10 documents per minute per form to prevent abuse. If you’re testing rapidly, wait a minute between submissions.
Compatibility
Section titled “Compatibility”| Component | Supported Versions |
|---|---|
| WPForms Lite | v1.6+ ✅ |
| WPForms Pro | All versions ✅ |
| WPsigner | v1.4.0+ |
| WordPress | 5.8+ |
| PHP | 7.4+ |
Next Steps
Section titled “Next Steps”- Templates — Learn more about creating and managing templates
- Document Workflow — Understanding document statuses and actions
- Fluent Forms Integration — Alternative form plugin integration
- REST API — For advanced programmatic integrations