Best Practices

One entity per data flow

Chargify entities have very different structures. Keep Customers, Subscriptions, Invoices, Coupons, and Transactions in separate data flows — then use the Join transformation to combine them in Coupler.io when you need cross-entity analysis.

Use a read-only API key

Generate a dedicated read-only API key in Chargify for Coupler.io. This limits exposure if the key is ever compromised and clearly separates your integration credentials from admin access.

Convert cents in your destination

All monetary fields come through in cents. Set up a calculated column or formula in Google Sheets, Excel, or BigQuery to divide by 100 at the destination level — don't wait until reporting time to fix this.

Data refresh and scheduling

Daily refresh for Transactions and Invoices

Transactions and invoice statuses change frequently. Schedule these entities to refresh daily or every few hours if you're doing active financial reconciliation.

Weekly refresh for Customers and Coupons

Customer records and coupon definitions change less often. A weekly schedule is usually sufficient and reduces unnecessary API calls against your rate limit.

Performance optimization

Use Aggregate for MRR reporting

Instead of exporting all subscription rows to a spreadsheet and summing manually, use Coupler.io's Aggregate transformation to group by product plan and sum revenue before it hits your destination.

Multiple Chargify sites

If your business runs multiple Chargify sites (e.g., different regions or brands), create a separate connection for each subdomain and use the Append transformation to merge them into a single consolidated report.

Common pitfalls

triangle-exclamation

Do

  • Divide all _in_cents fields by 100 before reporting

  • Filter Subscriptions by state to isolate active vs. churned cohorts

  • Use the reference field to join Chargify customers with records from your CRM or other tools

  • Test with a manual run before enabling scheduled syncs

Don't

  • Mix transaction types without filtering — refunds and credits will skew revenue totals

  • Assume an empty Coupons export means an error — it may simply mean no coupons exist

  • Use the same API key across multiple environments (staging vs. production) — Chargify sites are isolated

Last updated

Was this helpful?