CLIENT: Carrasca Ingeniería🇪🇸Spain

Acequia - Multi-country Payroll Console Over Four Local Engines

Payroll Orchestration for a Spanish Engineering Group

Designed and built a clickable payroll orchestration console for a Madrid engineering group paying about 1,550 people in Spain, Portugal, Italy and Morocco: one tracker for every country's run from input cut-off to paid and filed, validation and variance review before approval, and payment batches that only a second person can release.

Scope of Work
Product design, UI build and clickable demo
Industry
HR & Payroll / Multi-country Payroll
Enterprise
Compliance & Certifications
GDPRLaw 09-08 (Morocco)EU Pay Transparency DirectiveSEPA Credit Transfer (ISO 20022)Sistema RED and modelo 111 (Spain)Segurança Social and DMR (Portugal)F24, UniEmens and LUL (Italy)CNSS and IR (Morocco)

Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.

Impact

5 Screens
Clickable end to end

Dashboard, pay runs, the run cockpit with 8 tabs (overview, inputs, validation, results, variance, payments, files and activity), payment batches and the batch detail with its release flow.

9 Steps
One stepper for every run

Inputs, cut-off, validation, sent to partner, results, variance, approved, paid and filed, each with its planned date, actual date and who completed it, for all four countries side by side.

Maker-checker
On every payment batch

The treasury maker submits and a different treasury approver releases after a 6-point pre-release checklist. Batches above €1,500,000 also need the CFO.

17 Pay Runs
Realistic demo data

4 countries, 4 legal entities and payroll partners, 12 payment batches in EUR and MAD, 11 validation issues, 8 staff users and 40 sample employees in the result registers.

The Problem

Carrasca grew by buying small engineering firms, and each country kept the payroll set-up it came with. Every month the Madrid payroll lead chased inputs by email from 40 HR contacts and managers, re-keyed them into four partner templates and compared each partner's results to last month in a spreadsheet. Payment files were built by hand in each bank's e-banking site by the person who prepared them, and nobody could say mid-month which country was late or whether a filing had been paid.

Our Solution

Acequia runs the process around each country's own payroll engine or partner without calculating tax itself. It tracks every run from input cut-off to paid and filed, blocks a run until validation and variance are cleared, routes the run cost to finance for approval, and generates SEPA and Moroccan payment batches that a second person must release.

The Challenge: Four Countries, Four Payroll Set-ups

Spain runs payroll in-house, Portugal uses a payroll bureau, Italy a consulente del lavoro and Morocco a fiduciaire. Each has its own engine, calendar, filings and currency, and the group still needs one view and one standard of control.

Inputs Chased by Email

Salary changes, bonuses, overtime, leave and expenses came from 40 HR contacts and managers by email and were re-keyed into four different partner templates. Two late bonus inputs in 2025 led to off-cycle runs.

Results Nobody Could Check Quickly

Each partner's register came back in its own format, and the comparison to last month lived in a spreadsheet. Nobody could quickly explain why the Portuguese payroll cost had jumped 6%.

Payments Without a Second Person

Payment files were built by hand in each bank's site by the same person who prepared them. One fraudulent bank-detail change email nearly diverted a salary. Euro pay goes by SEPA credit transfer, Moroccan pay in MAD by local bank transfer.

Filings on Different Rules

Spain settles contributions through Sistema RED and declares IRPF on modelo 111, Portugal files with Segurança Social and the AT by the 10th, Italy pays the F24 by the 16th and reports to INPS through UniEmens, and Morocco declares to the CNSS and pays IR to the DGI monthly.

Our Approach: From Payroll Rules to a Clickable Console

01

Spec and Rules Research

Mapped 11 user roles from global payroll lead to treasury approver, partner users and employees, 42 screens across the staff console and a mobile-first employee portal, and the data model for pay calendars, runs, inputs, versioned validation rules, partner files, results, payment batches, GL journals and filing records. Wrote down the rules the design follows for Spain, Portugal, Italy and Morocco, SEPA payments, the GDPR and Morocco's Law 09-08, and the EU Pay Transparency Directive.

02

Clickable Demo on a Production UI Kit

Built 5 key screens on a production dashboard kit: the dashboard with a country run tracker, My work by role and needs attention, pay runs with a new off-cycle run form, the run cockpit with validation, variance drill-down and step actions, and payment batches with a pre-release checklist, approval chain and masked payment lines. A country switcher filters every screen, an account switcher changes who may act, and all actions run on local state.

03

What a Production Build Adds

Integration with the HRIS, time and attendance, SAP Concur, each country's engine (a3innuva Nómina, Cegid Primavera, Zucchetti and Sage Paie), SFTP file exchange, host-to-host pain.001 and pain.002 with the banks, Dynamics 365 Finance and ECB and Bank Al-Maghrib rates. Entra ID sign-in with MFA, an append-only audit log, verified bank detail changes with a cool-off, and the remaining screens: calendar, approvals, filings, GL journals, payslips, reports, settings and the employee portal.

Why It Works: Control Without Replacing the Engines

Every Country on One Line

The dashboard shows each country's run on the same 9-step stepper with its next deadline and an on track, at risk or late chip. Needs attention lists missed milestones, old blockers, overdue partner files and batches awaiting release, each linked to its page.

Blocked Steps Say Why

Send to partner stays blocked while pre-payroll blockers are open, and Submit for approval stays blocked while variance lines need a comment. Accepting a warning needs a reason, and the cockpit shows what is still holding the run.

Variance Explained Line by Line

Results are compared to last period by element and by employee against a threshold of 10% or €500 (MAD 5,000 in Morocco). Starters, leavers and matched inputs explain most lines; the rest need a comment or a query to the partner.

No File Leaves Alone

Only a treasury approver who is not the maker can release a batch, and the screen says so. Accounts are masked, and each line shows its end-to-end id, and SEPA batches show the bank's pain.002 status report with any rejected payments and their re-payment batch.

Related case studies

View all: HR & payroll
Logo
Oceanlab

Enterprise Software Engineering - Human + AI

Languages

Locations

Global Headquarters

21 Merchant Road, 3rd Floor, Singapore 058267

Main corporate office and leadership operations

North America Office

548 Market Street, PMB 12345, San Francisco, CA 94104

Client operations and business development

India Office

402 Shivalik Shilp II, SG Highway, Ahmedabad 380015

Engineering and delivery center

© 2026 - Copyright. All Rights reserved Oceanlab