P0109 Purpose Code: Export realisation on account of exports to Nepal and Bhutan

Skydo makes compliance easy with free and automated FIRA and assisted eBRC closure.
Purpose code P0109 is used when an Indian exporter receives payment for goods exported to Nepal or Bhutan.
| Field | Details |
|---|---|
| Purpose Code | P0109 |
| Category | Exports (of Goods) |
| Used by | Indian exporters shipping goods to buyers in Nepal and Bhutan |
| Transaction direction | Inward |
| What it covers | Receiving export proceeds on goods exported from India to Nepal or Bhutan |
Revenue Leak Calculator

- ✓ Fees quietly eating margin?
- ✓ Current provider vs Skydo
- ✓ Reclaim what's yours
What is the P0109 purpose code?
Purpose code P0109 covers export proceeds on goods sent from India to Nepal or Bhutan. Every other code in the export family carries an explicit exclusion for these two countries, and this is where those excluded receipts land, which makes P0109 the one export code defined by where the goods went rather than by how the bill was handled. That means a single code covers what would otherwise split across negotiation, collection and advance receipts. Trade with both countries runs on settlement arrangements specific to those corridors, so the mechanics of how you actually get paid differ from an ordinary export and are worth confirming with your bank. Under RBI FEMA guidelines, this inward payment is classified under Exports (of Goods) and reported accordingly.
When to use P0109 purpose code?
Use P0109 when you receive payment for goods exported to Nepal or Bhutan, whatever the payment terms and whenever the money arrives relative to the shipment. It is the correct RBI receipt code for both corridors, and destination is the only test that matters. If your goods went to either country, none of the other export codes applies to the receipt, because each of them excludes these two by name.
When to use a different code:
- Use P0102 when the goods went to a country other than Nepal or Bhutan and the export bill was sent on collection
- Use P0103 when the goods went elsewhere and the money is an advance received before shipment
- Use the matching S-code when you are paying a foreign vendor rather than receiving money
Who typically uses P0109 purpose code
Indian exporters selling goods into Nepal and Bhutan, which given the land borders and the trade relationships involved covers a wide range of businesses, from manufacturers supplying industrial goods to traders moving consumer products across the border. It applies whether you export as a proprietorship, a partnership, or a registered company.
Examples of transactions covered under P0109 purpose code
- Payment received against a consignment of goods exported to a buyer in Nepal
- Export proceeds realised on a shipment despatched to a customer in Bhutan
- Money received from a Nepalese distributor against goods supplied from India
- Settlement received on an export order fulfilled for a buyer in either country
When NOT to use P0109 purpose code
- The goods were exported to any country other than Nepal or Bhutan (use P0101, P0102, P0103 or P0104 depending on how the bill was handled)
- The payment is for services rather than goods physically leaving India, which reports under the services codes rather than the export of goods family
- The money relates to a third country export merely transiting India rather than goods exported to Nepal or Bhutan (use P0104)
- You are paying a foreign vendor rather than receiving (use the matching S-code)
Documents required for P0109 purpose code
To receive a payment under P0109, keep the following documents ready so your bank or platform can verify the transaction and report it correctly under FEMA.
| Document | Purpose |
|---|---|
| Shipping bill or export declaration - Evidences that the goods left India and identifies the consignment the payment relates to | Commercial invoice - Sets out what was supplied and the amount billed to the buyer |
| Purpose declaration form - The inward remittance form where the purpose of funds is formally stated | KYC documents (if requested) - Used to verify your business during onboarding or compliance checks |
How is a P0109 Purpose Code declared?
Declaring the code is pretty straightforward. Here's how the payment gets tagged and reported.
- Ship the goods: Export the consignment to Nepal or Bhutan and complete the export documentation for the crossing.
- Receive the payment: The buyer settles through the arrangement that applies to that corridor.
- Declare the purpose: State the purpose of the inward remittance, on your bank's form or through your platform.
- Submit supporting documents: Provide the export declaration, invoice, and KYC so the bank can verify the transaction.
- Get your FIRA: Once processed, your FIRA is issued as proof and the payment is reported under FEMA.
- With a traditional bank you handle each step of your payment journey. But with a platform built for cross-border payments, you can preselect a default purpose code so that the payments land smooth.
Save 50% on every international transfer
- Receive from 150+ countries
- Get global accounts
- Zero forex margin
Common mistakes to avoid while using P0109 purpose code
A few common slips can hold up your payment or cause compliance issues. Here's what to watch for.
- Reaching for the general export codes: Using P0101 or P0102 for a Nepal or Bhutan shipment because that is how the bill was handled, when both codes exclude these two countries by name and destination overrides the handling.
- Splitting the corridor by payment terms: Assuming advances and post-shipment receipts need different codes here, when P0109 covers the whole corridor regardless of when the money arrives.
- Code and document mismatch: The code not matching what your export declaration and invoice describe, which flags the payment.
- Incomplete documents: Missing the export declaration, invoice, or KYC, so the bank holds funds until provided.
- Missing PAN or KYC: Incomplete verification stops the bank from releasing the payment.
- Using an inward code for an outward payment: Applying a receipt code to money you're sending out instead of the matching outward code.
How Skydo simplifies inward remittance under P0109 Purpose Code
With a bank, you declare the purpose code on your own for every single payment. With Skydo, you can preselect your code once and every payment gets tagged automatically.
- Preselect the code once: Set P0109 as your default and Skydo tags every incoming payment for you, so there's no form to fill on each one.
- No repeat declarations: A bank makes you restate the purpose for every remittance. Skydo does it in the background, the same way each time.
- Instant, free FIRA: Your remittance proof is generated and stored on every payment, ready for your CA, GST, and audits, with no request and no fee.
- Zero FX markup: You get the live mid-market rate with a flat, visible fee, instead of a markup hidden inside the bank's rate.
- Settled in 24 hours: Your payment reaches your Indian bank within a day, fully reported and compliant.
Get international bank accounts in 5 mins
Save as much as ₹10 lakh annually with Zero FX Margin
Real time payment tracking and instant FIRA
Get international bank accounts in 5 mins
Save as much as ₹10 lakh annually with Zero FX Margin
Real time payment tracking and instant FIRA
Frequently asked questions
P0109 is the RBI purpose code for export proceeds on goods sent from India to Nepal or Bhutan. It exists because every other export code excludes those two countries by name, and it classifies the payment as an inward goods export receipt under FEMA. A platform like Skydo lets you preselect it so every payment is tagged automatically.
About the author

Solution & Banking
With a decade of experience at Citi Bank, Prashanth leads payments partnerships and solutions at Skydo.
Verified by
Abhilove Sharda