Reconciliation
KongaPay provides four primary keys to reconcile incoming payments against your internal records.
Primary Reconciliation Keys
| Key | Description |
|---|---|
| external_reference | The reference you provided at virtual account creation. Always unique per request. |
| session_id | The NIP session ID assigned by the interbank network. Use for deduplication. |
| amount | Confirmed transaction amount. For nonstatic and static, this will match your expected amount. |
| status | Final payment outcome: success, failed, or pending. |
Recommended Strategy
Primary reconciliation
Match incoming callbacks and status responses on external_reference.
Deduplication
Use session_id to detect and reject duplicate payment events for the same transaction.
Daily reconciliation job
Call GET /virtual/transactions and compare results against your internal transaction log.
Mismatch handling
Flag any transaction where the callback amount does not match your expected amount and route to manual review.
Reconciliation Flow
Callback received
Extract external_reference + session_id
Dedup check
Is session_id already in your DB?
Reference match
Find internal order by external_reference
Amount validation
Does callback amount = expected amount?
Fulfil order
Mark as paid and trigger fulfilment
Daily Reconciliation Job
- 1.Call
GET /virtual/transactionswith pagination to fetch all transactions for the day - 2.Compare each transaction against your internal order database
- 3.Flag any
external_referencein the API response that is missing from your DB - 4.Investigate and reconcile any gaps โ these could be missed callbacks