e-Residency for Developers & Indie Hackers
How developers and indie hackers invoice app stores, Stripe and GitHub Sponsors through one Estonian OÜ, and where moonlighting changes the math.
Is e-Residency right for developers and indie hackers?
Yes, if you ship more than one small product and collect money from more than one source — app stores, Stripe checkouts, GitHub Sponsors, a freelance contract on the side. An Estonian OÜ gives all of that one invoicing entity and one set of books, instead of a tax return that tries to explain five income types at once. It's a weaker fit if you have exactly one employer, no side income, and no plan to ship anything of your own — there's nothing here for you to incorporate yet.
- One OÜ can invoice app stores, Stripe, GitHub Sponsors and contract clients at once — you don't need a separate entity per product.
- Apple and Google are the "deemed supplier" for VAT on app and in-app purchases in the EU, so you don't file OSS on that revenue — only on sales you process yourself through Stripe, Lemon Squeezy, or a direct checkout.
- Running cost: €708/year (Xolo Leap Starter at €59/month ex VAT, verified against xolo.io/pricing on 30 October 2026).
- Retained profit is taxed at 0%. Distributions go through the 22/78 formula — 22% of the gross dividend (source: emta.ee, verified 30 October 2026).
- Coding nights and weekends while employed full-time somewhere else doesn't exempt you from permanent establishment risk — your employer's country is still where the work happens.
I've run contract work and product income through the same Estonian OÜ since 2016, and I've watched enough indie hackers in my Citizen Circle community do the same across three or four revenue streams at once. The part nobody warns you about isn't the company — it's realizing each income source has its own payment rail, its own VAT treatment, and its own idea of what counts as a valid invoice.
Why developers choose Estonia over a local sole-trader setup
A developer's income rarely comes from one place. App Store royalties, a SaaS side project on Stripe, a GitHub Sponsors tier, and a contract gig can all land in the same month, and most countries' sole-trader registrations assume you have one activity and one client type. An Estonian OÜ doesn't care: it invoices anyone, holds any mix of digital and contract income, and reports all of it through one set of annual accounts.
The second reason is EU standing. Stripe, Lemon Squeezy, and most payment platforms want a verifiable company with a VAT number and a public registry entry — not a freelancer operating under a personal tax ID that doesn't exist in a business register. An OÜ gives you that without opening a Delaware company or a Stripe Atlas entity, which solve a US-specific incorporation problem you don't have.
If you're not sure your side project will ever make real money, don't register a company for it yet. Xolo Go runs at €0/month with no company — a pay-as-you-go way to invoice through Xolo's own entity while you find out whether the product is worth incorporating for.
Running several products through one company
You don't need a separate legal entity per app, SaaS tool, or open-source project. The OÜ invoices by client and by revenue stream, not by product — a mobile app's App Store payout, a web tool's Stripe subscriptions, and a one-off freelance invoice can all run through the same company dashboard without conflict.
What changes between products is the VAT treatment, not the entity. A subscription you bill directly through Stripe to EU consumers crosses into OSS territory above €10,000 a year (source: emta.ee, verified 30 October 2026) — covered in full in the EU VAT & OSS guide. A sale that goes through an app store usually doesn't, because the store itself is the one filing VAT on that transaction.
How app stores handle VAT so you don't have to
Apple and Google are both treated as the "deemed supplier" under EU VAT rules for consumer app and in-app purchases — meaning the store itself is legally the seller to the end customer, and it charges, collects, and remits the VAT. Google states this directly: "Google is responsible for determining, charging, and remitting VAT for all Google Play Store purchases of digital content and services by EU customers using Google Play's billing system" (source: support.google.com, Google Play VAT policy, verified 30 October 2026). Apple applies the same deemed-supplier treatment under the EU's electronic-interface VAT rules.
This is the one piece of good news in an otherwise fragmented VAT picture: revenue that only ever passes through an app store's own billing doesn't belong in your OSS return, because you never collected the VAT in the first place. The store's cut already includes it.
This protection stops at the store's own billing system. If a user pays through your website, a web-based checkout inside the app, or an alternative billing option outside Apple's or Google's system, you are the seller again and OSS rules apply the normal way. Check which payment path each sale went through before assuming the store handled the VAT.
GitHub Sponsors, Open Collective and sponsorship income
Sponsorship money is business income the moment it lands in a company account, not a gift. If your GitHub Sponsors or Open Collective payouts go to your OÜ, invoice them the same way you'd invoice a client — the fact that a sponsor didn't ask for anything specific in return doesn't change how the tax authority classifies the income once it's inside a company.
The practical mistake is mixing this up: letting sponsorship money sit in a personal account "because it's not really a client," while the rest of your product revenue runs through the company. Pick one entity for everything you build and sponsor-fund, and reconcile it the same way every month.
What a developer year actually costs
Here's a real mixed-income shape: €45,000 from app and product sales (net of what app stores already took their own cut from) plus €25,000 from contract development work, €8,000 in business expenses — hosting, API costs, developer program fees, a laptop — and no employees.
| Line | Amount |
|---|---|
| Revenue (products + contract work) | €70,000 |
| Business expenses | −€8,000 |
| Provider (Xolo Leap Starter, 12 × €59) | −€708 |
| Profit before distribution | €61,292 |
| Corporate tax on profit left in the company | €0 |
| Dividend taken out (net to you) | €35,000 |
| Estonian corporate income tax on that dividend (22/78) | €9,872 |
| Left in the company, untaxed | €16,420 |
Rates: 0% on retained profit, 22% on distributed profit applied as 22/78 on the net amount (source: emta.ee, verified 30 October 2026). The €9,872 is paid by the company on top of the €35,000 that reaches you — it isn't deducted from your payout.
Typical setup for a developer running multiple products
| Component | Choice | Cost |
|---|---|---|
| Pre-revenue testing | Xolo Go | €0/month, pay-as-you-go (percentage fee per invoice, no company) |
| Service provider, once it's real | Xolo Leap Starter | €59/month ex VAT |
| Business banking | Wise Business | €0/month, ~€50 one-off setup |
| Payment processing | Stripe, direct app-store payouts | Varies — see payment processing guide |
| Invoicing, accounting, VAT filing | Included with Xolo | €0 |
Xolo's Leap Starter tier integrates directly with Stripe, PayPal, Wise, Revolut and Payoneer (verified against xolo.io/pricing on 30 October 2026) — which matters here specifically, because a developer with three payout sources needs them all landing in one reconciled dashboard, not three separate exports.
A W-8BEN-E is standard paperwork, not a problem signal. US platforms — app stores, Stripe, some sponsorship tools — often ask a non-US company to file one before paying out. It certifies your OÜ as a foreign entity for US tax purposes. Expect to fill one out once per platform, not once per payment.
Moonlighting and the permanent establishment risk
Registering an Estonian company doesn't move your side project to Estonia — you're still coding from wherever you actually live, most evenings and weekends, for most of the year. If your country of residence decides your OÜ has a permanent establishment there because that's where the work genuinely happens, your side-project profits become taxable locally regardless of where the company is registered.
This risk doesn't go away because you also hold a full-time job elsewhere. A fixed home office, consistent hours, and one person doing all the development work is the same fact pattern that trips up any solo founder — your employment status doesn't change how a tax authority reads where the company's value is created. Read CFC Rules & Permanent Establishment by Country before you assume incorporating abroad changes anything about where you're taxed.
When I started taking on contract work alongside my own products in the mid-2010s, I assumed the Estonian registration itself was the thing that mattered for tax purposes. It isn't — where you're sitting when you do the work is. The company structure is about having one clean entity to invoice from, not about relocating your tax residency.
Common mistakes developers make
- Treating app-store revenue and direct-sale revenue the same way for VAT. One is handled by the store as deemed supplier; the other is your OSS obligation. Mixing them up means either filing for sales you didn't need to, or missing filings you did.
- Letting sponsorship income sit outside the company. If product revenue goes through the OÜ, sponsorship money from the same work should too.
- Registering a full company before a side project earns anything. Xolo Go exists for exactly this stage — test the idea before paying €708 a year to manage a company around it.
- Ignoring a non-compete or moonlighting clause from a day job. This is a contract problem, not a tax one, but it can undo a side project faster than any VAT mistake.
- Assuming a different employment status changes permanent establishment exposure. It doesn't. What matters is where the work physically happens, not who else pays you.
Which provider, and why
I recommend the Xolo Go-to-Leap path specifically for developers, and I've used Xolo since 2017. The reasoning here is about the two-product structure: Go lets you invoice through Xolo's own entity while a product is unproven, and Leap Starter at €59/month ex VAT takes over once you're ready to own the company, the equity, and the retained profit yourself.
The direct Stripe, PayPal and Payoneer integrations matter more for this audience than for a single-client freelancer, because a developer with app-store payouts, a Stripe subscription, and the occasional contract invoice has three rails to reconcile every month — not one. Full breakdown on the Xolo provider page, and the numbers next to Companio and 1Office in all service providers compared.
My #1 Recommendation
Xolo
From €59/month ex VAT“Contract work and product income through the same dashboard since 2017. The part that actually saves time is not having three separate books for three separate payout sources.”
Start with Xolo— €100 new customer bonusAffiliate link. I receive a commission at no extra cost to you.
How to get started
Total time from application to your first invoice is 5–10 weeks, most of it waiting for the e-Residency card.
- Test the idea on Xolo Go — no company, no commitment, see if the income is real
- Apply for e-Residency — €150 state fee, roughly 30 days to approval plus 2–5 weeks for delivery → How to Apply
- Run the PE risk check, especially if you're still employed full-time elsewhere → PE Risk Checker
- Choose a provider → Choosing a Provider
- Register the company — €265 + €25 ex VAT in state fees → Company Registration
- Open Wise Business and connect your payout sources → Banking Setup
Frequently asked questions
Do I need to file OSS VAT on my App Store or Google Play revenue?
No. Apple and Google are the deemed supplier for consumer app and in-app purchases under EU VAT rules — they charge and remit the VAT themselves. OSS applies to sales you process yourself, for example through Stripe or your own checkout, once you cross €10,000 a year in cross-border EU consumer sales.
Is GitHub Sponsors income taxable the same way as client invoices?
Yes, once it lands in a company account. Business income is business income regardless of whether the payer is a client, a platform, or a sponsor — invoice it and report it the same way as any other revenue through the OÜ.
Can I run a side project through an Estonian company while employed full-time elsewhere?
Yes, subject to your employer's own moonlighting or non-compete terms, which is a contract question, not a tax one. Your employment status doesn't change your permanent establishment exposure — see CFC Rules & Permanent Establishment by Country.
Do I need a separate company for each app or product I ship?
No. One Estonian OÜ can invoice and hold revenue from as many products, platforms and clients as you have capacity to run. Separate entities add cost and admin without a tax or legal reason to split them.
What's a W-8BEN-E and why did a US platform ask for one?
It's a US tax form that certifies your Estonian company as a foreign entity rather than a US taxpayer. US app stores, payment platforms and some sponsorship tools request it before paying out — it's routine paperwork, not a sign something is wrong.
Continue reading
- EU VAT & OSS for Estonian Companies — The threshold and filing rules for sales you process yourself
- Getting Paid: Stripe, Wise & PayPal — How each payout rail actually works for an Estonian OÜ
- CFC Rules & Permanent Establishment by Country — What changes if you're moonlighting from a fixed base
- e-Residency for SaaS Founders — Where this overlaps once one product becomes the main business
- Xolo — A decade on the platform, including the Go-to-Leap path