First-Sale VAT on Stripe: India, Korea, Uzbekistan, Vietnam
Four countries register foreign sellers from the first Stripe sale, then file four different ways. Rates, IDs, deadlines and QuickBooks, compared.
A US software company sells a 29 USD monthly plan worldwide with Stripe Tax switched on. In one quarter it makes its first sales in India, South Korea, Uzbekistan and Vietnam. Stripe's monitoring shows the same thing for all four: a registration threshold of "1 transaction", already crossed. It looks like one problem solved four times.
It isn't. Once you're registered, the four countries run four different systems. India wants a return every month, even a nil one. Korea wants one every quarter, and so does Uzbekistan, but with a different due date and in a different currency. Vietnam moved foreign suppliers to monthly filing in July 2026, and Stripe treats a Vietnamese company's tax ID differently from the other three. Even the line between a consumer and a business is drawn in a different place in each country.
This guide puts the four side by side: the rate, the registration clock, who counts as a business customer and what Stripe does with their tax ID, the return cadence and due date, the currency, and whether you need a local representative. It then shows how the tax reaches QuickBooks and what one month of sales in all four looks like.
Acodei brings Stripe Tax amounts into QuickBooks automatically, so the tax for every country you're registered in is already in a liability account when each return comes due. Start a free trial.
Which countries register you from the first Stripe sale?
Stripe's country pages give each country a registration threshold. For most of the world it's a sales figure: Indonesia's is a monthly amount, for example, and you can sell for a while before it bites. For a long list of countries, the figure is "1 transaction". In practice that means a foreign seller of digital services owes registration from the first consumer sale.
This guide covers four of them, chosen because both Stripe's page and the tax authority's own rules could be checked directly:
- India. Stripe: "They must register for IGST purposes from the first sale."
- South Korea. Stripe: "There are no registration thresholds for non-resident service providers."
- Uzbekistan. Stripe: remote sellers "have to register for tax from their first sale there."
- Vietnam. Stripe lists a threshold of "1 transaction" and collects the VAT part of what Vietnam calls the Foreign Contractor Tax.
Stripe gives Kazakhstan the same threshold, but its State Revenue Committee pages wouldn't load when we checked, so it's left out rather than described second-hand. Saudi Arabia also registers non-residents from the first sale and has its own guide.
In all four, Stripe's threshold monitoring watches business-to-consumer sales of digital products, and Stripe supports collecting tax only on digital products. A threshold of one means the monitor gives no advance warning. The first sale is the alert. Our guide to why Stripe's registration monitor can be wrong covers what it counts and what it misses.
The four countries side by side
| India | South Korea | Uzbekistan | Vietnam | |
|---|---|---|---|---|
| Rate on digital services | 18% IGST | 10% VAT | 12% VAT | 10% VAT (statutory) |
| Registration clock | From the first sale (simplified scheme, Form GST REG-10) | Within 20 days of starting | Within 30 days of the first service | Direct registration, not needed if buyers withheld on every sale |
| Business customer | GST-registered (GSTIN) | Korean business registration | Uzbek legal entity | Vietnamese business on the credit method |
| Stripe ID type, affects tax? | in_gst, yes | kr_brn, yes | uz_vat yes, uz_tin no | vn_tin, no |
| Return cadence | Monthly | Quarterly | Quarterly | Monthly (from 1 July 2026) |
| Due date | 20th of the next month | 25 days after the quarter | 20th of the month after the quarter | 20th of the next month |
| Payment | Through the GST portal's cash ledger | Into a foreign exchange account the tax authority designates | In foreign currency | Payment account and its currency declared at registration |
| Local representative | Optional | Optional ("tax manager, if any") | Not mentioned in the FAQ | Optional |
The rest of this guide explains the rows that trip people up.
Who counts as a business customer, and what Stripe does with the ID
Every one of these countries keeps foreign sellers out of business-to-business sales. The business customer accounts for the tax instead. What differs is how a business is identified, and whether Stripe's calculation follows.
Stripe's customer tax ID list has a column called "Impact in Tax Calculation". Where it says Yes, the footnote explains that "Stripe Tax won't apply tax if this tax ID is provided, in line with the relevant laws." Where it says No, Stripe records the ID and prints it, but still charges tax. Our glossary entry on the Stripe customer tax ID covers how the column works generally.
India: the GSTIN. The GST Council's OIDAR flyer says that when the recipient "is a registered entity under GST", it "will be liable to pay GST under reverse charge." Registration is the test, not being a company. Since October 2023, an unregistered Indian business is taxed like a consumer. In Stripe, in_gst has impact Yes, so a GSTIN on the customer switches the sale to reverse charge.
South Korea: the business registration number. Article 53-2 of Korea's VAT Act puts the foreign supplier's duty on supplies "to consumers in the Republic of Korea", excluding services supplied for the business of a person "whose business has been registered". In Stripe, kr_brn has impact Yes.
Uzbekistan: any legal entity. The Tax Committee's VAT office FAQ says that for electronic services to Uzbek legal entities, "payment of value added tax is carried out by recipients of such services." Stripe has two Uzbek ID types. uz_vat has impact Yes. uz_tin, the general taxpayer number, has impact No. An Uzbek company that gives you only its TIN will still be charged 12% by Stripe, even though the law puts the tax on the company. Ask Uzbek business customers for their VAT number, and check any business invoice that went out with tax on it.
Vietnam: the buyer withholds. Under Vietnam's VAT Law and Decree 252/2026, a Vietnamese business on the credit (deduction) method that buys from a foreign supplier withholds the tax and pays it on the supplier's behalf. In Stripe, vn_tin has impact No. So Stripe charges 10% to a Vietnamese company even when that company is also required to withhold from what it pays you. That's the one real double-tax trap in the table. If you sell to Vietnamese businesses, agree with each one how the tax is handled before the first invoice. Then decide with your adviser whether those customers should be tax-exempt in Stripe.
One rule covers all four: Stripe checks the format of these IDs, not their status. Its validation against government databases covers only Australian ABNs, EU VAT numbers through VIES and UK VAT numbers. A mistyped GSTIN or a deregistered Korean business number still switches off the tax in Stripe. The tax authority will see the gap when you file.
Filing cadence and deadlines: monthly, quarterly, and the 20th or the 25th
This is where a first-sale country costs the most time. Registration is a one-off task. Returns come back every month or every quarter, and a missed nil return is still a missed return.
India files monthly. The GSTR-5A return is due "by 20th of the month succeeding the tax period", per the GST portal's FAQ, and filing "is mandatory… even if" there's nothing to report. Twelve returns a year, starting the month after your first Indian sale. The India guide covers which tables take consumer sales and which take reverse-charge sales.
Korea files quarterly. The VAT Act sets returns within 25 days after each preliminary and final period. For a foreign e-service supplier, that works out to April 25, July 25, October 25 and January 25. The Korea guide lays out the four periods.
Uzbekistan files quarterly, earlier. The Tax Committee FAQ says foreign suppliers "quarterly calculate and pay VAT" and that "tax reporting and tax payment is carried out no later than the twentieth day of the month following the past quarter." That's April 20, July 20, October 20 and January 20, five days ahead of Korea for the same quarter.
Vietnam now files monthly. Decree 252/2026 took effect on 1 July 2026. It requires foreign suppliers that do business regularly to declare and pay monthly, due by the 20th of the following month. Guidance written before July 2026 that describes quarterly filing is out of date for regular suppliers. A supplier with only occasional Vietnamese sales declares per transaction instead.
Lay those on a calendar and a company registered in all four files 32 returns a year: 12 for India, 12 for Vietnam, 4 each for Korea and Uzbekistan. Every month has an Indian and a Vietnamese deadline on the 20th. In January, April, July and October, Uzbekistan joins them on the 20th and Korea follows on the 25th.
Rates and currencies: four conversions, not one
The rates are the simple part. India charges 18%: the consolidated IGST rate notification sets 18% for heading 9984, information supply services, with a separate 5% line for e-books only. Korea's VAT Act, Article 30: "The value-added tax rate shall be 10 percent." Uzbekistan's FAQ gives "a tax rate of 12 percent."
Vietnam needs a caveat. Its VAT Law names 10% for services that foreign suppliers without a permanent establishment provide through e-commerce and digital platforms. A temporary reduction of some 10% items to 8% runs until 31 December 2026, and it has listed exclusions. Check with a Vietnamese adviser which rate applies to your service, and make sure Stripe charges the same rate. Stripe also covers only part of Vietnam's tax. Its page says Vietnam's Foreign Contractor Tax "consists of VAT and income tax", that Stripe "only supports collecting VAT", and that it "doesn't calculate the income tax component."
Currency is where the work is. Each country converts your dollar sales its own way:
- Korea lets a foreign-currency seller use "the basic exchange rate as at the last day of the taxable period", per Article 96-2 of the Enforcement Decree. That's one rate per quarter.
- Uzbekistan converts "at the exchange rate of the Central Bank… on the last day of the month in which payment… was received", under Article 280 of its Tax Code. That's one rate per month, inside a quarterly return, and the authority keeps settlement accounts in foreign currencies.
- India is paid through the GST portal's electronic cash ledger.
- Vietnam asks for the currency of your payment account when you register.
Stripe converts differently from all of them. Its tax reports documentation says that when your pricing currency differs from the filing currency, Stripe Tax "converts amounts using available exchange rates at the time of the transaction." Each row of Stripe's itemized tax export carries its own rate. If you sum Stripe's local-currency column, you get a figure that matches none of the four methods above. Start each return from the dollar totals and apply the country's own method. Our Stripe Tax filing currency entry explains those export columns.
Two of the four currencies also matter for QuickBooks. Stripe lists both the Korean won and the Vietnamese dong among its zero-decimal currencies, and Acodei supports decimal-based currencies only. If you price Korean or Vietnamese plans in KRW or VND, those transactions will cause sync issues. Keep those plans in USD. Stripe Tax still calculates the local tax on a USD price, and the local-currency figures are only needed on the returns.
How first-sale VAT from Stripe reaches QuickBooks
For a US QuickBooks company, the workable Acodei tax method is usually the Tax Product. QuickBooks' Sales Tax Center doesn't let third parties create official tax rates for US companies, so the tax goes to a product line instead:
- In QuickBooks, create a non-inventory product such as "Sales Tax" and map it to a liability account.
- In Acodei's Stripe Tax settings, choose Tax Product and select that product.
- Each synced sale gets one line for its total Stripe Tax amount on the QuickBooks invoice or sales receipt.
It requires Stripe Tax enabled with Stripe Invoice or Stripe Checkout. You then file from Stripe's tax reports and pay from the liability account. A company whose QuickBooks file is outside the US can instead map each Stripe tax rate to a QuickBooks tax code.
The Tax Product puts every Stripe Tax amount in one account. Indian IGST, Korean and Uzbek VAT, Vietnamese VAT and any US sales tax all land together. So the liability account tells you how much you owe in total, and Stripe's export tells you how much you owe each country. Each month, filter the itemized export by country and period, and file from that. When you pay a return, clear that country's dollar amount from the liability account and post any difference from the payment's exchange rate to an exchange gain or loss account. If you skip that step, small balances pile up, and the account stops telling you anything. Our guide to why the Stripe tax report and QuickBooks don't match covers the other common gaps.
Refunds need one habit across all four countries. A refund issued without a line-level breakdown may not reduce the tax line in QuickBooks, so refund through a credit note when you can.
A worked example: one month, four countries
The company from the introduction prices its 29 USD plan tax-exclusive in USD everywhere. In March it has these sales:
| Customers | Sales | Rate | Tax collected | |
|---|---|---|---|---|
| India, consumers | 40 | 1,160 USD | 18% | 208.80 USD |
| South Korea, consumers | 30 | 870 USD | 10% | 87.00 USD |
| Uzbekistan, consumers | 10 | 290 USD | 12% | 34.80 USD |
| Vietnam, consumers | 12 | 348 USD | 10% | 34.80 USD |
| Total | 92 | 2,668 USD | 365.40 USD |
With the Tax Product, QuickBooks records 2,668 USD of revenue and 365.40 USD in the liability account for these sales. The Vietnamese figure uses the 10% statutory rate. If the temporary 8% applies to your service, the tax is 27.84 USD.
The month also produces three business sales, and each one behaves differently:
- An Indian company with a valid GSTIN pays 29 USD with no tax. It goes in the GSTR-5A reverse-charge table, and nothing lands in the liability account.
- An Uzbek company that entered only its TIN is charged 32.48 USD, because
uz_tindoesn't affect Stripe's calculation. Under Uzbek law the company should account for the tax itself, so the 3.48 USD needs sorting out with the customer. - A Vietnamese company is charged 31.90 USD by Stripe. If it's on the credit method, it will also withhold Vietnamese tax from what it pays you. Without an agreement in advance, the same sale gets taxed twice.
Then the deadlines. April 20: India's March return and Vietnam's March return. April 20 as well: Uzbekistan's first-quarter return, covering January to March. April 25: Korea's preliminary return for the same quarter. Four filings in six days, all from one 365.40 USD liability balance for March plus the earlier months for the two quarterly countries.
Common mistakes in first-sale countries
- Registering late because the monitor didn't warn you. With a threshold of one, the first sale is the warning. Register before you turn on sales in these countries, not after the first invoice.
- Skipping nil returns. India's GSTR-5A is due every month even with no sales, and a registration you're not using still has returns.
- Trusting an unvalidated ID. Stripe checks the format of GSTINs and Korean business numbers, not their status. Check new business IDs with the local authority when they're added.
- Collecting only a TIN in Uzbekistan or Vietnam.
uz_tinandvn_tindon't stop Stripe charging tax. In Uzbekistan, ask for the VAT number. In Vietnam, agree the tax handling with business customers directly. - Filing from Stripe's local-currency column. Korea uses one rate for the quarter, and Uzbekistan uses one per month. Stripe uses one per transaction. Convert the dollar totals the way each country requires.
- Pricing in won or dong. Both are zero-decimal currencies, and Acodei doesn't support zero-decimal currencies. Keep those plans in USD.
Frequently asked questions
Which countries require a foreign SaaS seller to register for VAT from the first sale?
Stripe's country pages list a registration threshold of "1 transaction" for many countries, including India, South Korea, Uzbekistan, Vietnam, Kazakhstan and Saudi Arabia. In each, a foreign seller of digital services to consumers owes registration from the first consumer sale, and Stripe's threshold monitoring gives no earlier warning.
Does Stripe Tax charge VAT to business customers in these countries?
It depends on the tax ID. A GSTIN in India, a Korean business registration number, or an Uzbek VAT number stops Stripe charging tax, because those ID types have impact Yes. An Uzbek TIN or a Vietnamese tax ID doesn't, so Stripe still charges tax on those sales. Stripe checks the format of these IDs, not whether they're registered.
How often do you file in India, South Korea, Uzbekistan and Vietnam?
India and Vietnam file monthly, by the 20th of the following month. Vietnam moved foreign suppliers to monthly filing from 1 July 2026. South Korea files quarterly, within 25 days after each quarter. Uzbekistan files quarterly too, by the 20th of the month after the quarter. Registered in all four, that's 32 returns a year.
Does Stripe calculate Vietnam's Foreign Contractor Tax?
Only part of it. Stripe's Vietnam page says the Foreign Contractor Tax "consists of VAT and income tax" and that Stripe "only supports collecting VAT." It doesn't calculate the income tax component, so take advice on how that part is declared and paid.
Where does first-sale VAT from Stripe go in QuickBooks?
With Acodei's Tax Product method, each synced Stripe sale carries its Stripe Tax amount as one line on a non-inventory product mapped to a liability account. Tax for every country lands in that one account. File each country's return from Stripe's itemized export, and clear that country's amount from the liability account when you pay.
Acodei syncs Stripe Tax into QuickBooks automatically, so every monthly and quarterly return starts from a liability account that already holds what you collected. Start a free trial.
Automate your Stripe to QuickBooks sync
Save hours every month. Acodei automatically syncs your Stripe transactions, invoices, and payouts to QuickBooks Online.
14-day free trial · card required · cancel anytime
How Acodei handles this in your stack
Stripe QuickBooks Integration
See how Acodei syncs Stripe payments, fees, refunds, invoices, and payouts into QuickBooks Online automatically.
Or go straight to a capability
Advanced Product Mapping
Map Stripe products to QuickBooks with rule-based logic on product ID, price ID, metadata, and account. Set rule priority and extend mapping to refunds and fees.
Automated Invoice Sync
Bring Stripe invoices into QuickBooks and auto-apply payments and credit memos, with invoice numbering suffixes and quantity tracking to cut double-entry.
Multi-Currency Mastery
Sync Stripe transactions across currencies with automatic exchange rate handling and currency-specific customer records. Our team enables multicurrency on request, and zero-decimal currencies such as JPY are not supported.
Class Mapping
Map Stripe products to QuickBooks classes for scalable categorization and multi-entity reporting. Class tracking requires QuickBooks Online Plus or Advanced.
Historical Data Import
Backfill historical Stripe data into QuickBooks by month range. Preview volume and cost before syncing so reporting starts from a complete baseline.
How to Connect Stripe to QuickBooks Online
Connect Stripe to QuickBooks Online in minutes. Acodei links both accounts with secure OAuth and syncs payments, fees, refunds, and payouts automatically.
Reconcile Stripe Payments in QuickBooks
Reconcile Stripe in QuickBooks Online automatically. Acodei splits out fees, matches payouts to deposits, and keeps every charge audit-ready.
Related articles
Acodei Journal
Saudi VAT on Stripe Digital Services in QuickBooks
Acodei Content Team
Saudi VAT on Stripe Digital Services in QuickBooks
10/20/2026
Acodei Journal
Tanzanian VAT on Stripe Electronic Services in QuickBooks
Acodei Content Team
Tanzanian VAT on Stripe Electronic Services in QuickBooks
10/19/2026
Acodei Journal
New Zealand GST on Stripe Remote Services in QuickBooks
Acodei Content Team
New Zealand GST on Stripe Remote Services in QuickBooks
10/19/2026
Get more operational finance guides like this one
We will only send high-value product and finance content.