Payment Ledger & Settlement in Egypt: How XPay Handles Local vs. Global Money

How XPay's balance ledger handles local EGP and international payments: available vs pending funds, FX, fees, and the EGP settlement path to your bank.

June 20, 202611 min read

TL;DR

Every payment you take on XPay moves money through one place: your balance ledger. Each charge, refund, fee, and payout is recorded as a Balance Transaction that breaks down into gross, fee, and net, carries its own currency and status (available or pending settlement), and links back to the charge, refund, or payout that produced it. For local EGP payments (cards, Fawry, Valu, mobile wallets, InstaPay), the entry is in EGP with no conversion, and settled funds pay out to your EGP bank account on your schedule. For global payments in another currency, the same entry carries an exchange rate and an FX fee, then converts into EGP and settles to your Egyptian bank account. The dashboard shows you both halves: Available to pay out versus Pending settlement on the Balance page, and All Activity as the running ledger where every entry, local or global, is traceable back to its source and forward to the payout that disbursed it. For business owners and finance teams, this is the single source of truth for reconciliation: what came in, what XPay took, what's still settling, and what hit your bank.

What a payment ledger actually is

A payment ledger is the running record of every movement of money in and out of your balance (each charge, refund, fee, payout, and adjustment) with its gross amount, the fee deducted, and the net that actually moved. On XPay, that record is built from Balance Transactions: one entry per money event, each one a row you can read, filter, and trace.

If you run the business or own the numbers, this is the object that matters most. Your product team thinks in payments and customers; your finance team thinks in what settled and when. The ledger is where those two views reconcile. And because XPay is built for businesses that sell both inside Egypt and across borders, the ledger has to speak two dialects at once, local EGP money and global multi-currency money, without ever losing the thread between a single customer's payment and the cash that eventually reaches your bank.

This guide walks the whole path: how one balance holds every movement, how local and global money differ inside it, the gap between available and pending funds, how settlement carries money to your bank, and how a finance team ties it all out.

One balance, every movement

Your balance is the running total of money XPay holds for you. Four things move it: a captured payment adds to it, a refund subtracts from it, a fee is deducted from it, and a payout removes settled funds and sends them to your bank. Every one of those is a Balance Transaction, and every Balance Transaction breaks the money into three numbers:

  • Gross: the full amount of the event (positive for money in, negative for money out).
  • Fee: what XPay deducted on that event.
  • Net: what actually hit your balance once the fee was applied.

Two more fields make the ledger reconcilable. Each entry has a status: AVAILABLE (settled and ready to pay out) or PENDING (still settling). It also carries a source, the ID of the charge, refund, or payout that produced it. That source link is what lets you click any line in your ledger and land on the exact payment behind it, or jump from a payment forward to the payout batch that disbursed its funds.

A note finance teams appreciate: XPay strips its internal processor-cost lines out of the fee breakdown before you ever see it. The feeDetails on an entry show only the fees that are actually yours to account for, not XPay's cost of goods. The number you reconcile against is the number you were charged.

You read this two ways in the dashboard. The Balance page shows the headline totals; the All Activity tab under Transactions is the full running ledger, one row per entry, filterable by type, currency, amount, date, and the date funds become available.

Local money: how EGP flows through the ledger

For a business selling inside Egypt, most of the ledger is local. A customer pays in EGP by domestic card, Fawry, Valu, a mobile wallet, or InstaPay, and the resulting Balance Transaction is denominated in EGP. There's no exchange rate, no FX fee. The entry is clean: gross EGP in, processing fee out, net EGP added to your available balance once it settles.

Amounts are stored in the smallest currency unit: piasters for EGP, the same way every modern payments system stores money to avoid rounding errors (the minor-unit convention is part of the ISO 4217 currency standard). So an entry showing 22604 is 226.04 EGP. Your dashboard formats it for you; the ledger stores the exact integer.

Local money is also the most direct path to your bank. Settled EGP sits in your available balance and pays out to your EGP settlement account on your schedule, and for certain payment methods configured for direct settlement, the funds route straight to your bank rather than through XPay's standard payout flow at all (more on that below).

Global money: FX, exchange rates, and EGP settlement

The moment a customer pays in a currency other than EGP, the ledger does more work. XPay accepts a broad set of currencies (EGP, USD, EUR, GBP, SAR, AED, QAR, KWD, JOD, OMR, BHD, LYD, AUD, CAD, and CNY, 15 in all), so an international card or a foreign-currency checkout is recorded with the currency the customer actually used.

Two extra fields appear on those entries. The exchange rate captures the conversion applied, and a separate FX fee records the cost of that conversion. On the payment itself, the Payment Breakdown spells it out in three lines: Customer paid (their currency), Exchange rate, and Settlement amount (EGP), so you can show a customer exactly what they were charged and still book the settled figure your bank receives.

Where that money lands is simple: XPay settles to your bank in EGP. No matter which of the 15 currencies your customer paid in, the balance converts to EGP at a variable FX rate based on the official bank rate and pays out to your Egyptian bank account. There's no foreign-currency balance to manage and no separate account to maintain per currency: you accept the world's currencies and bank in EGP. Bank settlement methods carry an IBAN and SWIFT code, the rails that bring cross-border money home.

This is the heart of "local vs. global": the same ledger holds both, but a global entry carries a currency, an exchange rate, and an FX fee that a local entry never needs. For an Egyptian exporter, a SaaS company billing abroad, or freelancers paid by overseas clients, that distinction is the difference between a clean set of books and a reconciliation headache.

Available vs. pending: the timing every finance team needs

Not all money in your balance is spendable yet. The Balance page splits it into two numbers that matter for cash flow:

FieldWhat it is
Available to pay out / Upcoming payoutFunds that have settled and are ready to be sent to your bank. Labeled "Available to pay out" on a manual schedule, "Upcoming payout" on an automatic one.
Pending settlementFunds from recent payments that haven't settled yet, with a count of how many transactions are still in flight.

Every entry carries an Available on date, the day its funds clear for payout. For an instant entry like a fee, that's the same as the created date; for a payment that settles on a delay, it's later. Finance teams can filter the All Activity ledger by "Available on" to project exactly when cash becomes withdrawable, separate from when the payment was taken. This is the difference between revenue recognized and cash available, and the ledger tracks both.

From balance to bank: payouts and settlement

A payout is XPay sending your settled balance to your bank. Settled funds are gathered into a payout batch, and each batch's detail page shows the full math:

Charges          (sum of payments in the batch)
Refunds          (deducted)
Charges fees      (XPay processing fees on those charges)
Subtotal         (charges - refunds - fees)
Payout fees       (when applicable)
Net payout       (what lands in your bank)

That breakdown, and the per-charge detail beneath it, is how you reconcile a bank deposit back to the individual payments that composed it. Each payout moves through a clear set of states: Open → Processing → In Transit → Paid, with Failed or Canceled if something goes wrong (a failed batch carries a bank failure code). The settlement type is marked Standard or External.

Your payout schedule is set per account by the XPay operations team: automatic on fixed days, or manual, where a "Pay out funds" button lets you wire the available balance whenever you want. The schedule isn't editable from the dashboard; changing it goes through support. You can read your current schedule and next settlement date on the Balance page.

Direct settlement (External Balance)

Some accounts are configured for direct settlement, where certain payment methods route funds straight to your bank instead of through XPay's standard payout. When that's on, a second card appears on the Balance page, External Balance, showing Available (Settled) and Pending funds that are paid to you automatically, no XPay payout required. For businesses that mix method types, this means part of your money may arrive on the standard payout rail and part directly, and the ledger keeps both visible in one place.

The exceptional entries: reserves, holds, and adjustments

Most days your ledger is just charges, refunds, fees, and payouts. A few entry types show up rarely and are worth knowing before they appear:

  • Reserve hold / Reserve release. A portion of funds temporarily held back from your available balance, typically during a risk review or as a rolling reserve, and later released back. These appear as their own ledger entries so the movement is never invisible.
  • Adjustment. A manual correction by XPay, used sparingly for chargeback handling and dispute outcomes.
  • The Held badge. On an individual payment, a Held badge means the captured funds are temporarily frozen for a risk review, and the refund button is hidden until it resolves.

XPay's team reaches out before reserves or adjustments are applied, so these won't surprise your reconciliation, but because each one is a discrete ledger entry, you can always see exactly what moved and why.

Reconciliation: tying the ledger to your books

For a CTO or finance lead, the payoff of this model is that reconciliation is mechanical rather than detective work. Three properties make it work:

  • Every entry links to its source. A charge entry points to the payment; a payout entry points to the batch. Click through from any line to the originating object, or from a settled payment to its Connected Payout.
  • Gross, fee, and net are always separated. You never have to back out fees by hand: the entry carries all three, so booking revenue, fees, and net cash is a direct read.
  • Currency and exchange rate travel with the entry. A foreign-currency payment carries the rate that was applied, so multi-currency books reconcile without a separate FX worksheet.

The practical workflow: use All Activity as your system of record, filter by date and currency for the period you're closing, and match the net of each entry to your accounting system. When a bank deposit arrives, open the payout batch and reconcile its Summary against the deposit, then drill into the batch's transactions to allocate revenue to the right orders. Refund timing is the one place to stay sharp: a refund returns the customer's money but you generally keep the original processing fee, so refund-heavy periods show a wider gross-to-net gap than your headline rate implies.

What this means for your stack

The design decision underneath all of this is that XPay runs one ledger for local and global money, not two systems bolted together. An EGP card payment, a Fawry voucher, and a USD international card all become the same kind of entry (gross, fee, net, currency, status, source) and all settle through the same balance into your EGP bank account. For an Egyptian business that starts local and grows across borders, that means the books don't have to be re-architected the day the first foreign payment arrives. The ledger already speaks both languages; the global entries simply carry a little more detail.

Sources and further reading

XPay documentation:

Related XPay guides:

External references:

Start accepting payments

Create your XPay account and accept cards and local payment methods, with settlement to your bank in EGP.