Easytool
Track and attribute revenue in Faurya for Easytool.
Faurya can automatically attribute revenue to sessions, campaigns, and sources by connecting your payment flow to your Faurya site. This guide shows the safest, most reliable way to do that with Easytool.
What “revenue attribution” means in Faurya
When a visitor lands on your site, the Faurya script assigns a Visitor ID and Session ID. When the visitor starts checkout, you pass those IDs (or the Faurya attribution token) into your payment provider. When the payment succeeds, your server (or webhook handler) confirms the payment and notifies Faurya. Faurya then ties the purchase back to the original session and attributes revenue to the right channel.
How to attribute revenue with Easytool
If Easytool is acting as a checkout layer (or form layer), the core requirement is the same:
- Capture attribution in the browser (Faurya script)
- Send attribution to your server when creating the order
- Store attribution on your order row
- On payment success (webhook or redirect), record revenue to Faurya
Minimal setup
- Add Faurya script to your site and checkout pages
- Add hidden fields in Easytool that store
faAttributionToken(or session ID) - On Easytool submission, your backend saves it alongside your
orderId - When payment completes, backend calls Faurya with that attribution
Idempotency (do this to avoid double counting)
Always make your revenue writes idempotent:
- Use a unique
orderIdfrom your DB or - Use the provider’s unique payment/transaction ID as the idempotency key
- Store a “revenue_recorded_at” timestamp on your order row so repeated webhook deliveries don’t duplicate revenue
Troubleshooting
Revenue shows as “unattributed”:
- Make sure you are passing
faSessionIdorfaAttributionTokenfrom the browser to your server when you create checkout. - Confirm your checkout/session metadata includes that value.
- Confirm your webhook handler reads it back and sends it to Faurya.
Revenue is duplicated:
- Ensure you’re not recording revenue both on “return URL” and on webhook.
- Add idempotency using
orderId/ provider transaction ID.
Currency or amount looks wrong:
- Decide one convention (minor units recommended) and keep it consistent.
- Always store currency codes in ISO 4217 (USD/INR/EUR).