B2B agent wallet
B2B agent wallet: every booking paid from a balance you can trace
A B2B agent wallet lets your sub-agents pay for flights, hotels and tours from a balance they fund in advance, or from a credit limit you grant. Every movement is a ledger line with a date, an amount and the booking or deposit behind it.
- Approved deposits
- Per-agent ledger
- Credit limits
- Refunds to balance
Agent statement
One agent, one month, every line accounted for
This is the shape of an agent statement in PHPTRAVELS: deposits in, bookings out, a refund back, and one ticket paid from the credit limit when the balance ran short.
| Date | Entry | Amount | Wallet balance | Credit used |
|---|---|---|---|---|
| 2026-09-01 | Top-upDeposit approved · bank transferTRX-20481 | +5,000.00 | 5,000.00 | 0.00 |
| 2026-09-03 | HoldFlight booked, awaiting payment · LHR to DXBINV-1042 | No movement | 5,000.00 | 0.00 |
| 2026-09-04 | DebitTicket issued, paid from walletINV-1042 | −1,240.00 | 3,760.00 | 0.00 |
| 2026-09-09 | DebitHotel booking paid from walletINV-1057 | −2,980.00 | 780.00 | 0.00 |
| 2026-09-12 | RefundRefund credited · cancelled tourINV-1031 | +410.00 | 1,190.00 | 0.00 |
| 2026-09-15 | Credit limitFlight paid from credit limitINV-1066 | −1,600.00 | 1,190.00 | 1,600.00 |
| 2026-09-28 | RepaidCredit repaid · bank transferTRX-20533 | +1,600.00 | 1,190.00 | 0.00 |
- Closing balance
- –
- Credit available
- –
Sample screen. Agent, amounts and references are illustrative.
What happens to one booking's money
A booking moves through four money states. Only two of them write a ledger line.
- HeldNo line
The booking exists, the invoice is unpaid. Nothing has left the wallet yet.
pending · unpaid
- DebitedDebit
The agent pays from the wallet or the credit limit and the booking is confirmed.
confirmed · paid
- RefundedCredit back
The booking is cancelled under its rules and your team credits the amount back.
refunded
Or, straight from Held
VoidedNo lineThe booking is cancelled before it is paid. The balance never moved.
cancelled
Prepaid balance or credit limit
Most agencies run both: a prepaid wallet for every agent, and a credit limit for the few they trust.
Prepaid wallet
- How it is funded
- The agent deposits money and you approve it
- Your exposure
- None beyond the deposits you approved
- What stops a booking
- A balance lower than the booking total
- When it is settled
- Before the booking, by the deposit
Credit limit
- How it is funded
- You grant an amount the agent can spend
- Your exposure
- Up to the limit you set for that agent
- What stops a booking
- Credit used reaching the limit
- When it is settled
- Within the payment window you set, in days
What it stores
What a B2B agent wallet records
A wallet is only as useful as the records behind it. In PHPTRAVELS the balance is not a number someone types into a box. It is the result of entries, each with its own amount, currency, description and timestamp, so a disputed figure can always be traced to the deposit, booking or adjustment that produced it.
The wallet sits inside the same admin as your agent accounts, B2B markups and bookings, and the same records feed your month-end work. If you also run separate books, the Travel agency accounting page explains how the figures leave the platform.
- Wallet balance
- Shown to the agent in the portal and to your staff in the admin
- Deposit
- Amount, currency, payment method, transaction reference and approval state
- Ledger line
- Credit or debit, amount, currency, description and timestamp
- Manual adjustment
- Add or remove funds with a note and a reference number
- Credit allowance
- Credit limit, payment days and the date credit was first used
- Where it lives
- Your own database, on your own server
Deposit approval
Nothing is credited until someone checks the bank
Agents submit deposits from the portal. Each one waits as pending until your finance team approves or rejects it. Try it on the sample queue.
- Skyline Travel LLCPendingApprovedRejectedBank transfer · TRX-20481–
- Al Noor ToursPendingApprovedRejectedCash deposit · CSH-7713–
- Blue Coast HolidaysPendingApprovedRejectedBank transfer · TRX-20455–
Agent balances after review
- Skyline Travel LLC1,190.006,190.00
- Al Noor Tours640.003,140.00
- Blue Coast Holidays85.001,285.00
Sample screen. Click approve or reject to see the balance change.
- Match the reference
- Every deposit carries the method and reference the agent entered, ready to check against your bank statement.
- Rejected stays on file
- A rejected deposit leaves the balance untouched and the record in place for your audit trail.
- Finance is told
- A new deposit triggers a notification, so the queue does not wait for someone to look.
Agent payment workflow
From the first deposit to month-end
Six steps, and each one leaves a record you can reconcile.
- 1
Deposit
The agent submits an amount, currency, method and reference from the portal.
- 2
Review
Finance matches the reference to the bank and approves or rejects.
- 3
Book
The agent books and chooses the wallet balance or credit at checkout.
- 4
Debit
The paid invoice writes a debit with the booking reference.
- 5
Refund
A cancelled, refundable booking is credited back with a note.
- 6
Reconcile
Each line traces to a deposit, a booking or a named adjustment.
The same checkout works across the B2B booking engine and the agent portal.
Credit limit
How much credit is left, and when it is due
Set a credit limit and a payment window per agent. The window starts on the day the agent first uses credit and resets when the credit is repaid.
Travel agent credit limit
The limit is the most an agent can owe you at once. A booking paid with credit reduces what is left; a repayment you record restores it. Debits can never take the allowance below zero.
Payment days and overdue agents
Payment days give each agent a window to settle what they used. Agents past the window are listed with their due date, days overdue and amount owed, so your team chases the right people first.
- Credit available
- 900
- Days left to repay
- 18
- Status
- Within windowDue todayOverdue
Limit reached: the agent pays from the wallet or tops up
Sample calculator. Change the values to test your own terms.
Who does what
Agent, finance team and platform
The wallet splits the work so no single person can move money without a trace.
| Action | Agent | Finance admin | Platform |
|---|---|---|---|
| Submit a deposit with method and reference | Yes | No | No |
| Approve or reject a deposit | No | Yes | No |
| Add or remove funds with a note | No | Yes | No |
| Set a credit limit and payment days | No | Yes | No |
| Pay a booking from wallet or credit | Yes | No | No |
| Write the ledger line for a paid invoice | No | No | Yes |
| Credit a refund back to the balance | No | Yes | No |
| See the balance and history | Yes | Yes | No |
Before you go live
Set your agent payment terms first
The software enforces the rules. Deciding them is your job. Work through this list before you invite your first sub-agents.
- Pick the currencies agents may deposit and book in
- Publish your bank details and accepted deposit methods
- Name who approves deposits, and a backup for holidays
- Decide which agents get credit, how much, and the payment days
- Write the refund rule: when a cancelled booking returns to the wallet
- Set B2B markups and commissions per product
- Agree how often agents receive a statement
It is a balance each travel agent holds on your platform. The agent funds it with deposits you approve, then pays for bookings from it. Every deposit, payment, refund and adjustment is a ledger line, so the balance always matches the transactions behind it.
Yes. You can set a credit limit and a number of payment days per agent. The agent can pay for bookings with credit up to that limit, and the payment window starts on the first day credit is used. When you record the repayment the allowance is restored and the window resets.
The agent submits a deposit from the portal with the amount, currency, payment method and transaction reference. It arrives in your admin as pending. Nothing is credited until your team approves it, and a rejected deposit leaves the balance unchanged.
When it is paid. A booking with an unpaid invoice does not touch the wallet. The debit is written when the agent pays from the balance or the credit limit, and a booking cancelled before payment leaves no ledger line at all.
When a refundable booking is cancelled, your team credits the amount back to the agent's wallet with a note and the booking reference. The refund appears as its own credit line, so the original debit and the refund both stay visible.
Agents past their payment window appear in an overdue list with the due date, days overdue and the amount owed. Your team decides the next step, such as a reminder, a lower limit or paying from the wallet only.
Deposits and ledger lines each carry their own currency, so agents in different markets can fund and spend in the currency that suits them. Multi-currency display is part of the Enterprise plan.
The wallet is included from the Agency plan, and the full B2B agent portal is part of Enterprise. Both are one-time licences with the source code, so your developers can change the approval flow or the ledger to match your own rules.
Keep exploring
More from the platform
- Payment gateway APIHow card payments, 3-D Secure, captures and refunds work over an API
- B2B travel portalAgent tiers, markup layers, credit limits and settlement
- B2B booking engineNet rates, two levels of markup and agent credit
- Travel agency accountingInvoices, payables and commissions tied to bookings
- Payment gateway integrationCheckout, 3D Secure, refunds and webhooks
- White-label B2B travel portalAn agent portal on your domain, with your logo, emails, vouchers and invoices
