Affiliatant

How it works, step by step.

What gets recorded, how a sale is attributed, how commission is calculated, what paperwork comes out, and who makes the payment.

1. An affiliate sends somebody to you

Each affiliate gets a tracking link. It lands on the redirect endpoint, which records the visit and sends the visitor to your page in a single hop, with no interstitial page.

Links may only point at hosts you have added to the allowed list. A redirect that will send a visitor to any address is an open redirect, usable to make a link to another site look like a link to yours.

The click id is held server side. A cookie is used only as a labelled fallback. Safari's Intelligent Tracking Prevention caps a script-written cookie at seven days, and at 24 hours where the link carries certain parameters, so a tracker that depends on one loses sales it cannot report. The visitor's IP address is stored as a keyed HMAC and never in the clear.

2. Your shop reports the order

Through a free plugin, the REST API, or a signed pixel on your receipt page. The plugins report twice: once from the order hook and once from the receipt, reconciled at our end on a shared event id. A hook alone misses the shopper who closes the tab. A pixel alone misses the order completed by a gateway callback.

If Affiliatant is unreachable the plugin queues the event on your own server and retries. Checkout completes in both cases.

Conversion reporting is idempotent on the programme, the order reference and the event kind, so a gateway that calls back twice produces one conversion.

3. One affiliate is credited

The attribution is a record in its own right. It stores the model used, the window as it stood on the day, every click that lost and a reason code. Changing your window next month leaves last month's decisions as they were.

Coupon codes have explicit rules. You choose what happens when a shopper arrives through one affiliate's link and then types another affiliate's code: the code wins, the click wins, or the code wins only when there is no click. One affiliate is paid in every case.

4. Commission, held, then payable

Commission is calculated from your rules: percentage or flat, per product, per category, per affiliate group, with tiers, and recurring or lifetime commission on subscriptions. Amounts are held as whole pennies with the currency beside them. Percentages are stored as basis points and the resulting amounts are stored separately, so editing a rate cannot change an amount already calculated.

New commission is held for a period you set. A refund or cancellation inside that period reverses it before anybody has been paid. A reversal after payment becomes a debt netted off the affiliate's next pay run, with a self-billed credit note.

5. You pay, from your own account

A pay run produces a file listing each affiliate to pay, the amount, the currency and the method, with payout thresholds and any clawback already applied. Affiliates below their threshold roll forward and the preview lists them.

Each payment carries its self-billed invoice, raised on the affiliate's behalf under VAT Notice 700/62, with the signed agreement on file, the VAT number validated, and the correct treatment for an affiliate outside the UK. You make the payment from your own account. Affiliatant never holds the money and never asks for access to an account that does.

The ledger underneath

Every commission, reversal, adjustment and payment is written as a pair of double-entry ledger entries that sum to zero. The books are verified on a schedule and by bin/verify-ledger on demand.

Fraud rules

Fraud rules flag and never block. Self-referral, impossible click-to-order speed, a repeated device hash, and a referrer that does not match the affiliate's declared properties each raise a flag with the evidence attached, for you to approve or reject.

Consent

Under PECR regulation 6 an affiliate tracking cookie is not strictly necessary, so consent is required before one is set. The integrations read your site's consent state and Affiliatant records what it was told.

Start free API reference