Marca is built for the person who closes payroll on Friday afternoon, not the person who buys software. The first customer's card-based punch clock was dying, and every pay period meant opening a drawer of stiff paper cards, some smudged, one missing a stamp because the mechanical clock had jammed again, and retyping them into a payroll portal while hoping the math held. Marca replaces that ritual. Employees punch on a wall-mounted kiosk with large touch targets and a bilingual interface (English and Spanish, set per employee). Administrators see hours accumulate in real time, fix mistakes through corrections that leave the original record alone, and close a pay period in minutes with an export file the payroll provider accepts on the first try. The product runs as a cloud subscription for small businesses or installs on a customer's own hardware for organizations that need their employee data to stay inside the building. Either way the daily experience is identical: punch, review, correct, close, export.
The Challenge
Card-based punch clocks were aging out, and the manual workflow downstream was the real cost. Each Friday meant transcribing dozens of paper cards into a payroll site, where a transposed digit became a wrong paycheck and a frustrated employee. The deeper problem was structural: there was no canonical record of who worked when, so disputes turned into archaeology and the file the bookkeeper uploaded each week could not be reconstructed from any single source. The buyer's real problem was not "we need a clock," it was that payroll had no defensible paper trail. The product had to feel obvious to a non-technical front-desk admin while staying audit-grade underneath, and it had to work both as a hosted service and as a self-contained appliance for customers who keep their employee data on-site for compliance or preference.
Our Solution
The architectural commitment is that hours worked are a derived value computed from an append-only ledger of punches, not a number a manager types into a grid. Punches are append-only at the database grant level, so corrections create a visible second record instead of overwriting the first. Employee rates are time-versioned with overlap-preventing exclusion constraints, which means a raise on the fifteenth produces correct math on both sides of the change without manual splits, and a payroll run computed for March uses the rates that were active in March. The period-close pipeline pairs punches, deducts lunch, handles the midnight boundary, applies rounding rules, calculates overtime, and writes the export file as a derived result rather than a hand-edited spreadsheet. Export adapters for Gusto, ADP, and Paycor are written as plain functions, so adding a new payroll provider does not touch the database. The same Docker image runs as a cloud SaaS or as an on-premises install, switched by an environment variable and a signed license file, with no parallel code paths to maintain.
Results
Tech Stack
Want Similar Results?
Let's discuss how we can build something great for your business.

