Bosnian VAT on Stripe Digital Services in QuickBooks

Bosnia and Herzegovina taxes foreign digital sales above 100,000 KM, business sales included, through a liable representative. Rules, returns, QuickBooks.

Acodei Content Team · 11/1/2026 · 15 min read

A software company in Denver sells a $30 monthly plan to subscribers across the Balkans. Stripe's threshold monitoring flags Bosnia and Herzegovina in June: sales there have passed 50,000 BAM for the year, and Stripe's country page says that's the line. The company's adviser in Sarajevo says the line is 100,000 KM, and has been since December 2023. Both can be right about what they're reading. Only one of them is reading the current law.

Stripe's Bosnia and Herzegovina entry says: "Remote sellers providing digital services (digital products) to consumers and businesses in Bosnia and Herzegovina have a registration threshold of 50,000 BAM in the current year. To register to collect tax, you need to appoint a tax representative in Bosnia and Herzegovina." Two parts of that hold up against the law, and one doesn't. Business sales do count, and the representative is mandatory. The figure is out of date.

This guide works through the VAT Law and the notices published by the Indirect Taxation Authority (UIO, also written ITA or UINO), and Stripe's documentation. It covers who is caught, the threshold and how to count toward it, the tax representative, the rate, the monthly return, a worked example, and what reaches QuickBooks. It is bookkeeping guidance, not tax advice. The law is published in the local languages, and the translations here are ours.

Acodei brings Stripe Tax amounts into QuickBooks, so the Bosnian VAT you collect builds up in a liability account each month. Start a free trial.

Bosnia and Herzegovina has no separate scheme for foreign digital sellers. The obligation comes from the ordinary VAT Law (Zakon o porezu na dodanu vrijednost, Official Gazette of BiH 9/05, amended by 35/05, 100/08, 33/17, 46/23, 80/23 and 20/25), which the UIO publishes on its regulations page. The law has applied since 1 January 2006.

The UIO has said so directly, twice. In a February 2023 notice to foreign providers, it reminded "all foreign entities" supplying digital or electronic services in the country that they must "register for VAT with the UIO, and calculate and pay VAT at the standard rate of 17%." In a July 2025 notice to multinational companies without a seat in the country, it listed what they owe: "appointing a tax proxy in BiH; VAT registration; reporting and paying the VAT liability."

The 2025 notice also tied itself to an amended Rulebook on the application of the VAT Law (Official Gazette 25/25), which started to apply on 6 August 2025 and spells out what an electronically supplied service is.

What counts as an electronic service

Article 15 of the VAT Law puts the place of supply of a list of services where the customer "carries on business, has a permanent seat, a branch, a permanent address or usual residence." The list has included data processing and the supply of information since 2005. The 2025 Rulebook amendment, as the UIO's July 2025 notice reproduces it, spells out "electronic data processing and electronically supplied services," including:

  • web hosting, and remote maintenance of programs and equipment
  • the supply of software and its updating
  • the supply of images, text and information, and making databases available
  • music, films and games, including games of chance, and political, cultural, artistic, sporting, scientific and entertainment broadcasts and events
  • distance teaching over the internet

SaaS, downloads, streaming, online courses and digital media all fit. The text we read has no carve-out for services delivered by email, the way North Macedonia's law does. And the same article lists consultants, engineers, lawyers and accountants, whose services follow the same customer-location rule.

Business sales count too

This is where Bosnia and Herzegovina differs from most of its neighbors, and where Stripe's wording ("to consumers and businesses") is right.

Article 15's customer-location rule doesn't separate consumers from businesses. A sale of software to a company in Sarajevo is a Bosnian supply, just as a sale to a student in Mostar is. Article 57 then counts all of it toward the threshold: "taxable turnover of goods or services," with no exclusion for business customers.

Who pays the VAT on a business sale is decided by Article 13, and its order matters. It lists, among the persons liable:

  1. the tax representative appointed by a taxpayer "that has neither a seat nor a permanent business unit in Bosnia and Herzegovina," and
  2. "the recipient of services acquired in the course of business, if the service provider without a seat in Bosnia and Herzegovina... does not appoint a tax representative."

So the business customer pays the VAT only as a fallback, when the foreign supplier has no representative. That isn't the EU-style reverse charge most sellers expect. Once you're registered through a representative, the law puts your business sales on your own return.

That leaves an open question on the Stripe side. Stripe's customer tax ID table lists ba_tin (format 123456789012) with "Impact in Tax Calculation" marked Yes, but no footnote says what the impact is. Before your first Bosnian business sale after registration, create a test-mode invoice for a customer with a ba_tin and read the line's taxability_reason. If Stripe returns reverse_charge and no tax, ask your representative how they want those sales reported, because Article 13 suggests the 17 percent is yours to account for. Our glossary entry on the Stripe customer tax ID covers how the ID is collected.

The threshold: 100,000 KM, not 50,000

Article 57(1) originally said that any person whose taxable turnover "in the previous year exceeds, or is likely to exceed, the threshold of 50,000 KM" must register. Amendment 80/23, published on 24 November 2023, changed one thing: "the words '50.000 KM' are replaced by the words '100.000 KM'." The UIO's notice on the change says it took effect eight days after publication, on 2 December 2023.

The UIO's own 2023 notice to foreign providers predates the change and still quotes 50,000 BAM. Its July 2025 notice uses the current figure: foreign companies must register "without the possibility of postponement" if their taxable turnover went above "the taxation threshold (100,000 KM) in one calendar year." Stripe's page carries the old number. KM and BAM are the same currency, the convertible mark.

Three details change how you count:

  • It's all taxable turnover in the country, business and consumer sales together, not just consumer sales.
  • Related companies count. Article 57(1) includes the turnover of related firms and entities "under common direct or indirect control" through shareholdings or otherwise. A group selling through two Stripe accounts counts both.
  • Foresight counts. The test is turnover that exceeds "or is likely to exceed" the line. If a contract signed in January will take you over by summer, you don't wait for the month it happens.

The registration deadline. Article 57 also says anyone who first becomes, or may become, liable must apply "no later than the 20th of the calendar month following the month in which they made, or are likely to make," turnover above the threshold.

What Stripe's monitoring will do. Stripe's threshold monitoring follows Stripe's own figure, so expect it to flag you at roughly half the legal line. Treat that as an early warning, not as the date your obligation starts, and check the running total in KM yourself.

The tax representative

A tax representative (porezni or poreski punomoćnik, often translated "tax proxy") is a local person who acts for you before the UIO. Article 60 makes one mandatory: a taxpayer "that has no seat in Bosnia and Herzegovina, and that makes supplies of goods and services in Bosnia and Herzegovina, registers through a tax proxy that has its seat in Bosnia and Herzegovina."

What they risk. Article 60 continues: "The taxpayer and the proxy are jointly and severally liable for the tax." The representative also takes on the rights and duties of a domestic taxpayer. If you don't fund a return, the UIO can collect from them, so expect them to want the money before each deadline.

Who can act. The July 2025 notice adds that the proxy must be "a registered VAT payer." Article 60 itself requires a seat in the country.

The documents. The UIO's registration page lists what a registration under Article 60 needs:

  • the representation contract with the tax proxy, and a power of attorney naming the proxy, its identification number and its seat
  • a contract or other document showing that you make taxable supplies in the country
  • your entry in your home country's company register, officially translated into one of the official languages of Bosnia and Herzegovina
  • a passport or other ID for your owner and responsible person
  • the bank's signature card for a special transaction account opened for the tax proxy, through which your Bosnian business transactions run

That last item is unusual. The money for each return moves through a dedicated local account, which matters for the bookkeeping below. The page also lists a 10 KM administrative fee.

The rate

Article 23: "The standard VAT rate... is 17%." There is one standard rate and no reduced rate for digital services. Article 20 defines the taxable base as the consideration "excluding VAT," so 17 percent is added on top of an exclusive price. On a $30 plan, that's $5.10.

The monthly return

The tax period. Article 38: "The tax period for which VAT is calculated is one calendar month." There is no quarterly option in the law.

Invoice timing. Article 38 continues that VAT is calculated for the period "on the basis of the total supplies of goods or services shown in invoices in that tax period." That's close to how Stripe works. Stripe's tax reports documentation says it "records tax when the invoice finalizes, before payment," so Stripe's monthly total and the Bosnian return start from the same invoices. Compare Armenia, where the tax point follows the payment.

Filing. Article 39: the return is filed "by the 10th of the month after the end of the tax period," and a return is due "regardless of whether VAT is payable" for the period. A month with no Bosnian sales still needs a nil return.

Payment. The UIO's VAT payments page says the tax on the return must be paid "by the 10th of the month after the end of the tax period." Late amounts carry default interest "at a rate of 0.04% for each day of delay" plus a 5 percent enforcement charge on the amount owed. Ten days late on 2,000 KM costs 8 KM of interest and 100 KM of charge. The charge is the expensive part.

Converting to KM

Stripe collects in the currency you charge. The return is in KM. Article 22 says that when a value is expressed in a foreign currency, it is converted at "the middle exchange rate of the Central Bank of Bosnia and Herzegovina valid on the day the tax liability arises."

Each invoice is converted at the Central Bank rate for its own date. A month of renewals on different days uses different rates, so the dollars in your liability account won't exactly match the dollars it takes to fund the KM amount due.

A worked example: crossing the line and the first return

A Denver company sells a $30 monthly plan, priced exclusive of tax. In 2026 it has 120 consumer subscribers in Bosnia and Herzegovina and one agency in Banja Luka paying $1,500 a month for seats. To keep the arithmetic simple, assume every Central Bank rate in the year works out to 1.70 KM per dollar. The real rate moves with the dollar.

  1. Counting. Monthly Bosnian turnover is $3,600 from consumers plus $1,500 from the agency: $5,100, or 8,670 KM. Both count.
  2. June. The running total reaches 52,020 KM. Stripe's monitoring flags Bosnia and Herzegovina against its 50,000 BAM figure. Under the law, nothing is due yet.
  3. The foresight test. At 8,670 KM a month, the year will close near 104,040 KM. The company's adviser points out that turnover "likely to exceed" the line counts, and the company starts on a representative in the summer rather than waiting for December.
  4. Registration. The representative's contract, a translated register extract and the bank paperwork for the special account go to the UIO. The registration is added to Stripe Tax.
  5. The first full month. 120 consumers renew at $30. Stripe adds 17 percent: $5.10 each, $612.00 in total.
  6. The agency. Its Stripe customer record carries a ba_tin. The test invoice in step 4 showed whether Stripe charges 17 percent on it. If it does, that's another $255.00. If it doesn't, the company and its representative have agreed how the $1,500 is reported under Article 13.
  7. The return. Taking the case where Stripe charged the agency, the month's tax is $867.00, or 1,473.90 KM at the assumed rate. The representative files by the 10th of the next month and pays from the special account the same day.
  8. The funding. The company wires $900.00 to the special account a week before the deadline: the $867.00 of tax and a margin for the exchange rate. The real Central Bank rates leave the KM due costing $870.40, so $29.60 stays in the account toward the next month.

What reaches QuickBooks, and what you book yourself

Acodei syncs the tax Stripe Tax calculated, so Stripe Tax has to be active in your Stripe account, and your Bosnian registration has to be set up in Stripe Tax first.

For a US QuickBooks company, Acodei's method is the Tax Product: a non-inventory "Sales Tax" product mapped to a liability account, with all Stripe Tax amounts on a sale rolled into one line on the QuickBooks invoice or sales receipt. QuickBooks' Sales Tax Center doesn't let third parties create official tax rates for US companies, which is why the product approach is the one that works there. It needs Stripe Tax used with Stripe Invoicing or Stripe Checkout. Each $30 renewal in the example arrives with one $5.10 tax line. You then use Stripe's tax reports to file and pay from the liability account.

For a QuickBooks company outside the US, Acodei can map individual Stripe tax rates to QuickBooks tax codes you set up. Bosnia and Herzegovina needs only one code at 17 percent, and each Bosnian line then shows in QuickBooks' own tax reporting.

Refunds. Acodei's documentation says a refund issued through a credit note carries the line-level tax breakdown. A refund made on the payment alone may not show how much was tax, and that case can need a manual adjustment in QuickBooks. A Bosnian return is built from invoices, so the credit note is the cleaner record for the representative too.

The special account, step 8. The money you send the representative isn't a tax payment yet. Debit an asset account named for the special account $900.00 and credit your operating bank. When the representative's statement shows the payment, debit the tax liability $867.00, debit exchange gain or loss $3.40, and credit the special account $870.40. The $29.60 left carries to next month. If the representative charges a monthly fee from the same account, book it to professional fees.

The same liability account holds US sales tax and every other country Stripe Tax collects for, so pull out the Bosnian slice each month. Our guide to reconciling the Stripe Tax report in QuickBooks covers the liability side, and the itemized export lets you filter on country_code BA.

Common mistakes with Bosnian VAT on Stripe sales

  • Using Stripe's 50,000 figure as the legal line. The law has said 100,000 KM since 2 December 2023.
  • Counting consumer sales only. Business sales count toward the threshold too.
  • Waiting for the month you cross. Turnover "likely to exceed" the threshold triggers registration, and the application is due by the 20th of the following month.
  • Treating business sales as reverse charge by default. Under Article 13, the business customer pays only when the foreign supplier has no representative. Test what Stripe does with a ba_tin and agree the treatment with your representative.
  • Filing quarterly. Bosnia and Herzegovina is monthly, with filing and payment by the 10th.
  • Skipping empty months. A return is due even when no VAT is payable.
  • Paying from your own account. The registration sets up a special account for the representative. Fund it before the 10th.
  • Splitting the count across entities. Related companies under common control are counted together.

Frequently Asked Questions

Do foreign SaaS companies have to register for VAT in Bosnia and Herzegovina?

Yes, once their taxable turnover in the country exceeds, or is likely to exceed, 100,000 KM. Electronically supplied services to customers there are taxed where the customer is, and a company without a seat in the country registers through a local tax proxy who is jointly and severally liable for the tax. The UIO has issued notices to foreign digital providers in 2023 and 2025.

What is the VAT registration threshold in Bosnia and Herzegovina?

100,000 KM of taxable turnover, under Article 57 of the VAT Law as amended by Official Gazette 80/23, in force since 2 December 2023. It was 50,000 KM before that, which is the figure Stripe's country page still shows. Business and consumer sales both count, and so does the turnover of related companies under common control.

What is the VAT rate on digital services in Bosnia and Herzegovina?

17 percent, the single standard rate under Article 23 of the VAT Law. It's added to a price that excludes VAT, so a $30 plan carries $5.10 of tax.

How often are Bosnian VAT returns filed?

Monthly. The return is due by the 10th of the month after the tax period, and the tax is paid by the same date. A return is required even for a month with no VAT to pay. Late payment carries 0.04 percent interest per day plus a 5 percent charge.

Does Stripe Tax charge Bosnian business customers?

Stripe's tax ID table marks ba_tin as affecting the tax calculation without saying how. Under the VAT Law, a registered foreign supplier's representative is liable for the VAT, and the business customer pays only if no representative was appointed. Test a ba_tin invoice in test mode and agree the treatment with your representative before relying on it.

The short version

Seventeen percent, monthly, through a representative who shares the liability, once your Bosnian turnover passes 100,000 KM. Bosnia and Herzegovina counts business sales toward that line, puts the VAT on business sales on your own return once you're registered, and builds each return from the month's invoices, converted at the Central Bank's rate. Stripe's page still quotes the pre-2023 threshold, so its alert is an early warning, not a deadline. Our guides to North Macedonian VAT and to the countries that register you from the first sale cover how the neighbors handle the same sales.

Acodei syncs Stripe Tax into QuickBooks, so each Bosnian month starts from the liability account instead of a spreadsheet. Start a free trial.

Share

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

Get more operational finance guides like this one

We will only send high-value product and finance content.