Skip to main content
The Capsule CRM integration is an enterprise-grade pipeline designed to seamlessly route form submissions into your sales ecosystem. Instead of manually downloading CSVs and importing them into your CRM, this integration allows Flex Forms to automatically generate structured Person records, link them to Organizations, and even initiate sales Opportunities the exact second a user clicks submit.

Enterprise Business Use Cases

Automated Sales Pipeline Entry

When a high-value prospect fills out a “Request a Demo” form on your website, Flex Forms instantly creates a new “Person” record in Capsule CRM. It simultaneously attaches an “Opportunity” to their profile, automatically placing them into your SDR’s active pipeline for immediate follow-up.

Client Onboarding & Intake

During a complex B2B onboarding process, you can collect vast amounts of client intake data (e.g., company size, industry, budget). Flex Forms intelligently maps this data directly to your predefined Custom Fields on the Person or Organization record in Capsule.

Ultra-Detailed, Step-by-Step Setup Guide

To establish a secure, authenticated connection between Flex Forms and your Capsule CRM environment, you must generate a Personal Access Token (PAT). Follow these exact, step-by-step instructions carefully to ensure a successful integration.
1

Step 1: Log into your Capsule Dashboard

Open your web browser and navigate to your specific Capsule CRM login URL (this usually looks like https://[your-company].capsulecrm.com). Enter your administrator email and password to log in.Note: You must have administrator or developer privileges in Capsule to generate API tokens.
2

Step 2: Locate the Profile Menu

Once you are logged into the main dashboard, look at the absolute top right corner of your screen. You will see your name and your profile picture (or a placeholder avatar). Click on your profile picture to open the dropdown menu.
3

Step 3: Access 'My Preferences'

In the dropdown menu that appears, locate and click on the option labeled My Preferences. This will take you to your personal account settings page.
4

Step 4: Navigate to the API Tokens Section

On the “My Preferences” page, look at the left-hand sidebar menu. Scroll down the list until you find the section related to development and integrations. Click exactly on the link labeled API Personal Access Tokens.
5

Step 5: Initiate Token Generation

You are now on the API Tokens management page. In the top right area of the main content window, click the prominent button labeled Add New Token. This will open a configuration modal.
6

Step 6: Configure the Token Parameters

In the modal, you must provide a Description. Type exactly: Flex Forms Production Integration. This ensures that if you review your security logs months from now, you know exactly what this token is used for.Optional: You will see a field for “Allowed IPs”. Unless your Flex Forms server is hosted on a strict, dedicated static IP address, leave this field completely blank.
7

Step 7: Generate and Secure the Token

Click the Generate Token button at the bottom of the modal.
CRITICAL WARNING: Capsule will now display a long string of alphanumeric characters on your screen. You must copy this string immediately. Capsule will never show you this exact token again for security reasons. If you lose it, you must revoke it and start over at Step 5.
Highlight the entire string, right-click, and select Copy (or press Ctrl+C / Cmd+C).
8

Step 8: Inject the Token into Flex Forms

Leave Capsule open and switch to your Flex Forms administrative dashboard in a new tab.
  1. Open Integrations in the Flex Forms left rail (separate from Global Settings).
  2. Find the Capsule CRM card.
  3. Paste the token into the API key field.
  4. Save to finalize the connection.

Masterclass: Mapping Data Payloads

Establishing the connection is only half the battle. Now, you must instruct Flex Forms on exactly how to translate your form fields into Capsule CRM’s specific database architecture. Capsule CRM segregates standard, built-in fields (like first name, last name, and job title) from Custom Fields that you define yourself.
Standard fields must be mapped using Capsule’s exact internal JSON keys. You define these mappings on the form hub Integrations tab.The format is always: capsule_internal_key=flex_forms_block_nameHere are the most common standard Capsule keys you will use:
  • firstName (The person’s first name)
  • lastName (The person’s last name)
  • jobTitle (Their role at the company)
  • organizationName (The company they work for)
  • about (A long text description or biography)

How Custom Fields Work in Capsule

If you map a key that is not a standard Capsule field (for example, if you map industry_type=industry_dropdown), Flex Forms intelligently recognizes this. Instead of throwing an error, Flex Forms will automatically package that data and attempt to save it as a Custom Field attached to the newly created Person record in Capsule.
Data Routing Architecture
Match: 'firstName' -> Saved to Standard Schema
Match: 'lastName' -> Saved to Standard Schema
No Match: 'industry_type' -> Routed to Custom Fields Array
The Custom Field Trap: While Flex Forms will route unknown keys to the Custom Fields array, the Custom Field must already exist in Capsule CRM. If you try to send industry_type, but you haven’t manually created a Custom Field named exactly industry_type in your Capsule settings, the Capsule API will reject the entire payload and the integration will fail. Always build your Capsule Custom Fields before you map them in Flex Forms.

Troubleshooting & Enterprise FAQs

Even with a perfect setup, enterprise environments can experience edge cases. Here is how to diagnose and resolve them.
The Problem: The form submission failed, and the server logs show a 403 Forbidden error returned by Capsule.The Solution: This almost always means your Personal Access Token is invalid. This can happen for three reasons:
  1. The token was accidentally deleted or revoked in the Capsule dashboard.
  2. The employee who generated the token left the company, and their Capsule user account was disabled.
  3. The token has expired.
To fix this, you must log in with an active Administrator account and repeat Steps 4-8 in the setup guide above to generate and apply a brand new token.
The Problem: You are worried that if the same person fills out the form twice, it will create two messy duplicate records in Capsule.The Solution: You don’t need to worry. Flex Forms handles this natively. When a submission is processed, Flex Forms uses the email address to perform a pre-flight search via the Capsule API. If it finds an existing Person with that exact email address, it switches from a POST (create) request to a PUT (update) request, safely appending the new data to their existing profile without creating a duplicate.

Configuration Reference

The following advanced settings are available in the Flex Forms UI for this integration. Use this reference to understand exactly how each field impacts the API payload.

Global Settings

Located in Integrations in the Flex Forms left rail.
password
required
Personal access token Capsule → My Preferences → API Authentication Tokens.

Form-Level Settings

Located on the form hub Integrations tab for a specific form.
select
default:"1"
Create personOptions:
  • 1: Yes
  • 0: No
select
default:"0"
Create caseOptions:
  • 1: Yes
  • 0: No
select
default:"0"
Create opportunityOptions:
  • 1: Yes
  • 0: No
select
default:"0"
Create taskOptions:
  • 1: Yes
  • 0: No
select
Email field
select
First name field
select
Last name field
textarea
Person about Supports merge tags.
select
Job title field
select
Organization field
select
Phone field (legacy Work) Legacy single Work phone. Prefer Contact details map below for typed emails/phones/addresses/websites.
typed_field_map
Contact details Left labels are fixed Capsule contact types. Right side picks your form field by its current name — rename the field anytime and remapping stays valid as long as you pick it here again if needed.
select
default:"0"
Update existing person by emailOptions:
  • 1: Yes
  • 0: No
select
default:"replace"
Update person modeOptions:
  • replace: Replace contact details
  • append: Append contact details
text
Case name Supports merge tags.
textarea
Case description Supports merge tags.
select
default:"OPEN"
Case statusOptions:
  • OPEN: Open
  • CLOSED: Closed
remote_select
Case owner
text
Opportunity name Supports merge tags.
textarea
Opportunity description Supports merge tags.
remote_select
Opportunity milestone
remote_select
Opportunity owner
text
Task description Supports merge tags.
textarea
Task detail Supports merge tags.
text
default:"0"
Task due in (days)
select
default:"OPEN"
Task statusOptions:
  • OPEN: Open
  • COMPLETED: Completed
remote_select
Task category
remote_select
Task owner
select
default:"none"
Assign task toOptions:
  • none: None
  • person: Created person
  • case: Created case
  • opportunity: Created opportunity
Last modified on September 7, 2026