Best Tarief Office
Nine energy and telecom providers, one form.
A contract platform for a Belgian broker: one intake, nine providers' real PDF forms filled, signed with eID and pushed into the CRM.
- providers integrated
- 9 providers integrated
- languages, end to end
- 3 languages, end to end
- signing and identity
- eID signing and identity
- Role
- Architecture, build, maintenance
- Period
- 2022 — now
- Stack
- Laravel Vue Horizon PDFtk AWS S3 amoCRM Mailgun
The problem
A broker switching a household's energy and telecom fills in the same customer details on nine different providers' forms, each with its own layout, its own fields and its own idea of what a connection request looks like. Done by hand it is an afternoon per customer and a typo per form. The forms themselves are not negotiable — they are the providers' own PDFs, and they have to come out the other end looking exactly as the provider expects.
How it works
One intake collects the customer once. For each provider it is settled which detail belongs in which box on its form, and the filled documents are merged into a single packet to sign. Signing happens with the customer's eID; the signed packet is archived, mailed out, and carried straight into the CRM so the sales side sees it without anybody re-keying it.
What is in it
Nine providers, one intake
Engie, Luminus, Eneco, Mega, Octa+, Proximus, Telenet, Scarlet and Orange, plus energy transfers and connection requests. Each has its own implementation, so a tenth provider is a day's work rather than a rewrite.
Real provider PDFs, filled
What comes out is the provider's own form with its own boxes filled in — not a lookalike that resembles it. A provider that will only accept its own document gets its own document.
eID signing and archiving
Identity from the Belgian eID, signatures through a recognised signing service, and the completed packet stored safely — with a clean-up that removes the working files by itself afterwards.
Three languages, one customer record
Dutch, French and English throughout, down to the contracts themselves. In Belgium that is not a nice-to-have — a Walloon customer signs a French contract.
CRM without re-keying
The amoCRM link runs both ways, so a contract created in the platform is immediately a record in the CRM and the sales team never types an address twice.
Watched, and resendable
Generating, merging and sending the PDFs happens in the background, so nobody sits watching a loading screen. A failed send stays visible rather than disappearing, and re-sending is one button rather than an afternoon.
The trade-off
Every provider gets its own implementation, even where two forms look nearly identical. The temptation is one general model with a settings table, and it survives exactly until one provider renames one box mid-year for one product. Repetition that follows a real boundary between two companies is not repetition worth removing.
Something like this on your list?
The projects differ, the way of working does not. Tell me what you are trying to solve.
Taking on new work