POST with Content-Type: application/json to the postback URL you configure, carrying the sale and the conversion key that vTurb planted in the checkout link.
Before you start
Two values have to line up, one from each product:- The postback URL. vTurb calls it the webhook URL. In vTurb, open Settings > Conversion Tracking and copy it.
- The conversion key parameter. vTurb writes a conversion key (a value that starts with
v3_) into one query-string parameter of the link that carries the viewer to your checkout. You choose which parameter that is, on both sides.
How to configure
1
Copy the webhook URL from vTurb
In vTurb, go to Settings > Conversion Tracking, copy the webhook URL, and note which tracking parameter that setup uses for the conversion key.
2
Open the VTurb card in Integrations
In the dashboard, go to Integrations and open the VTurb card. The screen is titled Configure Integration with VTurb.
3
Fill in Postback URL
Paste the vTurb webhook URL into Postback URL. The field only accepts a full URL, so a bare hostname is rejected when you save.
4
Pick the VTurb Conversion Key Parameter
Choose the parameter vTurb writes the conversion key into: SRC, SCK, VTID, SID or SUB. New configurations start on SRC.
5
Leave Purchase checked and save
Under Events to be mapped, the Purchase checkbox decides whether anything is sent at all. It is checked by default. Click Save Integration.
The configuration belongs to the role you were in when you saved it. If you use the dashboard both as a producer and as an affiliate, each role holds its own vTurb configuration, and a sale uses the one belonging to the role that earned it.
Events sent
One checkbox covers all three. Upsells and downsells have no toggle of their own, so unchecking Purchase stops every one of them. The
is_first_purchase field is true only for the front-end purchase and false for an upsell or a downsell, which is how vTurb can tell them apart.
Nothing else reaches vTurb. Checkout starts, refunds and chargebacks are not sent to this integration, and there is no screen where they can be turned on. If you need those, use webhooks, which do carry them.
For an affiliated sale the platform delivers twice: once against the producer’s configuration and once against the affiliate’s. Each side receives its own amount in creator_net_amount.
The conversion key
The conversion key is read at delivery time from the query string the checkout captured when the buyer arrived. The platform looks for exactly the parameter you selected, matching it in lower case or in upper case (src and SRC both resolve, Src does not), and puts the value it finds into vturb_ck.
If the parameter is not in the captured query string, vturb_ck is sent as null. Nothing rejects the delivery and nothing warns you.
This path reads the captured query string in full, so
vtid, sid and sub work here even though they are not among the tracking parameters that webhook payloads return.What the platform sends
The body is a single JSON object, not the array used by PagAmerican webhooks. Every field below is present on every delivery.
Two things about the amounts are easy to get backwards:
- They are decimal amounts, not cents.
97.9means 97.90 in the transaction currency. This differs from webhook payloads, where every amount is an integer number of cents. - They describe the order, not the individual purchase. On an upsell delivery,
typeandcontent_idsrefer to the upsell, whileitems_totalandtransaction_totalrefer to the order as a whole.
Delivery log
Every attempted delivery is recorded. Open Integrations, then View Logs on the VTurb card, for a list of Sent At, Event, Status, Code and Details, newest first. The platform allows 5 seconds per attempt and retries a failed delivery three times, backing off between attempts. The log row is written after the last attempt and takes a moment to appear, so a purchase approved seconds ago may not be listed yet. Read the columns as follows:- Event always reads
purchase_approved, on upsell and downsell rows too. ThePurchase/upsell/downselldistinction is in the body, not in this column. - Status is Success or Failed.
- Code shows
200on success and a dash on failure. It does not report the status vTurb answered with; the reason is in Details instead. - Details shows a dash on success and the error on failure.
Troubleshooting
The log says Success and vTurb shows no conversions
Neither product reports this as an error, which is what makes it hard to find. The platform sends the purchase whether or not it found the conversion key. When the parameter you selected under VTurb Conversion Key Parameter is not in the link that brought the buyer to the checkout,vturb_ck goes out as null. vTurb receives a sale it cannot tie to any video session, so it counts nothing, while your delivery log fills up with green Success rows.
The delivery log cannot tell you this apart, because it does not show the body that was sent. Check the two ends instead:
- The two parameter names match. The parameter selected under VTurb Conversion Key Parameter has to be the one vTurb writes the key into. vTurb’s own setup can use
src,sck,vtid,sid,xcodorsub1throughsub20, and only the first four of those exist in the dashboard’s list. Selecting SUB makes the platform look for a parameter named exactlysub, which is not the same assub1. - The key survives the trip to the checkout. Open one of your checkout links the way a buyer would, and read the address bar on the checkout page. The parameter has to still be there, spelled the same way, carrying a value that starts with
v3_. A redirect that drops the query string, a link shared without it, or a button on the video page that points straight at the checkout, all break the chain before the platform is involved.
The delivery log is empty
An empty log is a diagnostic, not a platform failure. Nothing was sent, which happens in exactly two cases:- The integration was never saved. The VTurb card shows Not Installed and there is no View Logs button. Saving the screen once installs it.
- The Purchase checkbox is unchecked. The platform skips the delivery before it reaches the log, so no row is written, not even a failed one.
An affiliate sees nothing while the producer sees deliveries
The two configurations are independent. A producer’s configuration never covers their affiliates, and an affiliate has to open Integrations > VTurb while in the Affiliate role and save their own postback URL. Until they do, an affiliated sale produces one delivery (the producer’s), and the affiliate’s log stays empty.The log shows Failed
The reason is in Details, since Code stays empty on a failure. Two messages mean something specific:- Starts with
Invalid URL: the value in Postback URL is not an address the platform can call. Re-copy it from Settings > Conversion Tracking in vTurb and save again. External service unavailable: vTurb failed too many deliveries in a short window, so the platform stopped calling it for 30 seconds and refused this one without ever leaving the platform. It clears on its own.
Error calling external service: followed by vTurb’s own answer.
A failed delivery is not sent again. The three retries happen inside the delivery itself, before the row is written, so a purchase whose row says Failed never reaches vTurb. Fixing the configuration afterwards applies to later purchases only.
FAQ
Can I send a test delivery? No. This screen has no test action. The first delivery is the first real approved purchase, so the practical test is a purchase of your own on a live offer, then View Logs. Do I need one configuration per product? No. There is one configuration per account and it applies to every product and offer you sell. If I change the conversion key parameter, does it affect past sales? No. The parameter is read at the moment of delivery, so the change applies to purchases approved from then on. Deliveries already sent are unchanged, and sales whose checkout link carried the old parameter will no longer match after the switch. Can I turn the integration off without deleting it? Uncheck Purchase and save. Deliveries stop immediately and the configuration is kept, so re-checking the box resumes them.Need help?
Our team can help you set up your integration: support@pagamerican.com