Best Practices
Recommended setup
Start with a focused date range
Set your start date to cover only the period you actually need. Pulling years of charge history on your first sync increases load time and fills your destination with data you may never use. Start with the last 90 days, then extend if needed.
Join Customers and Charges for a revenue view
The Charges entity alone won't tell you who your best customers are. Use the Join transformation on customer_id to combine customer profiles with their transaction history in one flat table.
Use separate data flows per entity
Charges, Subscriptions, and Customers update at different frequencies and have different volumes. Keeping them in separate data flows makes it easier to debug sync issues and set appropriate refresh schedules independently.
Data refresh and scheduling
Refresh Charges more frequently than Products
Charges can come in continuously throughout the day, while Products and pricing rarely change. Schedule your Charges data flow to refresh hourly or several times a day, and Products once daily or less.
Sync Subscriptions daily for churn monitoring
Subscription statuses like past_due or canceled are time-sensitive. A daily refresh ensures your team is acting on current data when doing retention outreach.
Performance optimization
Aggregate before sending to spreadsheets
If you're pulling large volumes of charges into Google Sheets or Excel, use Coupler.io's Aggregate transformation to pre-summarize by day, gateway, or status. This keeps your sheet manageable and your formulas fast.
Use BigQuery for long-term charge history
Google Sheets has row limits that become a problem with high-volume charge data. Send historical Charges data to BigQuery and use Looker Studio on top for dashboards — this combination scales without issues.
Common pitfalls
Do not use the same API key across multiple tools simultaneously without checking Chargedesk's rate limits. If Coupler.io and another integration are both hitting the API at the same time, you may get throttled or see incomplete syncs.
Do
Use the
gatewayfield to filter or segment charges when you have multiple payment processors connectedJoin Subscriptions to Customers before sending to a dashboard so stakeholders have context
Verify records appear in Chargedesk itself before troubleshooting missing data in Coupler.io
Don't
Set the start date to the beginning of time on a large account — it will slow your first sync significantly
Rely on Chargedesk amounts for gateway-fee-adjusted revenue — those calculations need to happen downstream
Assume subscription statuses are real-time; they depend on gateway webhooks reaching Chargedesk
Last updated
Was this helpful?
