Skip to content

FluentCRM ​

PackEdge keeps the contacts in your own FluentCRM (on your WordPress site) in step with what your customers are: which product they own, whether their access is live, whether they paid. FluentCRM's own automations then take it from there.

The integration has two levels:

  • Organization: an on/off switch and the WordPress sites PackEdge may talk to. This is where connections and credentials live, and nothing else.
  • Product: whether a product syncs, to which site, and what happens to its contacts.

Organization settings ​

Open Integrations → FluentCRM in the console's organization menu. You need the manage organization permission.

The switch ​

StateWhat happens
OnChanges to licenses, subscriptions, payments and customers are queued and sent as they happen.
OffNothing is queued or sent to any site. Updates that were still waiting are dropped. Sites stay connected and health-checked.

Turning the switch back on sends only changes made from then on. Nothing that happened while it was off is replayed. To bring existing data across, run Resync all contacts on a product. A resync updates tags, lists and fields, and never records "moments" (such as payment completed) for past activity, so your automations don't email people about old events.

Connecting a site ​

Each site needs:

FieldNotes
NameYour label for the site.
Site URLHTTPS only; the WordPress REST API must be reachable.
WordPress usernameA user who can manage FluentCRM contacts.
Application passwordCreated in WordPress under Users → Profile → Application Passwords. Stored encrypted; never shown again.

PackEdge tests the credentials before saving. An organization can connect several sites. Editing a site's URL, username or password re-tests the new values before replacing the working ones.

Health (pulse) ​

PackEdge checks every connected site about every 15 minutes while the switch is on, and whenever you click Check now. Each site shows:

  • Connected: the site answered, the credentials work and FluentCRM responded. The response time and check time are shown.
  • Unhealthy: with the reason, for example Authentication failed (fix the username or application password), FluentCRM's REST API was not found (is FluentCRM active?), or Could not reach the site over HTTPS.

Updates for an unhealthy site are retried with backoff; the site catches up once it passes a check.

Disconnecting a site ​

Disconnecting removes the stored credentials, the product syncs pointed at the site and their queued updates. You type the site's name to confirm. Contacts and tags already in FluentCRM are left as they are.

Product settings ​

Open the product, then Integrations → FluentCRM. The page appears only while FluentCRM is switched on for the organization.

A product syncs to one site: search for one of the connected sites (each shows its health), map events to lists and tags, and decide whether to send the product's existing contacts now or only changes from now on. To move a product to another site, stop syncing it first.

Event mappings ​

The main table has one row per event. For each event, choose which FluentCRM lists the contact is added to or removed from, and which tags are added or removed. Each cell is a searchable multi-select. For example:

EventAdd to listsRemove from listsAdd tagsRemove tags
New customerAjaxPress, Newsletter—FreeDemo
First purchaseCustomersFree usersProFree

Events PackEdge detects:

  • Customer: New customer
  • License: License created, renewed, expired, revoked or suspended, access regained
  • Payment: First purchase, repeat purchase, payment refunded
  • Subscription: Plan changed, trial started, trial converted to paid, past due, cancellation scheduled, canceled, paused, resumed

A mapping runs once per event. Events are worked out by comparing what the customer was at the last sync with what they are now, so a delivery that fails and is retried doesn't run a mapping twice. Past activity never runs one: sending existing contacts, a resync, or a customer who was already there before this product started syncing doesn't count as a New customer. Several events can fire together: a purchase that creates a customer fires New customer, License created and First purchase.

Each row shows how many times it has run. A tag or list an event adds stays until something removes it. Some choices are refused because the next sync would immediately undo them:

  • adding or removing a tag that a state tagging rule manages (see below)
  • removing the always-joined list or an always-applied tag from Advanced

A list or tag can't be both added and removed in the same row.

Suggest mappings ​

Suggest mappings proposes lists and tags for events that are still empty, based on your site's list and tag names: for example a "Customers" list on First purchase, or a "Churned" tag on Subscription canceled. Suggested rows are marked with the reason for each. They are only a draft. Review or change them, then save; Undo suggestions puts the table back as it was. Rows you have already filled in are never overwritten.

On the Business plan, suggestions come from AI. Only the product name, its plan names, and the site's list and tag names are sent, never customer data. On other plans, or when AI is unavailable, suggestions come from matching list and tag names against each event's keywords.

Advanced ​

Contact creation, the always-joined list, always-applied tags, custom-field mapping, linked products and state tagging rules live under Advanced.

Contacts ​

New contacts are created as transactional unless you choose otherwise, and PackEdge never changes the subscription status of a contact that already exists, so it can't resubscribe someone who opted out.

Also consider customers of (linked products) ​

Some plugins are sold as two PackEdge products, such as a free version and a Pro version. Linking the Pro product on the free product's settings lets the free product's rules read Pro state. A typical example: "while active on Free and not paid for Pro → tag Free user", so the tag comes off as soon as someone upgrades.

Linking only widens what conditions can read. The contacts synced are still this product's own. A condition that names no product reads the product plus its linked products.

Tagging rules ​

Rules keep tags in step with what a customer currently is. Each rule is a condition (access, plan, subscription status, has paid, expires within N days, limited to some products) and the tags applied while it holds. When the condition stops holding, PackEdge removes the tags again.

  • Status ladder: ordered rows; the first matching row wins, and the other rows' tags are removed. A contact carries exactly one status.
  • Flags: independent; each is on exactly while it matches.

A tag kept in step by one product's rules can't be managed by another product on the same site: the two would disagree, and the tag would flip back and forth. Saving is refused with the name of the product that owns the tag.

Saving rules re-evaluates every contact this product has synced. Tags that change can trigger FluentCRM automations listening on them.

Pausing ​

A product's sync can be paused on its own. Pausing works like the organization switch for that product alone: waiting updates are dropped, and resuming sends only new changes.