Skip to main content

Payment Reconciliation

Reconciliation allows matching payments generated by PCH-SIG with mobile money payment operator statements (TELECEL, Orange Money, MTN).

Overview​

Reconciliation Workflow

Supported operators​

OperatorCodeColorFile format
TELECELtelecelRed πŸ”΄CSV (;) or Excel
Orange Moneyorange_moneyOrange 🟠CSV (;) or Excel
MTN Mobile MoneymtnYellow 🟑CSV (,) or Excel

Create a reconciliation session​

Step 1: Parameter selection​

  1. Go to Payments > Reconciliation
  2. Click on New reconciliation
  3. Select:
FieldDescriptionRequired
OperatorTELECEL, Orange Money or MTNYes
Start periodTransaction start dateYes
End periodTransaction end dateYes
CycleConcerned payment cycleNo

Step 2: Import operator file​

Download the operator statement and import it into the system.

TELECEL format​

ColumnDescription
Transfer IDInternal reference
PhoneBeneficiary number
Amount (FCFA)Transferred amount
Transfer StatusSUCCESS, FAILED, IN PROGRESS
DateTransaction date
Message / Operator Ref.Operator reference
Transfer Order IDCycle code (e.g.: PCH-GB-001-C-16)
Beneficiary NameBeneficiary's name
Remaining Balance (FCFA)Operator account balance

Orange Money format​

ColumnDescription
Transaction IDTransaction reference
Recipient PhoneBeneficiary number
AmountAmount
StatusStatus
Transaction DateDate/time

MTN format​

ColumnDescription
TransRefTransaction reference
MSISDNBeneficiary number
AmountAmount
TxnStatusStatus
DateTimeDate/time

Step 3: Execute matching​

After import, click Execute matching to run the matching algorithm.

Matching algorithm​

The system uses a multi-criteria algorithm to match transactions:

Matching priority​

  1. Reconciliation key (TELECEL only, score 100)

    • Format: 245{phone}-{beneficiarycode}
  2. Exact reference (score 100)

    • Direct match by external reference
  3. Fuzzy matching (score 60+)

    • Phone: +20 points
    • Exact amount (Β±1 FCFA): +40 points
    • Close amount (Β±1%): +20 points
    • Same day: +40 points
    • Β±3 days: +20 points

Match statuses​

StatusCodeDescriptionAction
Exact matchexactEverything matches perfectlyAccept
Fuzzy matchfuzzyScore >= 60, manual verificationVerify
Amount discrepancyamount_gapPayment found, different amountCorrect
Status discrepancystatus_gapPayment found, different statusCorrect
Not found internalnot_found_internalExternal transaction without paymentInvestigate
Not found externalnot_found_externalPayment without transactionInvestigate

Discrepancy resolution​

Available actions​

ActionCodeDescription
AcceptacceptedValidate the entry as is
CorrectcorrectedUpdate payment with external data
RejectrejectedMark as invalid/rejected

Individual resolution​

  1. Click on an entry with discrepancy
  2. Verify details (internal vs external)
  3. Add an explanatory comment
  4. Choose the resolution action

Batch resolution​

  1. Filter entries by status
  2. Select multiple entries
  3. Click Batch resolution
  4. Apply the action to all selections

TELECEL integration​

Automatic balance extraction​

The system automatically extracts the operator account balance from the last line of the TELECEL file:

TELECEL file imported
↓
Extract "Remaining Balance (FCFA)"
↓
Update OperatorAccount.currentBalance
↓
Create adjustment movement

Cycle code​

TELECEL includes the cycle identifier in the "Transfer Order ID" column (e.g.: PCH-GB-001-C-16), allowing automatic linking of transactions to the cycle.

Impact on operator accounts​

During resolution:

  • Accept + status "successful" β†’ Debit from operator account
  • Correct + status "successful" β†’ Debit from operator account + payment update
  • Reject β†’ No accounting impact

Session statistics​

IndicatorDescription
Lines importedTotal transactions from file
MatchesExact + Fuzzy
DiscrepanciesAmount + Status
Not foundInternal + External
Match rate(Exact + Fuzzy) / Total * 100
VarianceTotal amount discrepancy

Finalization​

Once all entries are resolved:

  1. Verify no entry is "Pending"
  2. Click Finalize session
  3. The session status changes to "Completed"
  4. The cycle can be updated if necessary

Export results​

Available formats:

FormatContent
CSVRaw data for analysis
ExcelDetailed report with formatting
PDFSummary report for archiving

Cycle constraints​

:::warning Important Reconciliation is not possible on cycles with completed status. Cycles with validated and in_progress status can be reconciled. :::

Best practices​

:::tip Recommendations

  1. Reconcile regularly: At the end of each cycle
  2. Verify discrepancies: Don't ignore different amounts
  3. Document rejections: Add explanatory comments
  4. Archive reports: Keep PDF exports
  5. Monitor not-found: May indicate data issues :::

Required permissions​

ActionPermission
View sessionsreconciliation.view
Create sessionreconciliation.create
Resolve entriesreconciliation.resolve
Finalizereconciliation.finalize

See also​