Browse Product guides

Tolt setup

Keep running your affiliate program in Tolt while Plandalf takes the payments. When an affiliate-referred buyer pays, a sequence registers the customer with the referring partner in Tolt and records the sale with each product on the invoice, so Tolt can work out the commission.

Setup has three parts: connect your Tolt account, pass Tolt’s referral IDs into checkout from your website, and add the paid-invoice sequence.

Warning. What it covers today The Tolt steps record first sales. Every transaction is sent as a one-time payment, renewals without the original referral details are skipped, and there is no refund step. Handle renewals and refunds in Tolt.

Before you start

  • A Tolt account with an affiliate program, and Tolt’s tracking script on your website.
  • Plandalf checkouts whose products are linked to Stripe products. Tolt needs a Stripe product ID (prod_…) for each item it records.
  • Your organization’s Plandalf SDK on the pages that open checkout.

Get your Tolt details

Plandalf asks for up to three values from Tolt:

  • API Key: in Tolt, go to Settings → Integrations and create an API key. Use this secret key, not the public pk_… key in your website script.
  • Program ID: starts with prg_. Open your program in Tolt and copy it from the address bar, or type window.tolt_data.program_id in the browser console on a page where Tolt’s script runs.
  • Own partner id (optional): starts with part_. If you send your own newsletter traffic through a Tolt partner link, find that partner in Tolt → Partners and copy its ID. Plandalf then labels those visits as direct instead of affiliate traffic.

Connect Tolt to Plandalf

  1. Find Tolt in the Marketplace

    In Plandalf, open Automation in the sidebar and choose the Marketplace tab. Find Tolt under Available now and click Connect.

  2. Enter your details

    In the Connect Tolt window, keep or change the Integration name. Paste the API Key and Program ID, add your Own partner id if you have one, then click Connect.

Tolt has no way to check a key in advance, so the connection always saves. A wrong key shows up as an authorization error the first time a Tolt step runs, which is why the example below ends with a test.

Pass Tolt’s referral IDs into checkout

Tolt’s script knows which affiliate sent the visitor. Plandalf needs those IDs saved on the checkout so the paid-invoice sequence can read them. Add this configuration once, on every page that opens a Plandalf checkout, after Tolt’s script and the Plandalf SDK:

<script>
  plandalf("configure", {
    properties: {
      tolt_click_id: () => window.tolt_data?.click_id || window.tolt_referral || null,
      tolt_partner_id: () => window.tolt_data?.partner_id || null,
      tolt_program_id: () => window.tolt_data?.program_id || null
    }
  });
</script>

Each value is read when the checkout opens, so it still works if Tolt’s script loads a moment after Plandalf’s. The sequence then sees them as {{trigger.session_properties.tolt_click_id}} and {{trigger.session_properties.tolt_partner_id}}. For Stripe customer metadata, WordPress and other setups, see Tolt with Plandalf checkout.

Steps you can add

Find or Create Customer

Registers the buyer in Tolt against the referring partner. If no partner ID reached the checkout, the step is skipped, because there is nothing to credit.

  • Email (required): {{trigger.customer_email}}.
  • External customer id (required): a stable ID for this customer, ideally their Stripe ID, {{trigger.stripe_customer_id}}. If you map Plandalf’s own customer number by mistake, Plandalf swaps in the Stripe ID for you.
  • Partner id (required): {{trigger.session_properties.tolt_partner_id}}.
  • Click id: {{trigger.session_properties.tolt_click_id}}. Optional, but it makes attribution more accurate.
  • Name: {{trigger.customer_name}}.

If Tolt already has a customer with that email, the step looks them up in your Program ID and returns that record. Its id output is Tolt’s own customer ID, which the next step needs.

Create Transactions From Invoice

Records the paid invoice in Tolt, one transaction per line item. It is only available with the Invoice Paid trigger.

  • Invoice id (required): {{trigger.invoice_id}}. Plandalf reads the line items, amounts and products from the invoice.
  • Tolt customer id: pick id from the Find or Create Customer step in the variable menu. Don’t use the trigger’s customer_id or stripe_customer_id.
  • Click id: optional. If it’s empty, Plandalf uses the click ID saved on the checkout. With no click ID at all, the step is skipped.

Each transaction is labelled with the invoice number, plus the line item for invoices with several products. Tolt ignores a transaction it has already recorded, so re-running the step is safe.

Example: credit affiliates on every paid invoice

The Record Tolt referral commission template builds this for you: open Automation → Templates, choose it and pick your checkout. It fills in every field below for you. A sequence added from the template before 14 October 2026 left some of them empty, so check an older one against these steps.

  1. Set the trigger

    Choose Plandalf and Invoice Paid. Under Offer, pick the checkout affiliates promote. On 3. Test, pick a recent paid invoice as the sample record.

  2. Find or create the Tolt customer

    Add Tolt, Find or Create Customer with your Tolt account. Map Email, External customer id, Partner id, Click id and Name as listed above. Run its test with an invoice that came through an affiliate link.

  3. Record the transactions

    Add Tolt, Create Transactions From Invoice. Set Invoice id to {{trigger.invoice_id}} and pick id from the previous step for Tolt customer id.

  4. Test and turn it on

    Open a Tolt referral link in a private window, buy through your checkout, and check the sale and partner in Tolt. Then turn the sequence On.

Test purchases skip automations by default. To test with a test card, switch on Run on test purchases in the sequence’s Settings. The Tolt steps still write to the Tolt account on your connection, so use a test partner.

If Tolt also receives payments through its own Stripe connection, choose one of the two routes for these checkouts, or the same sale can be credited twice.

Common errors

What you seeWhat to do
A Tolt step fails with a 401 or authorization errorThe API key is wrong, or it’s the public pk_… key. Open the connection in Automation → My apps, paste the secret key from Settings → Integrations in Tolt, and click Save Changes.
Find or Create Customer is skippedNo partner ID reached the checkout. The buyer didn’t come through an affiliate link, or the configuration above is missing on the page that opened checkout.
Create Transactions From Invoice is skippedThe checkout has no Tolt click ID. Check the configuration above and that Tolt’s script runs on the page.
“has no Stripe prod_… on its product”A product on the invoice isn’t linked to a Stripe product. Link or sync it with Stripe, then re-run the step.
Tolt answers “Invalid ID”Tolt customer id isn’t Tolt’s own ID. Pick id from the Find or Create Customer step.
“lookup failed (program_id missing or email not in program)”Add or correct the Program ID on the connection. It must match the program on your website.
The same sale shows twice in ToltTolt is also reporting it through Stripe. Turn off one of the two routes for these checkouts.

Feature detail