Integrations
Bring customer facts from the systems you already use into your audiences and messages. A store supplies orders and products; a billing system supplies subscription status; your application supplies accounts and activity. maxclicks can use those records to decide who to contact and what to say.
Connect Attio, Segment, Shopify, Stripe, Supabase or Zapier through the provider's maxclicks integration setup. For custom connections, use the Public API for ongoing record updates and business events, CSV import for existing contacts and objects, and webhooks to report activity to your own systems. Your developer maintains custom connections; your marketing team defines audiences, messages and journeys. Start with the developer handoff.
Start with the customer message
For a repeat-purchase campaign, you need the customer, their past order and the products in it. Sync those records from your commerce integration, or supply them through the API or separate CSV imports into the appropriate schemas. Then use an evaluated relationship to find the right orders for each contact. Include that data in Adaptyle or Liquid before previewing the email.
Verify one known customer and order first: source ID, fields, relationship and message preview. Connecting the provider alone does not establish that every historical record or relationship is ready. The repeat-purchase guide shows how those facts become an email.
What you can connect
Choose the integration that holds the customer facts your campaign needs.
| Service | Data and workflow role |
|---|---|
| Shopify | Dedicated commerce schemas for customers, products, collections and orders, plus business events; initial-sync choices determine what history is brought across |
| Stripe | Enriched customer profiles and billing lifecycle events; subscription and invoice object backfill are optional settings, not an assumption for every connection |
| Attio | People and company data, with email and engagement actions integrated into the CRM |
| Supabase | A selected contact table and optional object tables; configured identity columns and mapped database columns determine the record shape |
| Segment | A destination for the calls and mappings configured in your Segment connection |
| Zapier | Selected triggers and actions, including record upserts, events, template sends and workflow enrollment |
A provider name does not mean every upstream object or historical event is imported. Check the connection's actual mapping, toggles and initial-sync scope. For example, Stripe's customer backfill and subscription/invoice object backfill have separate choices; Supabase requires a contact table and identifier mapping rather than choosing an arbitrary table automatically.
Connect one
Start from the provider's maxclicks integration setup or app directory. Follow its authorization flow and sign in to maxclicks when requested.
Choose the workspace you intend to connect; integration authorization requires administrative access. Complete any upstream authorization and mapping choices, then return to maxclicks to verify the resulting connection.
A successful connection establishes authorization; it does not prove a particular historical record has arrived. Inspect a known customer and related object, then compare its identity and business fields with the source. Check the provider's synchronization status and errors before relying on missing records as evidence that a customer has no activity.
A workspace has one connection entry per provider. Review the provider's account or store selection before connecting another account, and use the integration's setup information for supported account scope.
What the integration owns, and what stays yours
An integration can create dedicated schemas, attributes and other definitions such as segments, webhooks or a brand kit. Managed by and lock indicators identify those definitions. The owning integration maintains them; manual schema configuration and CSV import are restricted where they would conflict with that ownership.
The integration controls the entire attribute catalog of an integration-owned schema. You cannot add, edit or delete its attributes through the app, including a field without its own ownership badge. Keep team-maintained context in a separate native schema and connect it with an evaluated relationship.
Contacts and objects remain records you can inspect and use in audiences, emails and workflows. Manual edits to an upstream-owned value can be overwritten by the next sync. Deleting a record in maxclicks does not establish that the upstream system has deleted it or will stop supplying it.
Identity is still scoped to each schema. An integration's customer schema does not automatically merge its people into your existing default contact schema. Choose the right schema for the campaign and establish explicit relationships when information spans schemas.
Disconnecting, and the difference that matters
Disconnecting a provider stops its connection while preserving its existing maxclicks data. This requires administrative access. The connection is removed, ownership locks are cleared, and the existing schemas and records remain under your team's control.
Uninstall or provider erasure is a different operation. The integration's erasure flow requests deletion of the data it owns, including records in its schemas. That cleanup is durable and can continue asynchronously; workspace processing can be gated while it completes. Dependent campaigns and definitions can be affected by losing those schemas.
Choose based on the intended result: preserve the model and stop updates with Disconnect, or follow the provider's erasure flow when the owned data should be removed. Reconnecting later should be reviewed against the preserved schema and provider mapping rather than assumed to repair every previous campaign reference.
Inspect the complete connection
For a repeat-purchase campaign, check the following before expanding the audience:
- Find one customer you can also inspect in the source system. Compare the source identifier and the selected contact schema.
- Find one related order. Check its amount, currency and current status, rather than assuming a connection imports all history.
- Evaluate the customer's order relationship. A saved order does not establish a relationship until its matching identifiers and lookup agree.
- Preview the message with that customer's data and inspect any missing fields.
- Check one qualifying customer, one excluded customer and one customer with no order history in the segment.
If a record is missing, inspect mapping and sync scope first. If the record exists but the relationship is empty, inspect the join identifiers. If the audience is correct but the email lacks the order, inspect the email's requested attribute expansions. These are separate decisions with separate failure causes.
Pushing data in without an integration
Use the Public API when your backend owns record updates or business occurrences, and webhooks to receive supported notifications from maxclicks. For typed browser or server observations, configure collected events. Agree which system owns each field, how customers are identified, and how retries and consent are handled. Give your developer the HTTP quickstart to verify the connection before sending production traffic.