Partnerize

Datafly Signal delivers conversions to Partnerize (formerly Performance Horizon) server-to-server using the prf.hn conversion API. Sales are recorded against the stored last-click clickref, so partner commissions track accurately without a client-side tracking tag and without being affected by ad blockers or cookie deletion.

Prerequisites

Before configuring Partnerize in Signal you need:

  1. An active Partnerize campaign with server-to-server (S2S / API) tracking enabled. Contact your Partnerize account manager to confirm S2S tracking is switched on for the campaign before you go live.
  2. Your campaign reference (camref). Find it in the Partnerize console under Admin > Publisher. This is the only credential — Partnerize S2S tracking has no API key or secret.
  3. Your site must capture the clickref URL parameter on landing pages and store it as a first-party cookie, then make it available to Signal at the point of sale (see Capturing the clickref below).

Partnerize records conversions only — there is no page-view or browsing event to send. Signal delivers a single conversion call when an order completes.

Configure in Signal

Configuration Fields

FieldRequiredDescription
campaignYesYour Partnerize campaign reference (camref), from Admin > Publisher in the Partnerize console.

Management UI Setup

Add the integration

Go to Integrations > Add Integration > Partnerize.

Choose a preset

Select the Retail preset for standard e-commerce conversion tracking.

Enter your campaign reference

Paste your campaign (camref) value.

Partnerize affiliate tracking is typically classified under marketing / advertising. Select the categories that apply to your consent configuration.

Save

Click Save. Signal will start delivering completed orders to Partnerize.

API Endpoint

Partnerize conversions are sent as a server-to-server call to the prf.hn tracking host. Parameters are expressed as colon-delimited path segments:

GET https://prf.hn/conversion/tracking_mode:api/campaign:{campaign}/clickref:{clickref}/conversionref:{order_id}/currency:{currency}/customertype:{new|existing}/voucher:{voucher}/conversion_time:{YYYY-MM-DD+HH:MM:SS}/[category:{category}/sku:{sku}/value:{value}/quantity:{quantity}]
  • tracking_mode:api marks the call as server-to-server.
  • campaign is your camref.
  • clickref is the last-click reference that awards commission.
  • conversionref is your order ID.
  • Each line item is wrapped in its own [ ... ] container; multiple items are appended one after another, e.g. [sku:A/value:10.00/quantity:2][sku:B/value:40.00/quantity:1].

A 200 response means the conversion was accepted.

Identity Signals

Partnerize attribution is click-based, not identity-based — it does not use hashed email or phone. The single identifier that matters is the clickref.

Capturing the clickref

When a partner sends a visitor to your site, Partnerize appends a clickref URL parameter to the landing-page URL. You must:

  1. Read the clickref query parameter on every landing page.
  2. Store the most recent value in a first-party cookie (last click wins).
  3. Replay that stored value to Signal on the Order Completed event so it can be sent as clickref in the conversion call.

Signal reads the click reference from vendor_ids.partnerize_clickref. Surface the stored cookie value into the Signal event under that key (for example via a server-side enrichment or by passing it on the track call).

⚠️

If the clickref is missing, Partnerize cannot attribute the sale to a partner and no commission is awarded. Confirm your clickref capture and cookie storage before going live.

Event Mapping

Retail preset

Signal eventPartnerize call
Order Completedconversion (S2S)

All other events (including page) are dropped — Partnerize records conversions only.

Conversion field mapping

Signal sourcePartnerize parameter
vendor_ids.partnerize_clickrefclickref
properties.order_idconversionref
properties.revenuevalue
properties.currencycurrency
properties.quantityquantity
properties.couponvoucher
properties.customer_typecustomertype
context.geo.countrycountry
timestampconversion_time
properties.productsitem containers (sku, value, quantity, category)

Example: Order Completed

Datafly.js call:

datafly.track("Order Completed", {
  order_id: "ORD-001",
  revenue: 129.99,
  currency: "GBP",
  coupon: "SAVE10",
  customer_type: "new",
  products: [
    { sku: "SKU-A", category: "shoes", price: 49.99, quantity: 2 },
    { sku: "SKU-B", category: "bags", price: 30.01, quantity: 1 }
  ]
});

Partnerize conversion call sent by Signal:

GET https://prf.hn/conversion/tracking_mode:api/campaign:1101l1234/clickref:def456abc/conversionref:ORD-001/currency:GBP/customertype:new/voucher:SAVE10/conversion_time:2026-06-06+18:33:03/[category:shoes/sku:SKU-A/value:49.99/quantity:2][category:bags/sku:SKU-B/value:30.01/quantity:1]

Testing Your Integration

Trigger a test order

Place a test order on your site after arriving via a Partnerize tracking link (so a real clickref is captured), or replay a known clickref value.

Check Signal’s event debugger

Confirm the Order Completed event resolved to a conversion call with a populated clickref, conversionref, value and currency.

Verify in the Partnerize console

Log in to the Partnerize console and check the conversion appears under the campaign’s transaction/sales reporting. Partnerize tracks sales in real time as the S2S call is made.

Troubleshooting

ProblemSolution
Conversion not appearing in PartnerizeConfirm S2S / API tracking is enabled on the campaign. Verify the campaign (camref) is correct.
Sale recorded but no commissionThe clickref was missing or stale. Check your landing-page clickref capture and first-party cookie storage.
400 errorsRequired parameters (clickref, conversionref) are missing or the conversion path is malformed. Review the call in Signal’s event debugger.
Wrong order valueConfirm whether your campaign expects per-item value (multiplied by quantity) or a single basket total, and map revenue accordingly.
Duplicate conversionsEnsure Order Completed fires once per order; Partnerize de-duplicates on conversionref (order id).