Polish software houses with US clients: collecting dollars and handling the NBP rate

Poland's software houses sell a large share of their work to American clients. Collecting dollars well means more than a USD account: Polish tax rules convert each invoice and payment at NBP rates, and the gap between them creates exchange differences you have to book.

Rashidatou K.Payments editor
Published
Reading time
2 min read
A Rivet note showing an American client's dollar payment to a Polish software house with NBP rate bookings, beside a Polish flag disc.

A Wrocław software house with 40 developers bills three US clients about $150,000 a month. The dollars arrive by international wire into a zloty account, are converted at the bank's rate, and the accountant then books each invoice at one NBP rate, each payment at another, and the conversion at a third. Month end takes two days.

The NBP rate rule

Polish tax law converts foreign-currency amounts at the National Bank of Poland's average rate (Table A) from the last business day before the relevant date:

  • the invoice is booked at the rate from the business day before the invoice or sale date,
  • the payment is booked at the rate from the business day before it is received.

For VAT, the rate from the business day before the tax point applies, unless you choose the ECB rate.

Where FX differences come from

If the dollar falls between invoice and payment, the zloty value received is lower than the zloty value booked. That gap is a realised exchange difference (różnica kursowa): a deductible loss here, taxable income if the dollar rose.

A second difference appears when you sell dollars for zloty at your provider's rate rather than the NBP rate. Good accounting software calculates both; your accountant needs clean data to do it.

Fewer conversions, fewer differences

Every conversion is an event to book. A software house that converts every dollar payment on arrival, then buys dollars to pay a US contractor or a conference, creates two conversions and two sets of differences where none were needed.

Holding a dollar balance changes the pattern. Client payments arrive and stay in dollars. Dollar costs are paid from them. Zloty conversions happen on a schedule, for example once a month before payroll, at a rate you see first.

How the clients pay

American clients pay vendors by ACH. A Polish IBAN forces an international wire, which some smaller US companies approve slowly, and which can lose intermediary fees on the way. US account details in the software house's own name let the client pay by ACH like any American vendor, and the amount that arrives matches the invoice.

The client will also ask for a W-8BEN-E. With it, and the Poland-US tax treaty where relevant, payments for services performed in Poland are made without US withholding.

Paying into Poland: the local rail

WhatDetail
Local railExpress Elixir
Run byKrajowa Izba Rozliczeniowa (KIR)
SettlementSeconds, 24/7, up to PLN 100,000 per transfer

Source: KIR: Express Elixir. Checked when this guide was last updated; the scheme's own page has the current figures.

Where Rivet fits

A Rivet business account gives a Polish company US account details in its own name on every plan, for ACH and wires. Payments are matched to invoices, dollars can be held or converted at a rate shown before you confirm, and each statement line carries the rate for your accountant. From the Growth plan, euro and sterling details are added; on Scale, balances in 30 currencies, zloty included. Rivet is not a bank; regulated partner institutions hold the funds.

Questions people ask

Which exchange rate does a Polish company use for a dollar invoice?

For income tax, the NBP average rate from the last business day before the invoice date (or the sale date). For VAT, the NBP rate from the business day before the tax point, unless you opt for the ECB rate.

What is a różnica kursowa?

An exchange difference: the gain or loss from the change in rate between booking a receivable and receiving the payment, both at NBP rates. It is taxable income or a deductible cost.

Does converting dollars to zloty create another difference?

Selling dollars at the provider's rate rather than the NBP rate also produces a difference. Many companies account for it with the help of their accounting software.

Should a software house keep dollars?

If it pays contractors, tools or travel in dollars, yes. Converting only what you need in zloty reduces conversions and simplifies the books.

Sources

  1. 01Narodowy Bank Polski: Average exchange rates (Table A)
  2. 02podatki.gov.pl: CIT
  3. 03IRS: Instructions for Form W-8BEN-E
  4. 04Nacha: What is ACH?
  5. 05KIR: Express Elixir
Written by
Rashidatou K.
Payments editor

Rashidatou writes Rivet's guides to how money moves between countries: the payment rails, what each one costs, and the account details a company needs to get paid in another currency. Every figure in Rashidatou's articles is traced to the scheme rulebook, the regulator or the provider's published price list, and those sources are listed at the end.

More from Rashidatou K. →

This article is general information, not legal, tax or financial advice. Rules and fees change; check the sources above and the provider’s current terms before you act on them.

  • poland
  • software house
  • usd
  • nbp rate
  • fx differences
  • us clients
Read next
All articles
An ACH credit in progress with its settlement window.Payments

Can you send ACH internationally? IAT and cross-border ACH explained

No, not in the way most people hope. ACH moves money between US accounts. An IAT entry is used when an ACH payment involves money moving to or from a bank outside the US, but it only reaches a handful of countries. To pay most suppliers abroad, you need SWIFT or a local payout.

Rashidatou K.
2 min read
An ACH credit submitted before a Same Day ACH window, with settlement time shown.Payments

Why is my ACH payment pending? How long ACH really takes

An ACH payment moves in batches on business days. Standard ACH settles in one or two business days; Same Day ACH settles the same afternoon if your bank submits it before one of three Federal Reserve deadlines. Pending usually means the batch has not settled yet.

Rashidatou K.
3 min read
Rivet

One business account for every currency you earn in.

Bank accounts in USD, EUR and GBP, cards with a limit on each, and payouts on local rails. Starter is free.

New rules, rail changes and fee moves in one short email. Unsubscribe any time. Privacy notice

Global

USD, EUR, GBP and 22 more currencies in the account. Payouts go to 120+ countries on the local rail.

Any hour

You can convert currencies and settle on-chain at any hour, including when banks are closed.

Rivet is a financial technology platform, not a bank. Regulated partner institutions provide the accounts, payment services and cards, under their own terms and eligibility rules. Those institutions hold and move the funds. The money is not pooled on our balance sheet.

The names and logos of Amazon, Meta, Visa, Google Play, App Store, Swift, SEPA, Faster Payments, Circle, Tether and others are trademarks of their owners. We show them so you can tell which network a payment settles on. Rivet is not affiliated with, endorsed by, or sponsored by these companies. Digital assets are not deposits, are not legal tender, and may lose value. Products and services are not available in all jurisdictions.

Money transmission services are provided by Bivo Inc. (NMLS 2572288).

© 2026 Bilitech LLC. All rights reserved.Bilitech LLC · 30 N Gould St Ste N, Sheridan, WY 82801