If you are a freelancer in India getting paid by an overseas client, the Reserve Bank of India (RBI) needs a purpose code on every payment that lands in your account. It is a short alphanumeric tag that tells your bank why the money came in.
Pick the right one and your paperwork lines up cleanly for tax and GST. Pick the wrong one and you can lose your export status and your GST refund. That single choice at setup is why so many global freelancer payments run into trouble later.
For most freelancers, the answer sits in a handful of codes:
- P0802: software implementation and consultancy, for developers, web and app builders, and IT consultants.
- P0807: off-site software exports, for fully remote software work delivered online.
- P1007: advertising, market research and public opinion polling, for digital marketers, ad and SEO specialists.
- P0805: news agency services, for journalists and content roles tied to news media.
- P1006: business and management consultancy, for strategy, operations and virtual assistant support.
- P0803: data processing and database services, for data analysts and back-office VAs.
Two codes to never accept by default are P1301 (family maintenance) and P1499 (other income). Both mark your earnings as personal money, not an export of services. That single misclassification is what triggers most of the tax trouble freelancers run into.
What a purpose code is, and why yours matters
A purpose code is an RBI classification that your bank attaches to a foreign payment before it reports the transaction under FEMA, the Foreign Exchange Management Act, 1999. Every Authorised Dealer (AD) bank has to file it.
The codes for money coming in start with the letter P. They run across the RBI’s FETERS reporting list, from software exports to salaries to gifts, and are published in full in the RBI purpose codes reference.
For a salaried employee this never comes up, because the employer handles it. For a freelancer it lands on you, usually the moment a payment platform or bank asks "what is this payment for?" during onboarding or on the first inward transfer.
The code is not just a banking formality. It flows into your Foreign Inward Remittance Advice, decides whether your income reads as a service export, and shapes how a tax officer sees your ledger later. Getting it right once, at setup, saves you from unwinding it at filing time.
Purpose code for freelancers, by the work you do
There is no single "freelancer" code. RBI classifies by the nature of the service, so the right pick depends on what you actually deliver. The table below maps common freelance trades to the code that fits, using the RBI descriptions from Xflow’s per-code reference.
| Your work | Purpose code | RBI category |
|---|---|---|
| Software, web or app development; IT consulting | P0802 | Software implementation and consultancy |
| Fully remote software delivered online | P0807 | Off-site software exports |
| Data analysis, data entry, database work | P0803 | Database and data processing services |
| Digital marketing, paid ads, SEO, market research | P1007 | Advertising, trade fair and market research |
| Business, strategy or operations consulting; virtual assistants | P1006 | Business and management consultancy |
| Journalism and news-media writing | P0805 | News agency services |
| Legal drafting and advisory | P1004 | Legal services |
| Accounting, audit and bookkeeping | P1005 | Accounting, auditing, bookkeeping |
| Architecture and engineering | P1009 | Architectural and engineering services |
| Research and development work | P1008 | Research and development services |
| Design, creative or other work with no exact match | P1019 | Other services not included elsewhere |
| A remote role on a foreign company's payroll | P1401 | Compensation of employees |
A few real-world edges are worth calling out, because they are where freelancers get stuck.
- Software developers: P0802 is the standard pick for development and IT consulting, which is also the code most chartered accountants point remote developers towards. Use P0807 only when the software is delivered fully off-site and online.
- Content writers who are not doing journalism: P0805 is specifically news agency services. Blog, copy and marketing writing sits more naturally under P1007 if it feeds advertising, or P1006 for consulting-style content. Match the code to what the invoice describes.
- Graphic and UI designers: there is no dedicated design code. Logo, brand and marketing design usually fits P1007, and anything outside that falls to P1019 (other services). Confirm the pick with your bank or platform rather than guessing.
- Newer gig roles like AI evaluation and data annotation: these have no code of their own yet. Data-heavy work fits P0803, while broader evaluation or review work sits under P1019.
- Digital-product sellers on Etsy, Gumroad or your own site: selling templates, presets or e-books is not a service in the usual sense. These are commonly reported under P0806 (other information services) or P1019, so check which one your platform applies before your first payout.
The costly mistake: P1301 and P1499
The single biggest trap is letting a payment get tagged as personal income. Two codes do this, and both are easy to fall into.
P1301 is family maintenance and savings. It exists for an NRI sending money home to parents or a spouse, not for a business getting paid. Payment processors sometimes default new accounts to it because it is the path of least resistance.
If your client's payment lands under P1301, the system treats it as a personal transfer rather than an export of your services.
P1499 is other income receipts. Freelancers reach for it because it sounds like a catch-all. In practice it classifies your earnings as passive income rather than a service export, which is the opposite of what you want if you plan to claim export benefits or file under the presumptive scheme.
The damage from either is the same. You lose the ability to treat the money as a zero-rated export of services for GST, so a legitimate refund route closes.
Your income also stops reading as clean business receipts, which weakens a Section 44ADA claim. And a mismatch between "personal transfer" on the bank record and "professional income" on your return is exactly the inconsistency that invites a query.
There is a genuine small-value exception. RBI provides P1590 for receipts below USD 10,000 where a specific code is not required, and banks may apply it to small transfers.
It is a reporting convenience for low amounts, not a substitute for the correct service code once your freelancing becomes regular income.
How the code connects to your FIRA, GST and 44ADA
A three-character code matters this much because it sits at the top of a chain the rest of your compliance hangs on.
- FIRA and eFIRA: your bank or platform issues a Foreign Inward Remittance Advice for each payment, carrying the purpose code you declared. This is your primary proof that export earnings actually reached India, and you need it for GST filings and as income proof.
- GST and the LUT route: freelance services sold to overseas clients usually qualify as an export of services, which is zero-rated under GST when you file a Letter of Undertaking (LUT). A service purpose code supports that treatment, and a personal code like P1301 undercuts it. Our guide to GST for freelancers covers the LUT step in detail.
- Section 44ADA: many freelancers file under the presumptive scheme, declaring a set share of gross receipts as income. That only holds up if the money is recorded as professional receipts from a service. A clean service code keeps your bank records and your ITR for freelancers telling the same story.
None of this is tax advice, and a chartered accountant should sign off on your situation. The point is narrower: the purpose code you choose at the payment layer decides whether the tax layer above it works or fights you.
Finding and setting your code on PayPal, Payoneer and Wise
The requirement is the same everywhere, but each platform hides the setting in a different place.
PayPal: you select a purpose code when you set up your account to receive international payments, and you can update it later under your account settings.
Developers commonly sit under P0802, writers under P0805, and marketers under P1007. If you are unsure how PayPal handles inward payments in India, our PayPal review walks through the receiving flow.
Payoneer: the purpose code lives under Settings, then Profile settings, then Additional details. This is the one most freelancers ask about, and the answer is the same logic as above. Match the code to your service, not to whatever the account defaulted to.
The Payoneer review covers where the setting sits and how withdrawals to an Indian bank are reported. Etsy and digital-product sellers should check here first, since payouts often default to a generic code.
Wise, Upwork and Fiverr: the interface changes but the rule does not. Each still needs an accurate purpose code, and on marketplace platforms the payout to your Indian bank is where the code gets applied.
For digital-product sellers, this is the moment to confirm whether the platform is using P0806 or P1019 rather than a personal code.
How Xflow handles the code for you
Where a bank or a general-purpose wallet leaves the code to you, Xflow classifies it from the service category you set up and applies the correct RBI purpose code to each inward payment automatically.
You are not hunting through a FETERS list on every transfer, and you are not at the mercy of a default that quietly marks your income as personal.
Every payment then generates an eFIRA in your dashboard with the code already on it. Your GST and income proof are ready without a separate bank request, and the money lands in your own receiving accounts at the next business day (T+1), converted at the live mid-market rate.
Xflow operates under a final RBI Payment Aggregator - Cross Border (PA-CB) authorisation for both exports and imports, granted in February 2026, the licence that lets it settle inward remittances and issue your eFIRA.
The honest limitation: if your work is genuinely ambiguous, no platform can read your mind. You still describe the service accurately at setup, and for unusual cases a quick check with support or your CA beats a guess.
How to choose the right purpose code
A short checklist that holds up whatever platform you are on:
- Name the service, not the sender. Decide what you delivered, then find the code for that work.
- Match it to your invoice. The description on your invoice and your purpose code should say the same thing.
- Refuse personal codes for business income. Never accept P1301 or P1499 for client payments.
- Use one code per service. If you sell two distinct services, invoice them separately under their own codes rather than forcing one label.
- Check the RBI list when unsure. The purpose codes reference and your bank’s international-payments desk settle most edge cases.
If you receive payments across more than one type of work, our note on multiple purpose codes explains how to keep them clean.
The bottom line
For most Indian freelancers the correct purpose code is one of six service codes, led by P0802 for software work and P1007 for marketing.
The mistake that costs money is not choosing between two close service codes. It is letting a payment slip into a personal category like P1301 and losing your export standing with it.
Set the right code once, keep your eFIRA on file, and the GST and tax layers fall into place. If you would rather not manage the code by hand, a platform that assigns it and issues the eFIRA for you removes the whole question.
Stop losing money on bad exchange rates.
Frequently asked questions
It depends on your service. Software work is P0802, remote software exports P0807, digital marketing P1007, business consulting P1006, and journalism P0805. Match the code to what you deliver.
P0802 (software implementation and consultancy) for most development and IT consulting, the code CAs usually recommend. Use P0807 if the software is delivered fully off-site and online.
P1007, which covers advertising, market research and public opinion polling. It fits paid ads, SEO and campaign work better than the information-services codes.
No. P1301 is family maintenance and P1499 is other income, both personal. Using them for client payments blocks GST zero-rating and can weaken a Section 44ADA claim.
Selling templates or e-books is usually reported under P0806 (other information services) or P1019 (other services). Confirm which one your platform applies before your first payout.
Yes. A service export code supports zero-rated treatment under a LUT. A personal code like P1301 undercuts the export claim and the refund that follows.
Payments can be delayed or queried, your eFIRA may misstate the income, and you can lose export benefits. Correcting it later means reopening the transaction with your bank.
Under Settings, then Profile settings, then Additional details. Set it to match your service rather than accepting the default.