Skip to main content

Reconciliation

Quick Reference

WhatSettlement reconciliation
WhyMatch every charge to its settlement and catch discrepancies before they become problems
Reading Time12 min
DifficultyIntermediate
PrerequisitesSettlement overview → List Charges API

What is reconciliation

Reconciliation is the process of matching each charge in your system to its corresponding settlement record. This ensures that every payment you received was settled correctly, fees were applied as expected, and no funds are missing.


Reconciliation workflow

1

Fetch settled charges

Query the List Charges API with settlement status filters to get all charges settled in a given period.

2

Match to bank deposits

Compare settlement records against your bank statement. Each settlement batch should correspond to a deposit.

3

Verify fee breakdown

Confirm that MDR, interchange, and processing fees match your contract terms.

4

Flag discrepancies

Identify any charges that are paid but not yet settled, or settled amounts that don't match expected net values.


Query settled charges

GET/api/v1/bank/wallet/charge/Bearer TokenList charges with settlement filters

Use the List Charges endpoint with query parameters to filter by settlement status and date range:

curl -G https://core-manager.a55.tech/api/v1/bank/wallet/charge/ \
-H "Authorization: Bearer $ACCESS_TOKEN" \
--data-urlencode "status=paid" \
--data-urlencode "settled=true" \
--data-urlencode "settled_after=2026-01-01T00:00:00Z" \
--data-urlencode "settled_before=2026-01-31T23:59:59Z" \
--data-urlencode "page_size=100"

Settlement report fields

Each charge in the settlement report includes:

FieldDescription
charge_uuidUnique identifier for the charge
typePayment method (credit_card, pix, boleto, etc.)
statusCharge status (paid, refunded, etc.)
gross_amountOriginal charge amount
mdr_amountMDR fee deducted
interchange_amountInterchange fee (card payments only)
processing_feePer-transaction processing fee
fx_feeCurrency conversion fee (cross-border only)
net_amountAmount deposited to your account
settled_atTimestamp when settlement was completed
settlement_batch_idGroups charges settled in the same bank transfer
chargeback_amountAmount deducted due to chargebacks (if any)

Dispute handling

Chargeback deductions

When a cardholder disputes a charge and the dispute is lost, the chargeback amount is deducted from your next settlement batch:

Deduction componentDescription
Original charge amountFull transaction amount returned to cardholder
Chargeback feeAdministrative fee per chargeback (contract-dependent)
Reversal of interchangeOriginal interchange refunded to the issuer
High chargeback impact

High chargeback rates (above 1% of transactions) may trigger additional fees, holds, or account review. Implement fraud prevention measures to minimize disputes.


Best practices for automated reconciliation

Daily reconciliation

Run reconciliation daily to catch issues early:

from datetime import date, timedelta

yesterday = date.today() - timedelta(days=1)

settled = fetch_settled_charges(date=yesterday)
deposits = fetch_bank_deposits(date=yesterday)

settled_total = sum(c["net_amount"] for c in settled)
deposit_total = sum(d["amount"] for d in deposits)

if abs(settled_total - deposit_total) > 0.01:
alert_finance_team(settled_total, deposit_total, yesterday)

Reconciliation checklist

CheckWhat to verify
CompletenessEvery paid charge has a corresponding settlement record
AccuracyNet amount = gross - MDR - interchange - processing - FX
TimelinessCharges are settled within the expected window for their method
ChargebacksAll chargeback deductions match dispute records
Bank matchTotal net settlements match bank deposits for the period

Idempotency

Always reconcile using charge_uuid and settlement_batch_id as unique keys. If you re-process a settlement report, these IDs prevent duplicate entries in your accounting system.

Multi-provider reconciliation

A55 aggregates settlement data from 29+ acquirers, each with different reporting formats and timelines. The API normalizes all of this into a consistent schema. However, some providers settle weekly rather than daily — if you see a gap in daily settlements for a specific payment method, check the provider's settlement cycle in your contract.