Multi-Currency Accounting for Pakistani IT Companies
If you invoice clients in USD and pay your team in PKR, you're running a multi-currency business — whether you've called it that or not. Here's how to keep clean books when the rupee moves every week.
Multi-Currency Accounting for Pakistani IT Companies
If your company invoices clients in USD and pays its team in PKR, you're running a multi-currency business — whether you've ever used those words or not.
Most Pakistani IT companies handle this by maintaining two parallel mental models: "this much in dollars" and "this much in rupees," with a fuzzy conversion in their head. That works until tax season, when FBR wants numbers in PKR and you have no idea what exchange rate to apply to a payment received in February.
This post is the practical version of how to keep clean multi-currency books for a Pakistani SME — without an accounting degree.
The two real problems
Multi-currency accounting sounds technical. The actual problems are simple:
- What was 1 USD worth on the day my client paid me? (so I can record income correctly in PKR)
- How do I make my P&L work when income is in USD and expenses are in PKR? (so I can see real profit, not noise from exchange rate movement)
Everything else is plumbing.
Why "just convert it" isn't enough
Most teams convert USD to PKR using whatever rate Google shows them the day they want to look at a report. That's fine for a rough sense — it's terrible for audit.
The rupee has moved by 20–30% in a single year in recent memory. A USD 10,000 invoice booked at 285 PKR/USD vs 295 PKR/USD is a PKR 100,000 difference in your books. At year-end, FBR doesn't care which one you "meant."
You need:
- A dated exchange rate that applies for each transaction
- A default currency for reporting (almost always PKR for FBR)
- A consistent method — not "whatever Google said today"
The monthly exchange rate method
The cleanest approach for SMEs: set one exchange rate per month, applied to every transaction in that month.
This is the method Asaan Hisaab uses. On the 1st of each month, you set the PKR/USD rate (the SBP interbank rate, or your bank's TT rate — pick one and stick with it). Every USD transaction recorded in that month converts at that rate.
Why this works:
- It's auditable. One rate per month, traceable to a public source.
- It's simple. No per-transaction lookups.
- It matches reality. The rupee doesn't move much intra-month for normal SME purposes.
- It's FBR-defensible. SBP publishes monthly rates; pegging to those is the cleanest method.
Setting up multi-currency in Asaan Hisaab
Walk through what this looks like in practice:
1. Set your default currency
In company settings, set Default currency = PKR. This is what all reports and totals roll up to.
2. Create accounts in their native currency
For each account, set the currency it actually holds:
- UBL Current (PKR) — your operating account
- Payoneer (USD) — where client payments land
- Wise USD balance — if you hold dollars
- Petty Cash (PKR) — office cash
Don't try to convert at the account level. Each account stays in its native currency.
3. Set monthly exchange rates
On the Settings → Exchange Rates page, add the PKR ↔ USD rate for the current month. SBP's interbank rate is fine; your bank's TT buying rate is also fine — pick one source and stay with it.
4. Log income in the source currency
When a USD invoice gets paid into Payoneer, log it as a deposit in USD. Don't convert in your head. The system stores the USD amount on the USD account, then uses the monthly rate to roll up your PKR totals.
5. Log expenses in the spending account's currency
When you pay AWS or buy a SaaS subscription from your Payoneer account, log it as a USD expense. When you pay salaries from UBL, log them as PKR expenses.
Asaan Hisaab handles the conversion in reports — you don't have to.
What about Payoneer/Wise withdrawals to PKR?
This is the question every IT company eventually hits. You receive USD into Payoneer, then withdraw it to your UBL PKR account. What happens accounting-wise?
The answer: it's a transfer, not income.
- USD income was already recognized when Payoneer received it from the client
- The PKR amount that lands in UBL is a transfer from your USD account to your PKR account, at whatever rate Payoneer used
Asaan Hisaab handles cross-currency transfers natively. You enter the USD amount sent, the system applies the monthly rate to show the PKR equivalent, and you can override with the actual landed PKR amount if Payoneer's rate differed.
The exchange gain or loss between the recognized income and the actual conversion shows up in your reports as a separate line, not buried in income.
Reporting: what FBR wants
For FBR, you ultimately report in PKR. The clean format:
- Income. USD invoices booked at the monthly SBP rate, plus PKR receipts, totaled in PKR.
- Expenses. PKR expenses direct, USD expenses converted at the monthly rate.
- Bank accounts. End-of-period balance in each account's native currency, plus PKR equivalent at the closing rate.
- Exchange differences. Documented separately so they don't distort operating numbers.
Asaan Hisaab generates this format automatically. You don't manually convert anything.
Common mistakes
Things we see Pakistani IT teams do that hurt them later:
- Converting at the wrong rate. Using "today's" rate to convert a 6-month-old transaction. Use the rate from the month the transaction happened.
- Treating Payoneer withdrawals as new income. Income was recognized when Payoneer received it. The withdrawal is a transfer.
- No documentation of the rate source. "We used 285" is not an answer. "SBP interbank rate as of March 1, 2026 was 285" is.
- Adjusting historical rates. Once a month is closed, the rate is set. Don't go back and change it because today's rate is different.
Try Asaan Hisaab
Multi-currency support is built into Asaan Hisaab from day one. Monthly exchange rates, native-currency accounts, automatic PKR rollup for reports, cross-currency transfers — all included on the free plan.
No credit card. No upgrade required to use multi-currency.
