Ecuadorian payroll inside your Odoo. It does not exist for 19 yet, and I am building it.
Your company can run sales, purchasing, inventory and accounting on Odoo Community without paying a licence per user. When payday comes, Odoo drops out: the Payroll app is an Enterprise one, and none of the free pieces that exist today knows how to work out an IESS social-security contribution, a statutory bonus or a reserve fund under Ecuadorian law.
That is what I am building: the Ecuadorian rule set on top of the community's free payroll engine, which already has a branch for Odoo 19. It is not finished, and this page will not pretend otherwise: further down you will find what already works, what is missing, and the date on which you stop waiting for me at no cost.
Three launch places. From USD 39 a month per company, with all your users, and the setup is not charged until your first payroll run goes out of your own Odoo.
An Ecuadorian company already working in Odoo Community has its accounting inside and its payroll outside. It is not a disaster: it works. What it costs is this.
The spreadsheet only one person understands
The payroll run is put together in a spreadsheet somebody inherited, with formulas nobody else has reviewed. When that person is away in payday week, the company finds out all at once how much depended on them.
The usual case
Staff cost is typed in a second time
The run ends up in accounting as a summarised journal entry somebody keys in once a month. If a figure has to be corrected afterwards, the entry never hears about it, and the month's staff cost stops matching what was actually paid.
Accounting
Every benefit is rebuilt from scratch
The statutory bonuses, the reserve funds, the holidays and the profit share do not come out of one month: they come out of accumulated balances. Every time one falls due, somebody walks back through months of separate spreadsheets, and a month added up wrongly in March shows up in December.
Accumulated balances
The evidence is not where it gets looked for
When someone queries a figure, when an employee leaves, or when an inspection arrives, a payment made two years ago has to be reconstructed from whatever survived in somebody's email and folders.
When someone asks
The usual ways out are three: pay for Odoo Enterprise, which charges a licence per user; buy a separate payroll system and key the journal entry across by hand; or stay in the spreadsheet. All three work and none of them is a mistake. What none of them does is leave payroll in the same place where the accounting already lives, with the same people, the same chart of accounts and the same backups.
02
What it calculates
The full monthly run, each item with the rule of law behind it. This is what goes in, described by what it does rather than by the name of a field.
IESS social-security contributions
The employee's share, withheld from the payslip, and the employer's share, paid by the company, on each person's contributable pay and according to the sector they belong to. The payslip shows both separately and the journal entry sends each one where it belongs: one is a deduction, the other is a cost.
The thirteenth and fourteenth salaries
Ecuador pays two statutory extra salaries. The thirteenth accrues on what the person earns through the year (article 111 of the Labour Code); the fourteenth is the same for everybody and falls due on a date that depends on the region where they work (article 113). Both are worked out in either of their two legal forms: accumulated until their due date, or spread monthly inside the payslip, according to what each employee has asked for in writing.
Reserve funds
The entitlement starts after the first year of service (article 196 of the Labour Code), and the module knows it from each contract's start date, so nobody has to remember. It also carries both forms: paid month by month in the payslip, or accumulated at the IESS, which is the employee's choice and not the company's.
Holidays
The days each person has earned, the days already taken and the days left, with a provision month by month so the cost appears when it is earned and not when somebody goes away. When an employee leaves, the outstanding balance is already there and does not have to be reconstructed.
Profit share
The 15 % of net profit that the Labour Code requires to be shared out, with its split in two parts (article 97): 10 % among all employees according to the time worked during the year, and the remaining 5 % in proportion to each one's family dependants. The module takes the time on each contract and the dependants on record, and leaves the detail person by person for the minute.
Income tax withheld from employment
Ecuadorian employers withhold income tax monthly against a yearly projection. The module projects each person's income and the personal expenses they declare, applies the relief their family situation gives them, and withholds month by month instead of landing it all in December. When the projection changes mid-year, the calculation is redone from that point, and the yearly summary each employee needs comes out of it.
Overtime and supplementary hours
Hours worked beyond the ordinary day, with the surcharge that article 55 of the Labour Code sets, which is not the same depending on the hour, the day of the week and whether it is a rest day. They are recorded per person and per date and reach the payslip already priced.
Loans and advances
IESS loans deducted through payroll, salary advances and the company's own loans, each with its balance, its instalment and its end date. The deduction goes into the run on its own until the balance reaches zero, and the employee sees on their payslip how much is left.
The payslip, the entry and the payment
The individual payslip each person signs and the month's consolidated run; the journal entry in the same accounting you already use, broken down by cost centre; and the payment summary, both for the employees and for what goes to the IESS and to the tax authority. Without keying anything into a second system.
There is not a single percentage, threshold or table on this page, and that is deliberate: those values change every year and some change mid-year. Each one lives inside the module next to the rule that sets it, and keeping them current is exactly what the monthly plan pays for. If anyone publishes the percentages on their sales page, check the date before trusting them.
03
Where it stands today
I am asking you to buy something that is not finished, so the status comes in full and it comes before the price. This is what there is as of 23 September 2026, and it moved a long way this week.
It calculates
The monthly run, the benefits and the final settlement
The whole monthly payroll run: pro-rated wage, daytime and night-time supplementary hours, overtime, the surcharge on casual contracts, commissions, employee and employer social security contributions, the two statutory extra salaries in both of their forms, reserve funds, holidays, social security loans and salary advances with their legal cap. Separately, the accrued thirteenth and fourteenth salaries — the fourteenth with the different cycle that applies in the highlands and the Amazon against the coast and the islands — holiday pay on leaving, the profit share with its 10 % by days worked and its 5 % by dependants, and the monthly income tax withholding with personal expenses treated as a rebate on the tax, which is how the law works after the reform and not how many spreadsheets still do it. And the final settlement with the grounds set out in article 169: notice bonus, dismissal compensation with its bands and its cap, and the deduction for abandonment.
It can be checked
Every figure with its law, and a test watching it
One hundred and eighty-nine automated tests passing, plus the twenty-seven of the community engine, which the localisation does not break; and five hundred and eighty counting the whole workshop, which my continuous integration re-runs on every change. Every rate for the 2026 tax year carries beside it the rule it comes from — ministerial agreement, social security resolution or article of the Labour Code — with its official gazette reference and the date it was consulted. And there is a test that fails the whole battery if anyone adds a rate without saying where it came from. What could not be verified against an official source was not invented: it was left empty, and any payroll run that needs it stops and says what still has to be looked up.
It goes in without breaking anything
Installed over real books, not over an empty database
A test battery runs on a freshly created database, with the stock chart of accounts and nothing else. That says the arithmetic is right; it does not say the module goes into the books of a company that has been running for a year, with its chart edited by hand, its journals and its two hundred modules on top. So that was tested too: my own books are cloned, the production ones, with SRI electronic invoicing installed, payroll is installed on the copy, and what is left is counted. One thousand four hundred and fifty-six journal entries and three thousand four hundred and forty-two lines before, the same after: not one moved. It is the same script that can be run against a copy of yours before anything is touched.
In progress
What turns the arithmetic into a month of work saved
The journal entry, the files the social security institute, the Ministry of Labour and the wage portal expect, and the annual income tax forms for each employee. Getting the arithmetic right is half of it; the other half is your people not having to retype anything into another portal. Today those filings are done by hand, from the detail the module produces.
Missing
And I am not going to pretend otherwise
The test that actually counts: a real payroll, for a real company, closed and agreed with its accountant. Reading the law is not the same as having run payrolls, and until a statutory salary, a profit share and a settlement have gone through for real, nobody knows what is still absent. That is exactly what the three launch places are buying. There is a second item and I mention it because you will come across it: the same social security resolution that sets the employer contribution at 11.15 % carries an annex, the one for 2021 onwards, whose split across the individual schemes adds up to 10.97 %. What is loaded is 11.15 %, which is what the operative article sets, what the institute publishes today broken down scheme by scheme, and what actually gets filed. The annex is not a different rate: it is a distribution schedule whose arithmetic does not add up. An enquiry to the institute stays on the list out of prudence, not as a blocker.
I am not publishing a delivery date. I cannot stand behind one in front of you today, and I would rather say so here than have you read it in an email three months from now. What I do publish is how you hear about it and how long you wait.
Every two weeks I write you three things: what was finished, what is missing and what moved. No decoration and no pretty screenshots. If something slips, you hear it the day it slips, not on delivery day.
And there is a cut-off date: if by 31 January 2027 your first payroll run has not gone out of your Odoo, I return the deposit in full and you owe me nothing. That date is not the delivery date; it is the date on which you stop waiting for me at no cost.
What I looked for before writing this page: as of 23 September 2026 I did not find any Ecuadorian payroll published for Odoo 19. The community's Ecuadorian localisation carries no payroll and its newest branch is 18. There are one-person repositories out there for older versions. If you find one that suits you and is maintained, use it: you are hearing that from the person trying to sell you his.
04
The launch places, and the price
You pay per company, not per user, exactly as with electronic invoicing. What is different from every other page on this site is when you pay: the deposit now, the setup on the day your first payroll run goes out, and the monthly plan from that same day.
USD 39 a month
Payroll run
Up to fifteen people on the payroll. The full monthly run: earnings and deductions, employee and employer contributions, overtime and supplementary hours, loans and advances, the two statutory salaries and the reserve funds in either of their forms, holidays, income tax withheld against each employee's declared personal expenses, the individual and consolidated payslips, and the entry in your own accounting. Setup: USD 290.
USD 69 a month
Full payroll
Up to forty people, several branches and several cost centres. Everything above plus the profit share with its detail per person, final settlements when someone leaves, and the summaries your accountant needs for the IESS filings and for each employee's annual statement. Setup: USD 390.
Tailored
Over forty, or a special regime
More than forty people, several companies on the same Odoo, a migration from another payroll system with its accumulated balances, or a sector with rules of its own. Quoted after a fifteen-minute call, and if it does not suit you I will say so on that call.
Launch: the first three companies get the first payroll run done together, with their accountant on the call and the month's close reviewed; the loading of their staff history at no cost, meaning contracts, salaries and accumulated balances for the statutory salaries, reserve funds and holidays; the plan price frozen for as long as it stays active; and priority in the build order for whatever they ask for that the law requires. It is not a discount: the published price is the one that stays once the three places are gone. In return I ask for two concrete things, and they are worth reading before you write to me: patience with deadlines I cannot promise today, and half an hour every two weeks to tell me what the payslip you have just received is still missing.
How it is paid: the place is held with USD 90, which comes off the setup. The rest of the setup is paid on the day your first payroll run goes out of your Odoo, and the monthly plan starts running that same day, not before. If by 31 January 2027 that run has not gone out, I return the USD 90 in full. The monthly plan is cancelled whenever you want, with no lock-in, and stays active until the last day of the month you paid for; pay for the year and two months are free. Under my tax regime, RIMPE Negocio Popular, my services are invoiced with VAT at 0 %, so the figure is the final one. Full conditions in the refund policy.
05
How it starts
01
Fifteen minutes to see your case
How many people, in which sector, on what kinds of contract, who puts the run together today and which version of Odoo you work with. If your case does not fit what I am building, you hear it here and you hold nothing.
02
The place held and the Odoo ready
With the deposit, everything that does not depend on the module is prepared: the engine installed on your Odoo 19, the payroll accounts and cost centres, and the contracts and people loaded with their balances up to date.
03
One month run in parallel
Before anything changes, the month is calculated in the module and compared against your current spreadsheet, person by person and item by item. Every difference is explained one by one; the ones that belong to the module get fixed.
04
The first payroll run, together
The run is issued in your Odoo with your accountant on the call, the journal entry is checked against your accounting, and you keep the guide so your own people do it alone the following month. That is the day the monthly plan starts.
06
What it does not include
What is out, said before you pay, which is when it is of any use.
Electronic payroll filing
There is none here because I did not find it required in Ecuador: electronic payroll is a Colombian obligation before the DIAN, not an Ecuadorian one before the SRI, and companies there have a page of their own. If the SRI ever creates it, it comes in like any other change in the rules while your plan is active, and you would hear it from me the day it is published.
Sectors with rules of their own
The public sector, construction, farm and banana work, domestic work, performers, professional drivers and fishing have their own rules, their own tables or their own ministerial agreements. The launch places do not cover them. If your company is in one of those sectors, say so on the call: it is quoted separately and with its own timeline, or I tell you no.
What belongs to your accountant and to the Ministry
Registering people at the IESS and filing joiners and leavers, submitting and paying the contribution returns, the final settlement record on the Ministry of Labour's own system, and the judgement of which item counts as remuneration and which does not. The module calculates, keeps the detail and produces the supporting documents; filing, paying and signing remain your company's and your accountant's, with their responsibility.
What I do not do
Recruitment, employment contracts, employment law advice, defending you in an inspection, or time and attendance with a biometric clock. Hours go into the module; where those hours come from is another project and is quoted separately.
07
Frequently asked
Why buy something that is not finished?
For three reasons you can check: you pay neither the setup nor the plan until your first payroll run goes out of your Odoo; the price stays frozen for you while the plan is active; and whatever your company needs, if the law requires it, is built before anything else. If none of that pays for the wait, then wait: when it is finished it will still be here, and you buy it then.
Why believe you will finish it?
Because of what is already done and already running. The Ecuadorian localisation is already on Odoo 19: eleven modules with five hundred and eighty automated tests passing, re-run by my own continuous integration on every change, and its electronic invoicing is installed on my own company's production Odoo. Colombian withholding tax is in production on the same Odoo. Payroll is being built with that same method. The working repository is private, so I am not going to tell you that you can watch it move: what you get is the note every two weeks and, the day it is installed, the whole codebase on your server.
Can we run payroll on Odoo Community today, without this?
Not really. Odoo's Payroll app is an Enterprise one, charged per user. The community's free engine does exist and has a branch for Odoo 19, but it ships empty of rules: somebody has to write Ecuador's, which is precisely what I am doing. What you can do today is record people, contracts and time off, and post the cost by hand.
Who owns the code?
It is free software under the AGPL-3 licence and it is installed on your server: yours to use and to modify, and not dependent on my still being around. What is charged for is the setup, keeping the rules current and the support.
What happens when the minimum wage, a table or a rate changes?
While the plan is active, the change is applied on your installation at no extra cost. That is the reason there is a monthly plan and not a single payment: in payroll, the figure that is right today stops being right in January.
We already have electronic invoicing with you. Do they join up?
Yes, and it is the simplest case: same Odoo, same company and same accounting, so the payroll entry lands where your invoices and withholdings already are. The two plans are paid for separately and each is cancelled separately. If you do not have invoicing yet, it is on SRI electronic invoicing in Odoo Community.
What if we grow from fifteen to twenty people?
You move to the next plan from the month you go over the limit, and you hear it from me when I see it on your own payroll run, not when the invoice arrives. There is no backdated charge and no new setup.
What do we need to have to start?
Odoo 19 Community with your accounting running, your people's current contracts and salaries, and this year's accumulated balances: statutory salaries, reserve funds and holidays. If you are coming from another payroll system, those balances come out of it and I load them.
08 /
Take a launch place
Tell me how many people you have on the payroll, which sector your company is in and how the run is put together today. I reply within one business day, and if your case does not fit the launch you hear it in that reply.