Goals and revenue
Paddle
Paddle analytics in Stickybeak records completed Paddle Billing and Paddle.js v2 transactions from the checkout callback.
Paddle conversion tracking
<script src="https://cdn.paddle.com/paddle/v2/paddle.js"></script>
<script>
Paddle.Initialize({
token: "YOUR_CLIENT_SIDE_TOKEN",
eventCallback: function (event) {
if (event.name !== "checkout.completed") return;
window.stickybeak("purchase", {
revenue: event.data.totals.total,
currency: event.data.currency_code,
order_id: event.data.transaction_id,
});
},
});
</script>
totals.totalis already in normal units and includes tax. Do not divide it.- Use
totals.subtotalfor before-tax reporting. - The
txn_…transaction ID prevents duplicates.
If Paddle redirects to a successUrl, do not send again there. Sandbox purchases on your live domain still count as real Stickybeak orders. Renewals, plan changes and refunds are not recorded.