Reconciliation (sometimes abbreviated to “recon”) is a process done by bank employees every day. The lists of transactions from the core banking system (CBS) are reconciled with similar lists from the vendors of financial services (like ATM cash withdrawal, or interbank payments service). If there are any discrepancies (e.g. that a transaction is in one list but missing in the other) an investigation must happen to figure out and rectify the problem.

Types of reconciliation

Type

Epic

Vendors involved

Cash In (Deposit)

SM-5247 - BO: Reconciliation - Cash In / Deposit Done

Paynamics DONE

Digipay MISING REPORT

Cash Out (Withdrawal)

SAF-880 - BO: Reconciliation - Cash Out / Withdrawal Ready for Testing

Paynamics BEING IMPLEMENTED

Digipay MISING REPORT

Disbursement Wallet

SAF-940 - BO: Reconciliation - Disbursement Wallet Backlog

Paynamics MISING REPORT

Digipay MISING REPORT

Bill Payments

SAF-1401 - BO: Reconciliation - Bill Payments Backlog

Paynamics MISING REPORT

ECPay READY FOR ANALYSIS

Bayad MISING REPORT

Digipay MISING REPORT

Cards

SAF-906 - BO: Reconciliation - Card Settlement Process Backlog

Euronet READY FOR ANALYSIS

Internal

SAF-945 - BO: Reconciliation - Internal Account Backlog

Internal MISSING REQUIREMENTS

The examples of vendor reports are stored in Lark:

API

https://backoffice-manager.apps.brave.safibank.online/swagger/views/swagger-ui/#/Reconciliation

GET  /reconciliation                    // list reports for a specifc day & type
POST /reconciliation/report             // create report
GET  /reconciliation/{reportId}/input   // get link to the (vendor) input excel
GET  /reconciliation/{reportId}/report  // get link to the report excel

// Used for experimentation
GET  /reconciliation/transactions/history  // Download transaction history in csv format

Data model

See Reconciliation procedure.

Implementation

The reconciliation process has several steps, those are the same for all reconciliation types (so far)

  1. Get the vendor report - it is uploaded by BOFE in MS Excel format (XLS or XLSX)

  2. Get CBS report (transaction data from our system), details in https://safibank.atlassian.net/wiki/spaces/ITArch/pages/189727249/Transaction+report

  3. Reconcile them, details in Reconciliation procedure

  4. Store the resulting data & generate an Excel report file & emit data in a snapshot

Kafka messages

Reconciliation reports snapshots should be produced, see https://safibank.atlassian.net/wiki/spaces/ITArch/pages/219973494/Kafka+messages#Producers.