Skip to content

Kinetix

A real-time e-commerce and fulfilment platform, documented from the code outward — for engineers who build against it, and for engineers who want to learn distributed backend design from a system that actually runs.

Kinetix runs catalogue, checkout, payment, warehouse fulfilment and courier dispatch as independent services. Each service owns its data and its database. Services talk to each other over gRPC, against contracts defined once in kinetix-contracts. Outside traffic enters through a single Kong gateway, and identity is the only service that decides who a caller is.

These pages explain why it is built that way, what each service is responsible for, and the contracts between them. Every page is written against the code it describes and links to that code at a fixed commit, so what you read is what runs.

Building against Kinetix

Contracts, endpoints, authentication and error semantics for clients and integrations.

Learning backend from Kinetix

Real problems — overselling, double charges, partial failure across services — and the code that solves them, step by step. Assumes you know HTTP, SQL and one backend language.

Service Owns Language
identity Accounts, authentication, tokens, merchant approval TypeScript
catalog Products and categories Python
pricing Prices, discounts, vouchers, flash sales, shipping rates Rust
order Cart, checkout, orders, returns C#
payment Payments, escrow, wallet Java
warehouse Bin inventory, stock reservation, fulfilment tasks Ruby
matching Courier allocation and dispatch Elixir
review Product reviews PHP
notification Customer notifications Scala
communication Real-time chat C++
search Product search Go

Around them sit the API gateway (Kong), the courier app (Flutter) and the contracts (Protocol Buffers) every service conforms to.