Why Transaction Filters Can Be Problematic

Why Transaction Filters Can Be Problematic


Suppose that we are synchronizing records from a SalesForce report. Also, suppose that you specified a filtering criteria on your report, such as "status must be Closed Won". Sales Cookie will synchronize all records whose status is "Closed Won".

However, consider the following scenario:
  • Sales Cookie synchronized record A because it was "Closed Won" and so appeared in the report
  • Someone changes the record A's state from "Closed Won" to "Closed Lost"
  • Record A no longer matches the report's filtering criteria (the record has "dropped off" the report) 
  • Sales Cookie's synchronization no longer sees record A when pulling data from the report
  • Record A remains stuck with status "Closed Won" within Sales Cook



Perhaps, you would expect Sales Cookie to delete record A. For safety, we will not delete record A, just because it no longer appears in the report. Indeed, this would be very risky (ex: if someone alters your report, it could trigger deletion of hundreds of transactions within Sales Cookie). Also, some calculations may reference record A.

For this reason, your report should NOT filter records such that, if changed, those records would no longer be returned, as this will prevent synchronization of those changes.

Instead, remove your filtering criteria from your report. This allows Sales Cookie's synchronization to observe changes made to all records. Within Sales Cookie, we can filter records as needed (ex: only select records whose status is "Closed Won").

For a related issue regarding delete propagation, click here.

    • Related Articles

    • How Can I Duplicate A Transaction?

      In most cases, you should update your source data (ex: CRM system, accounting system, CSV file, etc.) to include missing records. However, in some rare cases, you may need to add another transaction within Sales Cookie only. To do this: Select ...
    • How Can I Adjust An Individual Transaction's Commission

      This article only applies to per-transaction rewards. Many commissions are paid in aggregate (ex: $1000 payout for reaching a milestone), and so there isn't a per-transaction commission amount. The same applies is you use the portion method to ...
    • What Is The Difference Between Flat And Per-Transaction Rewards?

      In Sales Cookie, there are two main types of rewards: Per-transaction rewards Those rewards are attached to specific transactions. Example: payee "John Doe" received a commission worth $1.23 on deal "Globex Corporation". Global (flat amount) rewards ...
    • How Can I Credit Multiple Users For One Transaction?

      You may want to issue commissions to multiple users over the same sales transaction. This may be necessary when multiple users contribute to a sale, or because you have a multi-level commission structure (ex: override commissions). There are two ways ...
    • Why Are Unique IDs Important When Importing Transaction Data?

      If you use a CRM or Accounting system, each record already has a unique ID. This article only applies to customers whose data source does NOT already provide a unique ID. Let's say you upload a CSV file with records like this: When you upload this ...