Reconciliation
Reconciliation is how you check that what Spendstream reports matches what you have recorded and paid out. You should plan for it from the first day of integration.
What to store
Keep the following against every order or reward in your own system.
- The Spendstream transaction identifier returned or reported for the transaction.
- Your own order or user reference.
- The status at the time you recorded it.
- The amounts you rely on, including
client-commission,processing-feeand the user reward. - The time of the last update.
💡 Tip: Storing the Spendstream transaction identifier is the single most useful thing you can do. Almost every support question is quicker to answer when it is available.
Use two sources together
Use webhooks and transaction reporting side by side.
- Webhooks tell you quickly that a transaction has changed. Only
TRANSACTION_UPDATEDandUSER_UPDATEDare sent today. - Transaction reporting through
getTransactionsListgives you the authoritative list to compare against.
Webhooks are sent once, with no automatic retry, and they carry no event identifier. A missed webhook is therefore possible. Running a scheduled reconciliation against getTransactionsList is how you catch anything that was missed. See the webhooks section for how to deduplicate deliveries.
flowchart TD
A[Webhook received] --> B[Update your record]
C[Scheduled job] --> D[Call getTransactionsList]
D --> E[Compare with your records]
B --> E
E --> F{Differences found}
F -->|Yes| G[Correct records and review]
F -->|No| H[Nothing to do]
What to compare
Reconcile these values for each transaction.
Value | Check |
Status | Does your status match the one Spendstream reports? |
Client commission | Is |
Publisher commission | Does your share match your agreed split? |
User reward | Is the reward you gave the customer correct? |
Pending affiliate transactions are not final
An affiliate transaction is first reported by the network, often as pending. It can be adjusted or declined later. Do not treat a pending transaction as final, and avoid releasing a reward that you cannot reverse until the transaction is confirmed. If you are unsure which status means final for your account, confirm with Spendstream.
Related pages
- Rewards and commission
- Status meanings
- Common implementation mistakes
On this page
- Reconciliation