SB

Product · 2026 · 01 / 10

Hisab Digital.

Morocco's 2026 e-invoicing mandate, turned into a product small businesses can actually run on a Tuesday.

Launch Project

- Context

Hisab Digital is a B2B e-invoicing platform for Moroccan SMEs and the accountants who serve them, built ahead of the DGI's 2026 electronic-invoicing mandate. The site positions it plainly: "Morocco's modern e-invoicing platform. Compliant, fast, and built for SMEs and accountants." Invoices are issued in French and Arabic, exported as UBL 2.1, cleared against DGI rules, and written into a ten-year immutable archive with SHA-256 integrity chains - the same contract the tax authority is moving everyone toward, wrapped in an interface that doesn't punish the person using it.

- Approach

I treated compliance as a feature flip, not a project. The DGI schema is the Prisma schema; invoices, payments and archive rows are just projections of that log. tRPC and zod sit at every boundary so the typed contract carries all the way from the database to the button. Postgres stays boring in the middle, Next.js 16 and Tailwind v4 do the visible work at the edge, and the multi-organization console lets one accountant run ten client entities without switching accounts. The goal was never to ship the most features in the category - it was to ship the thing an accountant can still read six months from now, when the mandate phases in and the rules tighten.

- Outcome

Hisab is live in private beta with paying pilot customers issuing real DGI-shaped invoices today. Pricing starts at 124 MAD/month on Starter and scales to an Accountant tier built for multi-entity bookkeeping. Public launch tracks the DGI's 2026 rollout - the plumbing (clearance, archive, signatures) was built assuming the mandate lands, so every invoice issued in beta already meets the format. The next twelve months are about widening the beta, closing the first hundred paying organizations, and being the Moroccan-built option when the larger phase-ins hit small and mid-size firms.

- The numbers

30+

Private beta pilots

8k

Invoices issued in beta

< 5 min

Time to first invoice

SHA-256 · 10 yr

Archive integrity

- Process

  1. 01

    Schema-first

    The DGI invoice contract lives in the Prisma schema before anything else exists. Every screen, export and API surface is a projection of that log, so the law and the code move together.

  2. 02

    DGI alignment

    UBL 2.1 and CII are treated as the source of truth, not an export target. Clearance-ready payloads get signed and archived on issue, so the day the mandate flips, nothing in the app has to change.

  3. 03

    Typed boundaries

    tRPC at every seam, zod at every edge. No loose REST, no untyped forms. If the schema shifts, the compiler finds the rot before a customer does.

  4. 04

    Closed beta, boring infra

    Postgres in the middle, Next.js 16 at the edge, one region to start. I'd rather a small room of accountants using it daily than a landing page measuring intent.

  5. 05

    Billing that earns its fee

    Pricing sits under what a bookkeeping hour costs, and the product has to pay that back every month. Starter, Pro, Accountant, Enterprise - the accountant tier runs ten client entities from one console.

- Gallery

- Credits

Product & build
Salah Boussettah

- Next

 3D Interactive Portfolio

Experiment · 2025

© Salah Boussettah · MMXXVIصلاحMorocco · GMT+1