Client work · anonymized
Contractor-Matching Lead Platform
A multi-language B2B platform connecting Belgian homeowners with verified contractors — built on .NET 9 Blazor with Stripe payments and automated lead routing.
Homeowners in Belgium looking for the right contractor have no shortage of options — the hard part is trust and fit. This platform sits in the middle: homeowners describe a job, and verified contractors receive matching leads for their region, on a platform that works in their language.
Solution & architecture
The application is a multi-language B2B web platform on .NET 9 with Blazor Interactive Server, backed by EF Core on SQL Server and shipped in Docker. Interactive Server keeps every form, validation rule, and role-gated flow in C# end to end — there is no separate API layer to keep in sync for the web UI, which matters on a product with this much stateful, validation-heavy input.
Payments run through Stripe. Transactional email — lead alerts, account flows — goes out through the Microsoft Graph API rather than raw SMTP.
Key technical decisions
- Contractor verification against VIES. A contractor’s VAT number is validated against the EU’s VIES registry, so “verified” on this platform means verified against an official source — not a self-declared badge.
- Postal-code lead routing. Leads are matched to contractors by postal-code coverage, which keeps matching deterministic, explainable, and easy to tune per region.
- QR-coded 2FA. Account security uses QR-code-based two-factor authentication on top of the standard identity flows.
- Blazor Interactive Server over a SPA + API split. One stack, one deployment, server-side rendering by default — the fastest path to a correct, multi-language product.
Outcome
The platform is live in production, serving homeowners and contractors across Belgium in multiple languages. Client identity is withheld by agreement; the technical story above is the real one.