Cross-Border Payment Reconciliation Challenges
The engineering challenges of cross-border recon. Handling Lifting Fees (BEN/SHA/OUR), principal deduction logic, and "Grossing Up" entries.
Cross-border payments are the "Final Boss" of reconciliation. Unlike domestic ACH, where $100 sent is $100 received, international wires traverse multiple banks, each potentially taking a "Lifting Fee" from the principal. A reconciliation engine looking for an exact amount match will fail 100% of the time. The system must implement "Gross Up" logic to account for the missing money.
The Fee Types: OUR, BEN, SHA
The SWIFT instruction defines who pays the fees:
OUR: Sender pays all fees. Beneficiary receives full amount. (Easier recon).
BEN: Beneficiary pays all fees. Intermediaries deduct from principal.
SHA: Shared. Sender pays sending bank; Beneficiary pays receiving bank.
The Logic: If the system expects a $5,000 deposit but receives $4,975, the matching algorithm must check the fee flag. If SHA or BEN, it should categorize the $25 variance as Lifting_Fees (Expense) and match the transaction, rather than breaking it.
The "Gross Up" Accounting Pattern
To reconcile a net receipt against a gross invoice, the ledger must "Gross Up" the entry.
Bank Feed: Credit $4,975.
Invoice: Open Receivable $5,000.
Automated Journal:
Debit Cash: $4,975
Debit Bank Fee Expense: $25
Credit Accounts Receivable: $5,000
This clears the invoice fully despite the cash discrepancy.
Frequently Asked Questions
Common questions about this topic
QHow do you know the exact fee amount?
Often, you don't. The bank statement just shows the net amount. The system infers the fee (Expected - Actual = Fee).
QCan you predict lifting fees?
Only with historical data or APIs like SWIFT gpi pre-validation. Otherwise, it is a reactive calculation post-settlement.
Get technical insights weekly
Join 4,000+ fintech engineers receiving our best operational patterns.