Exporters rarely have one exchange-rate problem. They have four: the rate on the day you raise the invoice, the rate on the day an advance lands, the rate at month-end, and the rate on the day the balance hits your bank. For a mid-market Indian B2B exporter billing in USD, EUR, and GBP, those four rates usually sit in different files—Tally, a bank statement, a GST working, and a WhatsApp message from the client. The finance lead becomes the reconciliation engine. That works until volume picks up or an auditor asks for the forex gain/loss split.
The four dates that decide your export revenue
Under Ind AS 21 (and AS 11 for smaller companies), your functional currency is INR. Every foreign-currency transaction gets recorded at the spot rate on the transaction date. But transaction date is not always the invoice date.
- Invoice date: the spot rate for the portion not covered by an advance.
- Advance date: for the portion covered by an advance, use the rate on the date the money was received. An advance received is not retranslated later.
- Month-end: all foreign-currency monetary items—receivables, payables, bank balances, foreign loans—are retranslated at the closing rate. The difference is an unrealized gain or loss.
- Settlement date: when the client pays, the bank credits INR at its rate. The gap between the previous book rate and the settlement rate is a realized gain or loss.
For GST, the invoice value in INR is usually converted using the RBI reference rate on the date of supply. That INR figure can differ from your books if part of the invoice was covered by an advance. Keep a one-line reconciliation; it is not a mistake.
A worked example: one USD invoice, four rates
Take a mid-market Indian engineering services exporter. INR is the functional currency. It raises a USD invoice to a US client.
- Jan 20: receives a $30,000 advance. Bank rate: 82.50. Record bank ₹24,75,000 and an advance liability.
- Feb 1: raises invoice INV-1042 for $100,000. Spot rate: 83.00. For the $30,000 already advanced, revenue is ₹24,75,000. For the remaining $70,000, revenue is $70,000 × 83.00 = ₹58,10,000. Total revenue: ₹82,85,000. Receivable: $70,000 at ₹58,10,000.
- Feb 28: closing rate: 83.60. Retranslate the receivable: $70,000 × 83.60 = ₹58,52,000. Unrealized gain: ₹42,000. Post it to the P&L.
- Mar 15: client pays the $70,000 balance. Bank rate: 83.40. Bank receives ₹58,38,000. Reverse the receivable at ₹58,52,000. Realized loss: ₹14,000.
Net forex gain on the invoice: ₹28,000 (₹58,38,000 received minus ₹58,10,000 originally booked). The split matters: ₹42,000 unrealized gain in February, ₹14,000 realized loss in March. If you only look at the bank credit, you miss the month-end revaluation—and your monthly P&L is wrong.
What gets revalued at month-end
Not everything foreign-currency gets marked up or down. The distinction is monetary versus non-monetary.
- Monetary items: receivables, payables, foreign bank balances, foreign-currency loans. Retranslate at the closing rate. The difference goes to exchange gain/loss.
- Non-monetary items: advances paid or received, prepaid expenses, fixed assets, inventory. Keep them at the historical rate. Do not retranslate.
- Use one consistent closing rate source. Many companies use the RBI reference rate or the FBIL reference rate. If your bank publishes a card rate, use it consistently and document it.
- In Tally Prime, enable multi-currency, maintain rates, and use a dedicated Forex Gain/Loss ledger. In Zoho Books or QuickBooks, run the unrealized gain/loss report before you close the month.
- Do not reverse the revaluation just because the payment is coming next month. Carry the monetary item forward at the closing rate and settle it against the actual bank rate.
The compliance glue: GST, FIRC, eBRC, Softex
Multi-currency accounting does not stop at the P&L. Export documentation has its own INR conversions and deadlines.
- Export under LUT so you do not pay IGST. Report export invoices in GSTR-1 Table 6A, with shipping bill details for goods.
- Get an FIRC or eBRC from your AD bank. Match each FIRC to the invoice it settles. For software and services under STPI, file Softex where applicable.
- FEMA realization timelines apply. For goods, proceeds are typically to be realized within nine months from the date of export; for services, GST zero-rating generally requires receipt in convertible foreign exchange within one year from the invoice date. Rules change—confirm current limits with your CA.
- On the payables side, foreign vendor payments may attract TDS under Section 195 and RCM on imported services. Track those in the same currency register.
Build a simple forex register: invoice number, client, currency, invoice amount, invoice date, RBI rate, advance rate if any, FIRC reference, settlement date, bank rate, realized gain/loss. It is the first thing an auditor asks for.
Where to start
Start with one month. Pick your largest foreign-currency invoice, trace it from advance to FIRC, and write down every rate you used. If the realized and unrealized split is not obvious, fix that before you automate. A multi-currency close is mostly discipline: one rate source, one forex register, and a month-end revaluation report. Maysan Labs builds finance dashboards and internal tools for Indian exporters, and we are happy to share a simple forex register template if you are still doing this in Excel.
Buying software or a website?
Twelve questions to ask any vendor before you sign: price, your data, fit for an Indian business and support.
Get the free checklistWritten by Maysan Insights at Maysan Labs, a software studio in Gurgaon, India. Follow us on LinkedIn