Project reference · IT & software
A development team in Ukraine, with no Ukrainian company.
A US software company wanted its developers in Ukraine to work for it directly, without opening a local entity. The model was legal but fiddly: each developer registers as a private entrepreneur, invoices the US company in dollars and reports their own taxes. We set up and ran that model for well over a year, from three developers to nineteen, and handed it back in order when the client took it in-house.
17 months, offer to handover
Duration
3 → 19 developers a month
Scale
About 26 developers in total
People
No local entity needed
Structure
The monthly cycle
Five steps, every month, for every developer
Nothing here is exotic. What makes it work is doing all five steps on time for every person, every month, with paperwork a Ukrainian bank will accept.
The brief
What the client actually needed
The client is a software company in the United States. Its developers sat in Ukraine, and it wanted them contracted directly and paid in dollars, without the cost and paperwork of a Ukrainian subsidiary. Ukrainian law allows this. Each developer registers as a private entrepreneur on the simplified tax system, signs a service contract with the foreign company and invoices it every month.
The catch is that a developer is not an accountant. Each one needs a registration, a dollar and a hryvnia bank account, a signed contract the bank will accept, an invoice and an act of services every month, quarterly tax returns and an annual one. Multiply that by twenty people and it becomes a back office. The client asked us to be that back office.
The hard parts
Where it gets difficult
Dollars have to come in the right way
A private entrepreneur may receive payment from abroad only by bank transfer from the client named in their contract. We checked payment platforms with three banks and their currency-control departments; money received that way would have counted as a private transfer, taxed differently. So every payment went by SWIFT, with the contract and invoice quoted in the payment details.
Twenty people, twenty levels of trust
Some developers handed us full access to their bank and tax accounts. Others wanted us only to write their invoices, or to file taxes without seeing their bank statements. We mapped each person, agreed a scope per group, and told the client where a gap in access meant a gap in compliance.
Tax rules changing under us
The rules for private entrepreneurs changed on 1 January 2015, and again in mid-2015 with new cash-register duties. Each change had to be explained to the client and to every developer before the next payment ran.
Joiners and leavers every month
Four developers left in one month in spring 2015; later in the year new ones arrived almost monthly. Each joiner needed a registration, accounts and a contract before the first payment, and each leaver a clean close.
Confidentiality and IP from day one
New developers signed a protocol of intent covering confidentiality and the client’s ownership of their code before the full service contract was in place, so no work started unprotected.
A clean exit
When the client moved the function in-house, every developer still owed an annual tax return. We filed those, then shipped the paper files to the client’s office and handed over an electronic folder per developer.
What we did
Set up, run, grow, hand over
- Oct–Nov 2014 · Set up. Offer and service contract, with a fee per registration and a monthly fee per developer. The first five developers registered as private entrepreneurs within six weeks, with bank accounts ready for their first payment.
- Dec 2014–2015 · Run. A monthly pack for each developer: invoice to the US client, act of services and calculation of the single tax and social contribution. Currency sales, transfers to personal cards, quarterly returns, reminders and consultations.
- 2015 · Grow. New developers onboarded through the year, a standard contract template and a protocol of intent for newcomers, and help for leavers to close their registration.
- Jan–Feb 2016 · Hand over. Annual returns filed for every developer, balances confirmed, paper and electronic files delivered to the client.
The model suits a foreign company that wants a small or growing team in Ukraine quickly. Once the team is large and stable, many clients move it in-house or into their own entity, as this one did. We agreed the handover with them and ran it to the end.
How we work
We do not show you another company’s name
The client and its developers are not named here, and they will not be named in a meeting either. We are glad to talk this project through in detail. What we will not do is discuss the last client that way with you, or you with the next one.
Next step
Developers in Ukraine, but no company there?
Whether it is three people or thirty, thirty minutes is usually enough to tell you which model fits and what it will cost to run.
