Protechoms
EnterpriseIn progress

Protechoms

B2B workwear and PPE e-commerce platform with dotation management, budgets and complex order workflows.

Fullstack developer on a B2B e-commerce platform specializing in workwear and personal protective equipment distribution. Backend built on Sylius with a massive customization layer (1000+ custom PHP files).

Backend: developed a complete dotation system (equipment allocation per wearer with size profiles, job positions, sectors and templates), B2B account hierarchy (group accounts, client accounts, managers, buyers with privilege delegation), B2B pricing engine (contract pricing per account and variant, scoped discounts, tiered promotions), budget system with real-time control (buyer budgets and lot budgets), and a dynamic order validation engine with configurable rules.

Built a comprehensive import/export framework with 13 data sources (accounts, products, stock, pricing, delivery notes, invoices) and 46+ transformers, bidirectional SFTP synchronization with the ERP. Integrated Stripe and Monetico for payments, TNT for shipping, Elasticsearch for product search and faceting, and Gotenberg for PDF generation (orders, invoices, wearer sheets).

Implemented multi-provider SSO authentication (Google, Microsoft, Trustelem/OIDC), brute-force protection system (login strike/ban), async processing via Symfony Messenger (order validation, cancellations, Elasticsearch indexing, email dispatch), and 27 CLI commands for data management and automated imports.

Frontend Next.js: built the full e-commerce flow with B2B specifics (account selection, budgets, per-wearer dotations, quotes), admin dashboard (product, buyer, manager, dotation, workflow, SFTP configuration management), and dynamic CMS pages via Payload with 10+ editorial block types. Multi-language (FR, EN) and multi-country (France, Belgium).

Repositories

protechoms-apibackend
PHPSymfonySyliusAPI PlatformDockerGitLab CI/CDGitGitLabProjeQtOrKubernetesStripePHPUnitPHPStanDoctrinePHP CS FixerRedisElasticsearchDocker ComposeREST APIOAuth 2.0JWTPhpStormSonarQubeXdebugDomPDF
protechoms-frontfrontend
TypeScriptJavaScriptNext.jsReactDockerGitLab CI/CDGitGitLabFigmaTanStack QueryZustandZodKubernetesNginxGoogle Maps APIAxiosReact Hook FormPanda CSSDocker ComposepnpmESLintPrettieri18nextSharp
protechoms-cmscms
Node.jsTypeScriptJavaScriptNext.jsReactDockerGitLab CI/CDGitGitLabZodKubernetesMongooseMongoDBDocker ComposeRancherpnpmPayload CMSESLintPrettier

Gallery