P0012 Purpose Code: Long & medium term loans with original maturity above one year from Non-Residents to India

Skydo makes compliance easy with free and automated FIRA and assisted eBRC closure.
Purpose code P0012 is used when an Indian borrower receives money from an overseas lender under a loan whose original maturity is more than one year.
| Field | Details |
|---|---|
| Purpose Code | P0012 |
| Category | Capital Account |
| Used by | Indian companies and eligible entities borrowing from overseas lenders on maturities above one year |
| Transaction direction | Inward |
| What it covers | Receiving the principal of a long or medium term loan advanced from abroad to a borrower in India |
Revenue Leak Calculator

- ✓ Fees quietly eating margin?
- ✓ Current provider vs Skydo
- ✓ Reclaim what's yours
What is the P0012 purpose code?
Purpose code P0012 is used when money enters India as the drawdown of a loan advanced by a non-resident lender, where the loan's original maturity is above one year. This is the borrowing side of the capital account, commonly referred to as external commercial borrowing, and it covers the principal coming in rather than anything the borrower later pays back. Original maturity is the dividing line and it is measured at the outset, not by how long the loan actually runs, so a loan contracted for a year or less uses P0013 even if it is later extended. Under RBI FEMA guidelines, this inward payment is classified under Capital Account and reported accordingly.
When to use P0012 purpose code?
Use P0012 when your Indian entity draws down money from an overseas lender on a loan contracted for more than one year. It is the correct RBI receipt code for the inflow itself, whether the loan arrives as a single drawdown or in tranches. Borrowing from abroad runs through the external commercial borrowing framework, so eligibility, the lender relationship, and registration with the RBI before drawdown all need settling before the money moves, and the code does not substitute for any of that.
When to use a different code:
- Use P0013 when the loan's original maturity is one year or less
- Use P0007 when the payment is foreign direct investment in India in debt securities
- Use the matching S-code when you are sending money abroad rather than receiving money
Who typically uses P0012 purpose code
Indian companies and other eligible entities borrowing from overseas lenders, including subsidiaries drawing loans from a foreign parent, businesses raising term debt from an offshore bank, and entities funding capital expenditure through external borrowing. The borrower is the party the code applies to, since it is declared on the money arriving in India.
Examples of transactions covered under P0012 purpose code
- First drawdown received by an Indian company on a term loan from an overseas bank
- Loan funds advanced by a foreign parent company to its Indian subsidiary on multi-year terms
- A tranche released to an Indian borrower under an existing external borrowing facility
- Money received against a loan contracted from an offshore lender for capital expenditure
When NOT to use P0012 purpose code
- The loan's original maturity is one year or less (use P0013)
- The overseas party is subscribing to debt securities as a direct investor rather than lending (use P0007)
- The money is repayment coming back on a loan you extended to a non-resident (use P0011)
- You are repaying the loan or sending money abroad rather than receiving (use the matching S-code)
Documents required for P0012 purpose code
To receive a payment under P0012, keep the following documents ready so your bank can verify the transaction and report it correctly under FEMA.
| Document | Purpose |
|---|---|
| Loan agreement with the overseas lender - Sets out the principal, the maturity, and the drawdown schedule | Registration reference for the borrowing - Confirms the loan was registered with the RBI before funds were drawn |
| Purpose declaration form - The inward remittance form where the purpose of funds is formally stated | KYC documents (if requested) - Used to verify your entity during onboarding or compliance checks |
How is a P0012 Purpose Code declared?
Declaring the code is pretty straightforward. Here's how the payment gets tagged and reported.
- Register the borrowing: Complete the RBI registration for the loan before any funds are drawn.
- Receive the drawdown: The overseas lender remits the money into your Indian bank account.
- Declare the purpose: State the purpose of the inward remittance on your bank's form.
- Submit supporting documents: Provide the loan agreement, the registration reference, 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.
Save 50% on every international transfer
- Receive from 150+ countries
- Get global accounts
- Zero forex margin
Common mistakes to avoid while using P0012 purpose code
A few common slips can hold up your payment or cause compliance issues. Here's what to watch for.
- Getting the maturity split wrong: Using P0012 for a loan contracted at one year or less, which belongs under P0013 regardless of whether it is later rolled over.
- Drawing funds before registration: Treating the loan agreement as sufficient, when the borrowing has to be registered with the RBI before drawdown and reported periodically afterwards.
- Code and document mismatch: The code not matching the maturity and terms your loan agreement describes, which flags the payment.
- Incomplete documents: Missing the loan agreement, registration reference, 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 repayments or money you're sending out instead of the matching outward code.
How Skydo helps you receive international business payments
P0012 covers capital account transactions, which Skydo does not process. If you also invoice foreign clients for goods or services, here is how Skydo helps you get paid.
- Complete onboarding: Share PAN, Aadhaar, and Indian bank details. Setup is fully online.
- Get virtual account details: Receive account details in USD, GBP, EUR and other currencies your clients pay in.
- Your client pays like a local: They send a domestic transfer in their own country, no SWIFT and no wire fee on their end.
- FIRA is generated automatically: Free e-FIRA on every payment, stored in your dashboard for GST and audits.
- INR settles within 24 hours: Mid-market rate with a flat, visible fee, no FX markup.
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
P0012 is the RBI purpose code for money coming into India as a loan from a non-resident lender with an original maturity above one year. It applies to the drawdown of external commercial borrowing by an Indian entity, and classifies the payment as a capital account receipt under FEMA.
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