Affiliate and Performance Marketing · Self-hosted tracking setup (Post Affiliate Pro, Tapfiliate, Everflow)
Server-side affiliate tracking on Post Affiliate Pro, Tapfiliate or Everflow, reconciled to your order table with refund reversals and offline sales.
About this service
We treat any gap above five percent between the platform's conversion count and your order table as a defect to be fixed, not a tolerance to be accepted. On client-side installs we inherit, that gap usually starts somewhere between twelve and twenty-five percent, and it is almost always one of four things: the tracking script sitting behind a consent banner, Safari capping the first-party cookie at seven days, a redirect payment method where the thank-you page never loads, or a checkout firing the conversion before the payment provider confirms it.
How we build it:
The click identifier is captured server-side on first touch, written both to a first-party cookie on your own domain and to the session record, so attribution survives a cleared browser once the visitor identifies themselves. The conversion is sent server to server from your order-created event, with the order ID as the idempotency key — webhook retries are the single most common cause of double-paid commission and no platform protects you from it by default. Refunds and cancellations post a reversal, which is the step most installs skip entirely; without it your liability grows quietly and partners eventually receive a statement that destroys their trust in the program.
Platform by platform:
Post Affiliate Pro runs on your own PHP and MySQL, tracks on a_aid and a_bid, and depends on cron for recurring and lifetime commission runs. A cron that silently stops is how a program pays nothing for a month and nobody notices until partners write in. We ask for patch and cron access, or we do not accept responsibility for the instance.
Tapfiliate fits subscription products: conversions posted from Stripe or Chargebee webhooks, with the commission decay schedule enforced inside the platform rather than in somebody's spreadsheet.
Everflow suits programs carrying many partner types: postback macros, coupon-code conversion tracking for partners who cannot carry a link — podcast reads, print, in-game placements — and enough sub-parameter discipline that a placement is still legible six months later.
Offline and delayed conversions:
Automotive is the case that breaks standard installs. A lead converts at the dealership thirty to ninety days later, and paying on form fill funds a lead broker's business model rather than yours. We match a hashed lead identifier back from the dealer CRM export and pay on the confirmed sale, with the partner statement showing pending pipeline so the delay does not read as non-payment.
Data protection, since there is no network to hand it to:
Self-hosted means you are the controller. We document the lawful basis for click storage, set retention on raw click logs at ninety days while keeping the conversion record for the accounting period, and put the processing agreement in place where the platform is vendor-hosted. Partner tax data — residence, VAT number or IČO — is collected at registration, because DAC7 reporting will ask for it and nobody enjoys chasing it in January.
What we refuse:
We will not install tracking where we cannot reach the server-side order event. A browser-only implementation is something we would have to defend to your finance team later, and we would lose. We will not share responsibility for a self-hosted instance we are not permitted to patch. And where you describe your situation and the honest answer is a network rather than a self-hosted platform, we say so and the engagement ends there, which happens perhaps one enquiry in five.
Not included:
Platform licences, hosting, and custom development inside your checkout are yours. We write the integration specification, review the implementation and test it against real transactions; your engineers merge it, or ours do by arrangement.
Who this is not for:
Merchants with no engineering capacity at all. Self-hosted tracking is infrastructure — it needs patching, monitoring and somebody who notices when cron stops. If nobody owns it internally, a network is the better answer and the cheaper one.