Server-Side Tracking
Overview
Onebox reports the purchase conversion server-side, from its own tagging server to your marketing and analytics platforms: Meta Conversions API and Google Analytics 4.
Because the conversion is reported from the server rather than the buyer's browser, it is not lost to ad blockers, browser tracking restrictions, or a buyer who closes the tab before the confirmation page loads. It carries a shared event_id so your platform can reconcile it with your own browser pixel instead of counting the purchase twice.
Only purchase is reported server-side. Every other e-commerce event remains available to your own tags through the browser data layer.
Quick answers
| You want to know… | Answer |
|---|---|
| Is Meta Conversions API supported, deduplicated with my pixel? | Yes. Both events carry the same event_id. See Event deduplication. |
| Does the purchase include hashed customer data and the order id? | Yes: SHA-256 email, first name and last name, plus the order code. Phone is not included. See Customer data. |
Does fbclid survive to the checkout confirmation? | Yes. See Advertising and campaign identifiers. |
| How do I turn it on? | Self-service in CPanel, per sales channel. See Enable it in CPanel. |
What the purchase conversion includes
You do not need to build or map any of this yourself — it ships with the conversion.
Order identifiers
| Parameter | Content |
|---|---|
transaction_id | Order code — use it as order_id in your platform |
ob_order_code | Order code |
ob_order_id | Onebox order id |
event_id | Deduplication id, shared with the browser event (see Event deduplication) |
Customer data
Buyer identity reaches your platforms hashed with SHA-256, normalised beforehand (trimmed and lower-cased):
| Parameter | Content |
|---|---|
ob_user_hashed_email | Buyer email |
ob_user_hashed_name | Buyer first name |
ob_user_hashed_lastname | Buyer last name |
The buyer's IP address is sent as client_ip_address, which Meta uses as an additional matching signal. These buyer attributes are also included as plain values, when the channel's purchase form collects them: ob_user_birthday, ob_user_country_code, ob_user_gender, ob_user_postal_code.
Phone number is not sent. Phone matching is not available today, regardless of what the purchase form collects. If you need it, raise it with your Onebox contact as a change request.
Advertising and campaign identifiers
The sales channel captures these when the buyer arrives and keeps them through the funnel, so the conversion can be attributed back to the click that produced it:
| Parameter | Source |
|---|---|
fbclid | fbclid URL query parameter |
_fbc | Meta _fbc cookie (or the _fbc URL parameter) |
_fbp | Meta _fbp cookie (or the _fbp URL parameter) |
utm_* | All utm_ URL query parameters |
Event and session details
Each entry of the standard items array carries the event and session it belongs to, as ob_event_id, ob_event_title, ob_session_id and ob_session_title, and the conversion carries the channel it was sold on (ob_channel_id, ob_channel_name, ob_channel_entity_id).
For Meta, those values are also rolled up into four order-level parameters, each a comma-separated list of the distinct values in the order: ob_event_ids, ob_event_titles, ob_session_ids and ob_session_names. Use them to attribute conversions to specific events and sessions, compare performance across them, and build more detailed reports.
Enable it in CPanel
Server-side tracking is configured per sales channel, by a CPanel user with the operator manager role.
- Go to Channels → open the channel → Configuration → Server-Side Tracking.
- Enable the destinations you need and add their credentials (up to 5 credential sets per destination):
- Meta (Facebook) Pixel — switch Enable Meta Pixel tracking on, then enter the Pixel ID (numeric dataset id) and the Meta API Key (Conversions API access token).
- Google Analytics 4 — switch Enable Google Analytics 4 tracking on, then enter the Measurement ID (
G-XXXXXXXXXX) and the Google Analytics API Key (Measurement Protocol API secret).
- Save.
A destination cannot be saved as enabled without at least one complete credential set. Either destination switch on its own is enough — nothing else on this screen is needed. Repeat for every sales channel that must report server-side.
The third switch, Enable Tracking Gateway, is not part of this setup and is off by default. Leave it off unless Onebox has asked you to enable it.
If you would rather have the Onebox team do the setup, or you do not have the required role, contact your Onebox customer support manager with the same credentials.
Event deduplication
Each conversion can reach your platform twice — once from your own pixel or GA4 tag in the browser, and once from Onebox server-side. To prevent double counting, both carry the same event_id.
For this to work, your own tags must send that event_id. Otherwise the platform cannot tell the two events apart, and the purchase is counted twice. Configure it as follows.
Configure your GTM tags with the event id
Create a Data Layer variable
In GTM, create a Data Layer Variable that reads the event_id key, and name it for example {{DLV - Event ID}}.
Meta pixel
Using the raw HTML pixel implementation, include the eventID as follows:
fbq('track', 'Purchase', {value: 12, currency: 'USD'}, {eventID: '{{DLV - Event ID}}'});
Or, using the Facebook Pixel community template tag (facebookarchive), add your variable in the Event ID field under More Settings.
Google Analytics 4
Add event_id = {{DLV - Event ID}} as an event parameter, either in the GA4 event tag or in your Google tag event settings variable.
Support
For questions about server-side tracking implementation, please contact your Onebox support representative.