Credit card reconciliation: record the repayment once
The bank feed shows 2,000 paid to the card issuer, and the quick fix is to code it to expenses. The purchases behind it were already recorded from the card feed, so the business has now counted 2,000 of spending twice and left the card account showing money it no longer owes. The card account is a liability. Reconcile what the business owes the issuer separately from what it bought.

Roll the liability forward
This example is hypothetical, for one entity keeping accrual books in generic currency units. All purchases are ordinary expenses used in the period, and the refund reverses part of them. There are no recoverable taxes, assets, personal items, interest, foreign exchange or issuer errors, and the fee is a current expense. All listed movements, including the repayment, have posted to both the ledger and the issuer by the cutoff, with no timing differences.
The closing 1,250 should agree with the issuer's statement at the same cutoff date.
| Movement | Amount | Balance owed to issuer |
|---|---|---|
| Opening balance | 1,000 | |
| Purchases | +2,400 | 3,400 |
| Refund | -200 | 3,200 |
| Card fee | +50 | 3,250 |
| Repayment from bank | -2,000 | 1,250 |
Four entries, one expense figure
Expense for the period is 2,400 - 200 + 50 = 2,250. The repayment touches only the liability and the bank. If the 2,000 is coded to expenses instead, expenses are overstated by 2,000 and the card account still shows 3,250 owed, which no statement will support.
| Event | Debit | Credit |
|---|---|---|
| Purchases | Expenses 2,400 | Card liability 2,400 |
| Refund | Card liability 200 | Expenses 200 |
| Fee | Fee expense 50 | Card liability 50 |
| Repayment | Card liability 2,000 | Bank 2,000 |
Classify each charge on its own evidence
A card charge tells you how something was paid for, not what it was. Equipment may be an asset, an annual subscription a prepayment and a stock purchase inventory. Personal spending has to be identified and kept out of business costs, and recoverable taxes need separating. Our recommendation is to match each statement line to a receipt or invoice before coding it, link each refund to the charge it reverses, and post fees and interest on their own lines. None of this decides whether a cost is tax deductible.
Pair the repayment across both feeds
When both the bank account and the card are connected to the ledger, one repayment appears twice: as money leaving the bank and as a payment received on the card. Intuit's current help for US QuickBooks Online records card pay-downs separately from purchases and pairs the bank side and the card side of the same payment, so it is posted once. Other products and editions work differently. Follow your own software's documented method rather than accepting two new entries.
Sources and context, checked :
Statement dates and disputed charges
A card statement often closes on a day other than month end. Either reconcile both at the same cutoff, or list the transactions between the statement date and month end as a bridge. Do not adjust the ledger just to force the balances to agree.
The US General Services Administration's guidance for federal purchase cardholders has them compare each monthly statement with their own records, checking charges, credits, disputes and refunds. That routine suits a private business too, but the federal deadlines, certification duties and dispute rules attached to it do not apply. A disputed charge does not leave the liability just because it is disputed. Keep the evidence, decide the accounting treatment, and track any later credit from the issuer rather than writing the charge off without support.
Sources and context, checked :
Approving one card balance
For sign-off, put four things together: the issuer's statement, the liability rollforward from opening to closing balance, the receipts behind each charge, and a list of unresolved items such as missing receipts or open disputes, each with an owner and a date. A reviewer should be able to trace the closing figure from the statement to the ledger without recalculating anything.
