Best Practices
Recommended setup
Separate Sales from Sale lists
Use Sales for revenue and margin reporting, and Sale lists for product-level order analysis. Mixing them up leads to double-counting or mismatched totals.
Join entities on shared IDs
Most Cin7 entities share common identifiers (product ID, customer ID, supplier ID). Use Coupler.io's Join transformation to combine Sales + Products or Customers + Sale lists instead of exporting everything separately and stitching it in a spreadsheet.
Use Append for multi-account setups
If your business runs multiple Cin7 accounts (e.g., by region or brand), add each as a separate source block and use the Append transformation to consolidate all records into one destination.
Start with a focused entity set
Don't pull all 20 entities on day one. Start with the 3-4 most business-critical ones (typically Sales, Products, Product availabilities, and Customers), validate the data, then expand.
Data refresh and scheduling
Sync Product availabilities frequently
Stock levels change throughout the day. If you rely on availability data for decisions, schedule this entity to refresh every hour or every few hours rather than once daily.
Store historical snapshots for inventory
The Cin7 API returns current stock levels, not historical ones. If you need trend data, configure Coupler.io to append new runs rather than overwrite, so each sync adds a dated row to your history.
Sync CRM entities less often
Leads, Deals, and Opportunities change slowly. A daily or twice-daily refresh is usually enough and keeps you well within Cin7's API rate limits.
Performance optimization
Split high-volume entities into their own data flows
Sales and Purchase transaction tables can get large. Running them as standalone data flows prevents timeouts and makes it easier to debug issues independently of your other entities.
Send large datasets to BigQuery, not Sheets
If you're pulling years of sales or purchase history, Google Sheets will hit row limits quickly. Route high-volume Cin7 entities to BigQuery or another warehouse destination instead.
Common pitfalls
Don't use Purchase lists and Purchases interchangeably. Purchase lists are line-item records; Purchases are transaction summaries. Aggregating the wrong one will give you inflated or incomplete cost figures.
Do
Validate totals against Cin7's own reports after the first run
Use the Join transformation to enrich Sales data with product and customer details
Check that your API user role has access to every module you're syncing
Store dated inventory snapshots using append mode
Don't
Pull all entities at once without checking which ones your Cin7 plan supports
Rely on a single daily sync for inventory data if stock accuracy is critical
Overwrite historical sales data — use append mode to preserve transaction history
Assume CRM entities will have data if you haven't enabled Cin7's CRM module
Last updated
Was this helpful?
