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.

EVERY MONTH, FOR EVERY DEVELOPER 1 · Client sends the net amount due to each developer 2 · We draw up invoice, act of services and calculation 3 · Client pays each developer in USD by SWIFT 4 · Bank currency control, dollars sold, moved to a card 5 · We file single tax, social contribution and reports The invoice number and the contract reference must appear in the payment details, or the bank holds the money. DEVELOPERS INVOICED THROUGH US, BY MONTH 3 Nov 7 Dec 10 Jan 11 Feb 9 Mar 8 Apr 9 May n/a Jun 10 Jul 14 Aug 15 Sep 16 Oct 19 Nov 20142015
The cycle we ran every month, and how many developers went through it. Orange bars mark the second half of 2015, when the client grew its team and we onboarded new developers almost every month. June 2015 is missing from the archive we counted from.

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.