Offer configuration stays visible
Use Offers to decide what Custom API receives: product, price, buyer, checkout mode, invoice, and automation context.
Product surfaces
Integrations work best when the checkout surface, payment state, invoice record, and post-purchase automation all point at the same commercial object. These product screens show the Plandalf controls that should be configured before Custom API receives checkout, payment, tax, or workflow context.
Use Offers to decide what Custom API receives: product, price, buyer, checkout mode, invoice, and automation context.
Before Custom API enters the stack, operators still need checkout templates, products, prices, coupons, order bumps, upsells, and branded offer content they can inspect.
Custom API should fit into the work after checkout: fulfilment, records, CRM updates, support context, webhooks, and sequences.
Custom API can start the sale through a hosted checkout, embedded checkout, modal, inline flow, or buy button depending on the stack.
Builder paths
Use these stack guides when a builder needs the whole path: sales surface, Plandalf offer, payment handoff, automation, fulfilment, records, and downstream integrations.
Find full stack guides that pair Custom API with checkout, payment, automation, fulfilment, records, and downstream integrations.
Use Offers to package products, prices, checkout pages, invoices, coupons, payment options, and follow-up context.
Use hosted checkout when Custom API should hand the buyer to a branded Plandalf checkout page.
Use SDK checkout when Custom API belongs inside an app, custom site, or API-first stack.
Route checkout events, purchase events, payment state, invoices, and customer context into another tool.
Turn a completed checkout into access, receipts, CRM updates, support context, and records.
For teams that write their own code, Plandalf’s enrolment catch URL is a plain HTTP endpoint you can call from anywhere — your own backend, a serverless function, a scheduled job, a webhook receiver.
Not a third-party platform in the usual sense; it’s a catalog entry because the Emails tab renders “here’s how to enrol participants via your own code” the same way it renders Zapier or MailerLite instructions — one template, one code path, no special casing.
email and ref. No SDK required.ref-keyed participants — repeat POSTs with the same ref
re-resolve an existing participant rather than creating duplicates.Setup templates
Copy-paste setups for the most common ways to wire Custom API into Plandalf.
promo · automation
If Zapier and your ESP's built-in automations don't cover the signal you want, POST directly to the promo's catch URL from anywhere — a server-side controller, a cron job, a form-submit handler, a Cloudflare Worker.
curl -X POST {{ promo.catch_url }} \
-H 'Content-Type: application/json' \
-d '{"email": "jane@example.com", "ref": "jane@example.com"}'
Notes:
ref field is the participant's identifier — any stable
string per person works (email, customer ID, UUID). Returning
visitors with the same ref stay on the same deadline.email is optional when ref is not itself an address; it's
used for email-tagged merge fields in timer URLs.Automation graph
How Custom API participates in Plandalf sequences: what events it exposes upward, and what actions Plandalf can perform on it.
Events Plandalf can subscribe to through webhooks, API work, checkout state, payment context, and connected integrations.
custom-api.webhookThings Plandalf sequences can do after checkout, payment, invoice, customer, or deadline events.
custom-api.custom_api_calltrigger: plandalf.checkout.completed
actions:
- custom-api.custom_api_call:
endpoint: /v1/event
payload:
email: ${customer.email}
plan: ${product_slug}Pair it with
Platforms whose roles complement Custom API inside a Plandalf sequence.
Custom API + ActiveCampaign
Compose Custom API and ActiveCampaign programmatically via the Plandalf SDK.
Custom API + beehiiv
Compose Custom API and beehiiv programmatically via the Plandalf SDK.
Custom API + Kit (ConvertKit)
Compose Custom API and Kit (ConvertKit) programmatically via the Plandalf SDK.
Custom API + Customer.io
Compose Custom API and Customer.io programmatically via the Plandalf SDK.
Custom API + Drip
Compose Custom API and Drip programmatically via the Plandalf SDK.
Custom API + Flodesk
Compose Custom API and Flodesk programmatically via the Plandalf SDK.
Integration methods
Each method below is the minimum viable setup. Pick the one closest to how you already use Custom API with checkout, payments, invoices, webhooks, API work, SDK checkout, and integrations.
For anything not covered by a native trigger, configure a Custom API webhook to POST to Plandalf. The payload is forwarded into the sequence as `${event}`.
curl -X POST https://api.plandalf.com/v1/webhooks/custom-api \
-H "Authorization: Bearer $PLANDALF_API_KEY" \
-H "Content-Type: application/json" \
-d @event.jsonFAQ
Plandalf itself is free to connect to Custom API. You only need a Custom API account that allows API access, which is almost every paid plan.
Under 10 minutes. OAuth (or paste an API key), pick the lists/segments you care about, and you're live. No code unless you want it.
Yes. Disconnecting only revokes the credentials — historical events Plandalf fired stay in your sequence logs, and Custom API's own records are untouched. You can reconnect any time and resume from the last seen event.
Plandalf stores the minimum IDs needed to address a record in Custom API plus a log of events Plandalf fired. Source-of-truth data stays in Custom API.
Use the generic `custom-api.custom_api_call` action or the inbound `custom-api.webhook` trigger. Anything Custom API's REST API can do, a Plandalf sequence can drive.
Plandalf respects Custom API's API rate limits and backs off on 429s. For very high-volume use cases, ask about a dedicated worker pool.
Custom API's homepage at https://plandalf.dev/docs/promos/api links to their developer docs. For Plandalf-side questions about the Custom API integration, see the Plandalf docs.