Flipkart Marketplace Platform  ·  View 07 of 25  ·  3 · Structure

Layered Architecture

What depends on what, and the one dependency that points the wrong way.

Editable source SVG draw.io All views
Experience Android app Kotlin iOS app Swift Mobile web React PWA Seller app React Care console Rider app offline first Edge and API Front Door + WAF Azure Front Door Customer BFF Envoy Gateway Partner API API Management Identity Keycloak Quota and bot defence Redis token bucket Discovery domain Catalog Search OpenSearch Recommendation Pricing Promotions Reviews Commerce domain Cart Checkout Inventory Order Payments PCI scoped Buy Box Seller, supply and trust Seller Fulfilment Logistics Returns Settlement Trust and fraud Platform services Event backbone Kafka Stream processing Flink Saga engine Temporal Cache and locks Redis Feature store Feast Notification Data and cloud foundation Sharded OLTP Citus PostgreSQL Catalog store Cosmos DB Search index OpenSearch Lakehouse Iceberg on ADLS Real-time OLAP Apache Pinot AKS + Istio Azure Kubernetes HTTPS / JSON OAuth2 client gRPC gRPC reserve raw topics sync read Layered Architecture — What Depends on What Application we own Interface / broker Security / platform Queue / topic Data store synchronous event / async failure / alternate Dependencies point down. The one red arrow is the exception the platform still carries: notification reads order state synchronously instead of consuming it. v 1.0 · owner Enterprise Architecture · date 2026-09

Decisions

  • Seven layers, dependencies downward only, and no layer may skip more than one below it
  • Discovery, Commerce and Seller/Supply are separate domain layers because they scale, fail and are staffed differently
  • Platform services sit below the domains: a domain may use Kafka, but Kafka may not know about orders

The red arrow

  • Notification reads order state synchronously to build message context — an upward call, drawn rather than hidden
  • Cost of the debt: a notification outage cannot take orders down, but an order-service slowdown delays messages
  • Fix on the roadmap: enrich the order event so the notification payload is self-contained

Deliberately omitted

  • Most edges — the ones drawn are representative of a layer crossing, not a complete call graph
  • Ads, ONDC adaptors and the internal tooling estate
  • Language and runtime detail, which is on the container view