Skip to content

Automate document signing from Formidable Forms submissions with WPsigner. You can generate a PDF from the form answers (content signing), fill a fixed WPsigner PDF template, or take a PDF that E2Pdf already built — then open the signing page immediately or email the signing request.

Admin path: WPsigner → Integrations → Formidable Forms


WorkflowBest forTemplate typeWhere you configure itFeed required?
Content signingApplications, registrations, agreements built from form answersNone (PDF built from the submission)Form editor (+ optional feed for CC / title)No (optional)
PDF template + feedFixed PDF contracts (NDA, lease, offer letter)WPsigner PDF templateWPsigner → Integrations → Formidable FormsYes
E2Pdf + feedPDFs designed in E2Pdf, then signed in WPsignerE2Pdf template (plugin separate)Same feed screen, E2Pdf template dropdownYes (or a developer hook)

Form submitted
→ Feed runs
→ Document created from template
→ Mapped fields prefilled (signature / initials stay empty)
→ After submit:
• Open signing page immediately → redirect to /insigner/{token} (no signing email)
• Send signing request by email → email with signing link (no browser redirect)
PieceDescription
FeedRule that links one Formidable Form to one template
Primary signerName + email fields from the form (required)
Field mappingDropdown → dropdown: template field ↔ Formidable field
After submitOpen for signing or email the signing request
PrefillText/date/name/company/etc. filled from the submission; signature and initials are never prefilled

Generate a signed PDF from the form submission content plus an inline signature. No PDF template upload is required.

Form submitted → PDF built from answers → Signature applied → Audit trail + Certificate of Completion
  1. Install Formidable Forms and WPsigner (3.2.12+).
  2. Edit your Formidable Form and add at least:
    • A Name field
    • An Email field
    • The WPsigner Signing field (Draw / Type / Upload), or the Formidable Pro Signature field
  3. Publish the form.

On submit, WPsigner captures the signature(s) and form data, generates the signed PDF, and runs the normal completion flow. Formidable’s success message then shows a Download Signed PDF button.

The WPsigner Signing field must appear as a draw / type / upload pad, not a plain text box. On Formidable 6, WPsigner registers its own field type so Pro does not convert it to text. If you still see a text input, update to 3.2.12+ and hard-refresh the form.

A feed is optional for content signing. Create one only if you need:

  • CC emails on the completion / signed-PDF copy (a form field and/or fixed addresses)
  • A custom document title

Path: WPsigner → Integrations → Formidable Forms → New Feed

  1. Select a form that includes the WPsigner Signing field (or a Pro Signature field).
  2. Set Feed Name, the Formidable Form, and optional CC / document title.
  3. To copy a form value into CC, set CC email field (see CC emails below).
  4. Save the feed — you do not need to choose a PDF template for content signing.

If the feed is misconfigured but the form still has a Signing field, WPsigner falls back to automatic content signing.

OTP is checked before Formidable stores the entry (frm_validate_entry). Content signing runs after the entry is created (frm_after_create_entry). If PDF generation fails after a valid submit, check debug.log — the Formidable entry may already exist.


The WPsigner Signing field is Draw / Type / Upload on the form (Lite and Pro). It can require a one-time password before submit.

  1. Edit the Formidable Form.
  2. Select the WPsigner Signing field.
  3. Set OTP verification to Enabled.
  4. Choose OTP delivery method:
MethodRequirements
EmailEmail field on the form
SMSPhone field + Twilio configured
Email + SMSBoth email and phone fields
WhatsAppPhone field + WhatsApp configured
  1. Save and publish.
  1. User fills the form and provides a signature.
  2. On submit, an OTP modal appears.
  3. User enters the 6-digit code.
  4. After Identity verified, the form submits and the signed PDF is created.

Submit stays blocked until OTP succeeds. Use E.164 phone format for SMS/WhatsApp.


After content signing, WPsigner appends a Download Signed PDF button to Formidable’s confirmation message. No merge tag is required on the success text.

Use tags when you want the link in emails, a custom confirmation, or a thank-you page:

TagOutput
[wps_signed_pdf_url]Direct URL to download the signed PDF
{inSigner:signed_pdf_url}Same URL (Fluent-style alias)
{inSigner:download_button} / [wps_download_button]HTML button linking to the signed PDF

Example email body:

<p>Your signed document is ready:</p>
{inSigner:download_button}

Tags resolve after the signed PDF exists. If Formidable’s confirmation is a redirect to another URL (not the signing page), add a tag on that page or rely on the email.


Use this when you have a fixed PDF (WPsigner template) and want form data mapped into fields, then either open the signing UI or email the request.

Admin page: WPsigner → Integrations → Formidable Forms.

  1. WPsigner 3.2.12+
  2. Formidable Forms Lite or Pro
  3. A published Formidable Form with name + email fields
  4. A WPsigner Template with fields placed on the PDF (signature, name, date, text, etc.)
  1. Go to WPsigner → New Document.
  2. Upload your PDF.
  3. Add a signer (placeholder name/email is fine; the form will replace them).
  4. Place fields (Signature, Name, Email, Date, Text, etc.).
  5. On Review, Save as Template.

Minimum fields:

FieldRequiredPurpose
NameYesPrimary signer name (First / Middle / Last sub-fields are listed)
EmailYesPrimary signer email / signing identity
Company, phone, text, etc.OptionalAvailable in Field mapping

Do not add the WPsigner Signing field if you want PDF template mode. If that field is present, WPsigner treats the form as content signing and skips the PDF template feed path.

  1. Go to WPsigner → Integrations → Formidable Forms.
  2. Click New Feed (centered modal).
  3. Configure:

Internal label shown in the feeds list (e.g. NDA — website form).

Published form that triggers the feed.

CC emails (optional) {#cc-emails-optional}

Section titled “CC emails (optional) {#cc-emails-optional}”

The signed-PDF / completion copy can go to extra addresses. Configure this on the same feed used for content signing or for a PDF template.

SettingUse when
CC email fieldThe address comes from a Formidable field
Additional CC emailsFixed addresses, comma-separated (office@example.com, manager@example.com)

You can use both. On submit WPsigner reads the mapped field and adds the fixed list. The field may contain several addresses separated by commas or semicolons. WPsigner does not parse Formidable shortcodes such as [x] in the Additional CC emails box — pick the field in the dropdown instead.

Typical setup:

  1. Add an Email field to the form (label it something like “CC” if you want).
  2. Open WPsigner → Integrations → Formidable Forms → the feed.
  3. Set CC email field to that Email field.
  4. Save the feed. Submit a test. The address in that field should receive the signed-PDF copy.

Leave both settings empty if you do not need CC.

PDF template used to create the document.

Supports merge tags:

VariableReplaced with
{{signer_name}}Signer name from the form
{{signer_email}}Signer email from the form
{{date}}Current date
{{company_name}}Company name when available

Example: NDA - {{signer_name}} - {{date}}

ControlMeaning
Name fieldFormidable field for signer name
Email fieldFormidable field for signer email

Both are required. If either is empty or the email is invalid on submit, that feed run is skipped.

Map template fields → form fields with two dropdowns (no typing custom.*):

SideSourceWhat you see
LeftWPsigner templateHuman-readable field label
RightFormidable FormsForm field labels, including Name (First) / (Middle) / (Last)

Rules:

  • Click Add for each row.
  • Signature and initials template fields are not listed and are never prefilled — the signer completes them on the signing page.
  • Values from the submission are written into the created document before delivery.
OptionWhat happens
Open signing page immediatelyDocument is set to sent, fields are prefilled, no signing email is sent. Formidable confirmation redirects the browser to /insigner/{token}.
Send signing request by emailDocument is set to sent and each signer receives the signing-request email. No browser redirect to the signing page.

When disabled, the feed does not run on submissions.

  1. Click Save Feed.

Open for signing

  1. Submit the form on the front end.
  2. You should be redirected to the WPsigner signing page.
  3. Prefillable fields (name, date, text, etc.) should already be filled.
  4. Complete Signature (and initials if present).

Email

  1. Submit the form.
  2. Check the signer inbox for the signing request.
  3. Open the link and confirm prefilled fields + empty signature.

Also verify under WPsigner → Documents that the new document exists with status sent.


Use this when E2Pdf already fills a PDF from the Formidable entry and you want WPsigner to collect the signature.

E2Pdf is not included in WPsigner. Install it separately. If E2Pdf is inactive, the E2Pdf template dropdown is hidden and WPsigner does not load extra front-end scripts.

Full reference (shortcodes, signature placement, every hook, what is not supported): E2Pdf.

Form submitted
→ E2Pdf fills its template (dataset = Formidable entry ID)
→ WPsigner stores a copy of that PDF
→ Empty signature field is added (last page by default)
→ After submit: open for signing or email the request
  1. Install and activate E2Pdf. Create a template with extension = Formidable and item = your form.
  2. Map fields inside the E2Pdf builder (not in WPsigner).
  3. Go to WPsigner → Integrations → Formidable Forms → New Feed.
  4. Select the form, Name + Email fields, delivery mode, and the E2Pdf template.
  5. Leave the WPsigner template empty. Field mapping is hidden because E2Pdf already filled the PDF.
  6. Save and submit a test.

Choose either a WPsigner template or an E2Pdf template on the same feed — not both.

WPsigner does not delete the PDF that E2Pdf saved in uploads. Temp files are removed only after a secure copy is stored.

To pick an E2Pdf template from code (including when no feed is saved):

add_filter('wps_formidableforms_e2pdf_template_id', function ($template_id, $feed, $entry, $form) {
if ($template_id > 0) {
return $template_id;
}
if (!empty($feed['template_id'])) {
return 0; // Keep WPsigner PDF-template feeds
}
return 12; // E2Pdf template ID
}, 10, 4);

The form still needs Name and Email fields so WPsigner can create the signer.


WPsigner → Integrations → Formidable Forms

  • Connection status and counts
  • Feed list (with delivery badges such as Open for signing / Email signing request)

Edit on the feed card → change settings → Save Feed.

Toggle on the card.

Trash icon → confirm. Existing documents are not deleted.


  • Multiple PDF feeds on different forms — supported.
  • Multiple PDF feeds on the same form — all enabled PDF feeds for that form can run (template mode). Prefer one clear feed per form unless you intentionally want multiple documents.

WPsigner sets the Formidable confirmation to a redirect (frm_success_filter + frm_redirect_url) to the primary signer’s signing URL.

You do not need a custom Formidable redirect URL for this mode.

Formidable shows its normal confirmation message. Point users to check email if you customize that message.

The signer stays on the form. The confirmation message includes Download Signed PDF. Emails can still use the merge tags.


ScenarioRecommended setup
Kiosk / same-device signing after a formPDF template feed → Open signing page immediately
Remote signer after website formPDF template feed → Send signing request by email
Application form that is the contractContent signing (WPsigner Signing field on the form)
Fixed NDA PDF with company/phone prefilledPDF template feed + field mapping dropdowns
PDF already designed and mapped in E2PdfE2Pdf feed (E2Pdf plugin + WPsigner feed)

Fires after the Formidable entry is loaded, before any WPsigner feed runs.

add_action('wps_formidableforms_before_process', function ($entry_id, $form_id, $entry, $form) {
// Inspect the submission before WPsigner creates a document
}, 10, 4);

Fires after a document is created from a PDF-template feed or an E2Pdf feed.

add_action('wps_formidableforms_document_created', function ($document_id, $entry_id, $entry, $form, $feed) {
// Custom logic after document creation
}, 10, 5);

wps_formidableforms_content_signing_completed

Section titled “wps_formidableforms_content_signing_completed”

Fires after inline content signing finishes.

add_action('wps_formidableforms_content_signing_completed', function ($document_id, $signer_id, $entry, $feed) {
// Custom logic after content signing
}, 10, 4);
HookTypePurpose
wps_formidableforms_e2pdf_template_idfilterOverride or supply the E2Pdf template ID ($id, $feed, $entry, $form)
wps_formidableforms_e2pdf_shortcodefilterChange the [e2pdf-save … apply="true"] string
wps_formidableforms_e2pdf_pdf_pathfilterReturn a local PDF path to skip generation
wps_formidableforms_e2pdf_signature_fieldsfilterChange empty signature field placement
wps_formidableforms_e2pdf_generatedactionAfter a valid PDF path is produced
wps_formidableforms_e2pdf_document_createdactionAfter the WPsigner document exists ($document_id, $entry_id, $entry, $form, $feed, $template_id, $pdf_path)
add_filter('wps_formidableforms_e2pdf_signature_fields', function ($fields, $document_id, $signer_id, $feed, $form, $index) {
$fields[0]['page_number'] = 1;
$fields[0]['position_x'] = 80;
$fields[0]['position_y'] = 640;
return $fields;
}, 10, 6);

Completed documents also fire the generic wps_document_completed and wps_pdf_completed hooks.


IssueCauseSolution
No document createdFeed disabled or incompleteEnable feed; set form, WPsigner or E2Pdf template, signer name/email
E2Pdf dropdown missingE2Pdf inactiveInstall/activate E2Pdf. WPsigner does not bundle it
E2Pdf template created but not in the feed listExtension is not Formidable, or the template is in the E2Pdf trashSet extension to Formidable and item to this form. Inactive (not license-activated) templates still appear
E2Pdf feed created no PDFWrong template, or shortcode returned HTMLUse a Formidable E2Pdf template; check debug.log for [inSigner FormidableE2Pdf]
Signature box in the wrong placeDefault last-page placementFilter wps_formidableforms_e2pdf_signature_fields
Save blocked: “Please fill in Feed Name and Form”Missing required fieldsFill Feed Name + Form. For content signing you do not need a template
Wrong signer name on the documentMapped a Username / login field instead of NameMap the Name field; avoid “Username”
Not redirected after submitDelivery set to email, or feed failedUse Open signing page immediately; confirm name/email valid
No signing emailDelivery set to open-for-signing, or SMTP issueUse Send signing request by email; check WordPress mail
Prefill emptyField mapping missing or wrong fieldsRe-map with dropdowns; set clear Field names on the template
Signature already filledSignature/initials are never prefilled by design
“Formidable Forms is not installed”Plugin inactiveInstall/activate Formidable Forms Lite or Pro
Form submission blocked on OTPCode missing or expiredComplete OTP; check Twilio / WhatsApp if using SMS
Merge tags emptyUsed too earlyUse in post-submission notifications after content signing succeeds. The on-page download button does not need a tag
No download button after signingConfirmation is a redirect, or PDF failedUse Formidable’s Show message confirmation; check WPsigner → Documents
Pad looks like a text boxFormidable 6 converted the typeUpdate to 3.2.12+, hard-refresh. The field must stay type insigner_signing
“Your entry appears to be blocked spam!”Formidable scanned the PNG as textUpdate to 3.2.12+. That message is from Formidable, not WPsigner. Name / email / message are still checked
Rapid tests stop creating docsRate limitMax 10 documents per minute per form
CC did not get the signed PDFField not mapped, or a Formidable shortcode typed in Additional CC emailsSet CC email field to the form’s Email/CC field. Put only real addresses in Additional CC emails.
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);

Check wp-content/debug.log for [inSigner FormidableForms] or [inSigner FormidableE2Pdf] entries.


ComponentSupported
Formidable Forms LiteCurrent versions (field hooks frm_available_fields, frm_form_fields)
Formidable Forms ProAll versions (native Signature field accepted)
E2PdfOptional, not bundled. Detected when active (e2pdf-save / E2Pdf)
WPsigner3.2.12+
WordPress5.8+
PHP7.4+

TopicFormidable FormsFluent Forms
Admin pageWPsigner → Integrations → Formidable FormsWPsigner → Integrations → Fluent Forms
Signing fieldWPsigner Signing (Lite + Pro) or native Pro SignatureWPsigner Signing
Content signingYes (feed optional)Yes (feed optional)
PDF template feedsYesYes
E2Pdf bridgeYes (optional plugin)No
Document Builder feedsNot in this releaseYes (addon)
OTPEmail, SMS, both, WhatsAppEmail, SMS, both, WhatsApp
CC field + extra addressesYesYes
Signed-PDF downloadAuto button on success + tagsTags in confirmation / email
Submit hooksfrm_after_create_entry, frm_validate_entry, frm_success_filter, frm_redirect_urlfluentform/submission_inserted, confirmation redirect