Skip to main content

Jetpack CRM Integration

Create a Jetpack CRM contact when a form is submitted, with optional status, tags, and a logged transaction.

Action type: jetpack_crm Handler: Core_Forms\Integrations\IntegrationHandlers::jetpack_crm Source: src/integrations/class-integration-handlers.php (registered in src/integrations/class-integration-manager.php)

Requirements

The Jetpack CRM plugin must be active on the same site. The action only appears in the Add Action list when zbs_addUpdateCustomer() (or the legacy zeroBS_addUpdateCustomer()) exists. Both the current and legacy function names are supported.

Setup

  1. Install and activate Jetpack CRM.
  2. In WordPress, edit your form > Actions tab > Add Action > Create Jetpack CRM Contact.
  3. Map the contact fields and optionally set a status, tags, and a transaction amount.

Settings Reference

Setting Required Default Description
Email Yes [email] Contact email (zbsc_email)
First name No [first_name] Contact first name (zbsc_fname)
Last name No [last_name] Contact last name (zbsc_lname)
Phone No [phone] Contact mobile number (zbsc_mobtel)
Status No Lead Jetpack CRM contact status (e.g. Lead, Customer)
Optional transaction amount No -- When set, a completed transaction for this amount is also recorded
Tag map No -- Comma-separated Jetpack CRM tag names

Every text setting supports Core Forms data variables such as [email] or [any_field_name].

Transactions

If Optional transaction amount is filled in (a number or a data variable such as [amount]), the action records a transaction against the new contact:

  • Order ID: cf-{submission_id}
  • Status: Succeeded
  • Total: the resolved amount
  • Item: the form title
  • Date: the submission time

This is useful for order or booking forms where each submission represents revenue.

How It Works

  1. Builds the Jetpack CRM contact payload (zbsc_* fields) plus the tag list.
  2. Calls zbs_addUpdateCustomer() to create the contact.
  3. If a transaction amount is set and zeroBS_addUpdateTransaction() exists, records the transaction linked to the contact.
  4. Logs the contact ID and transaction ID in the action log.

Idempotency

The action claims a run key of sha256(submission ID | action type | resolved settings) before executing, so re-processing a submission never creates a duplicate contact or transaction.

Troubleshooting

  • "Jetpack CRM contact API is unavailable": Jetpack CRM was deactivated after the action was saved, or an incompatible version is installed.
  • "Jetpack CRM could not create the contact": the create call returned no ID -- usually an empty or invalid email. Verify the Email setting resolves to a real address.
  • Tags not showing: the Tag map takes tag names, comma-separated. Empty entries are ignored.
  • No transaction created: the transaction requires both a non-empty amount and the zeroBS_addUpdateTransaction() function from Jetpack CRM.

See also: Integrations overview, Groundhogg, WP-CRM System.