Kwanko
Datafly Signal registers validated conversions with Kwanko (formerly NetAffiliation) server-to-server. Signal captures the Kwanko click ID when a visitor arrives from an affiliate link, then fires sale and lead conversions directly to Kwanko’s conversion tracker from your own infrastructure. No Kwanko client-side pixel is required.
How Kwanko attribution works
Kwanko attributes a conversion to a publisher using a click ID that is appended to your landing-page URL as the kwks2s query parameter when a visitor clicks an affiliate link. Two pieces of data identify a conversion to Kwanko:
- Program ID (
mclic) — your fixed Kwanko program identifier. - Click ID (
cible) — the per-visitor value Kwanko placed inkwks2s.
Signal captures the kwks2s value into a first-party cookie on the first page view and replays it as the cible parameter on later sale and lead conversions. Conversions without a captured click ID are not attributable and are not sent.
Prerequisites
Before configuring Kwanko in Signal, you need an active Kwanko advertiser account with a running program.
Get your Program ID
- Sign in to your Kwanko advertiser dashboard.
- Open your program’s tracking settings.
- Copy the Program ID (the value Kwanko uses as
mclic, for exampleP4F47357018F191).
Confirm your conversion type
Ask your Kwanko account manager whether your program is configured as a sale program (commission on order value) or a lead program (commission per qualified lead). This determines which events you should enable:
- Sale program → enable Order Completed.
- Lead program → enable Lead Generated.
Confirm your tracker host
The default Kwanko conversion tracker is action.metaffiliation.com. Some advertisers are issued a custom collection host. If your account uses a custom host, mention it during setup.
Configuration
| Field | Required | Description |
|---|---|---|
program_id | Yes | Your Kwanko program / tracking ID. Sent as the mclic parameter on every conversion. |
Configure in Signal
- Go to Integrations > Add Integration > Kwanko.
- Select the Default preset.
- Enter your Program ID.
- Select your consent categories (typically
marketingoradvertising). - Click Save.
API Endpoint
GET https://action.metaffiliation.com/trk.phpAll conversion data is sent in the URL query string. There is no API key or token — attribution is established by your program ID (mclic) plus the captured click ID (cible).
| Parameter | Sent on | Description |
|---|---|---|
mclic | All conversions | Program ID (from your config). |
cible | All conversions | Captured Kwanko click ID. |
argann | Sale and lead | Order / transaction / lead reference ID. |
argmon | Sale | Order amount. |
nacur | Sale | ISO 4217 currency code (e.g. GBP, EUR, USD). |
argbr | Sale (optional) | Coupon / voucher code. |
argmodp | Sale (optional) | Payment method. |
gdpr_kwk | All conversions | Consent flag (1 = marketing consent granted). |
Identity Signals
Kwanko does not use hashed PII for matching. Attribution is purely click-based:
| Signal | Field | Description |
|---|---|---|
| Click ID | cible | Captured from the kwks2s URL parameter on the affiliate landing page and stored as a first-party cookie by Signal. Required for attribution. |
| Consent | gdpr_kwk | Derived from the visitor’s canonical marketing consent state. |
Signal captures the click ID automatically on the first page view of a Kwanko-referred session. You do not need to write any code to persist it — just keep the page event enabled in the blueprint.
Event Mapping
Default preset
| Signal event | Kwanko action |
|---|---|
page | Captures the kwks2s click ID (no conversion sent) |
Order Completed | Sale conversion |
Lead Generated | Lead conversion |
To customise, edit the integration’s Field Mappings in the Management UI.
Example: Sale conversion
Datafly.js call:
datafly.track("Order Completed", {
order_id: "ORD-001",
revenue: 129.99,
currency: "GBP",
coupon: "WELCOME10",
payment_type: "card"
});Request sent by Signal:
GET https://action.metaffiliation.com/trk.php?mclic=P4F47357018F191&cible=1681601460_1CjwK&argann=ORD-001&argmon=129.99&nacur=GBP&argbr=WELCOME10&argmodp=card&gdpr_kwk=1Example: Lead conversion
Datafly.js call:
datafly.track("Lead Generated", {
order_id: "LEAD-7781"
});Request sent by Signal:
GET https://action.metaffiliation.com/trk.php?mclic=P4F47357018F191&cible=1681601460_1CjwK&argann=LEAD-7781&gdpr_kwk=1Testing
Visit via a Kwanko link
Use a real Kwanko affiliate link (or manually append ?kwks2s=test_click_123 to your landing URL) so Signal captures a click ID.
Trigger a conversion
Complete a test order (or lead) on the same browser session. Signal replays the captured click ID as cible.
Verify in the Kwanko dashboard
Open your Kwanko advertiser dashboard and confirm the conversion appears as pending or validated.
The Kwanko tracker returns HTTP 200 with a pixel response even for unattributed or duplicate conversions, so a 200 in Signal’s event debugger does not by itself prove a conversion was recorded. Always confirm in the Kwanko dashboard.
Troubleshooting
| Problem | Solution |
|---|---|
| No conversion sent | The visitor has no captured click ID. Confirm page fired with a kwks2s parameter present on the landing URL, and that the Kwanko cookie was stored. |
| Conversion sent but not in Kwanko dashboard | Verify the Program ID (mclic) is correct and that the click ID is genuinely one Kwanko issued. A 200 response does not guarantee attribution. |
| Sale shows no commission value | Ensure revenue and currency are populated on Order Completed. A lead-type program ignores amount. |
| Wrong currency | Send an ISO 4217 alpha code (e.g. GBP, EUR) in currency. |
| Duplicate conversions | Kwanko de-duplicates on the order ID (argann). Send a stable, unique order_id per conversion. |