Programming Line · Complete course capstone

Fictional Retail Analysis

January–March 2026 · Asia/Kolkata calendar reporting · INR

Decision brief

Describe net merchandise revenue, recorded channel mix, and monthly activity in the accepted export. Identify evidence needed before evaluating profit or incremental acquisition return.

INR 241,124.20 net merchandise revenue

239 accepted orders; 224 non-cancelled orders; net AOV INR 1,076.45.

Decision memo

  1. The question is how recorded net merchandise revenue is distributed across channels and local calendar months.
  2. The largest recorded channel total is organic, with INR 83,110.30.
  3. This is synthetic observational teaching data; channel comparisons are not causal estimates and no advertising spend or cost of goods is available.
  4. Obtain verified costs, exposure, coverage, and longer customer history before deciding on profitability, incremental marketing effects, or first-ever retention.
  5. Rebuild with python pipeline.py --out outputs/final-report and verify with python -m pytest -q.

Quality audit

{
  "input_rows": 244,
  "exact_duplicates": 2,
  "rejected_rows": 3,
  "accepted_rows": 239
}

One anonymous-customer order is retained in revenue. Invalid monetary, timestamp, and quantity records are excluded by the declared contract; exact redeliveries are removed. No real customer records are present.

Channel KPIs

Money columns ending in _paise use integer paise; net_aov_inr uses INR. Customer counts overlap across channels and must not be summed.

channel orders net_paise identified_customers net_aov_inr
email 75 8045280 47 1,072.70
organic 75 8311030 47 1,108.14
paid 73 7596310 47 1,040.59
unknown 1 159800 1 1,598.00

Calendar-month KPIs

February 2026 has 28 days; January and March each have 31. Totals and daily rates answer different questions.

month accepted_orders eligible_orders net_paise
2026-01 83 78 8664690
2026-02 75 70 6749790
2026-03 81 76 8697940

Regional reconciliation

Unknown region retains the anonymous checkout rather than discarding its revenue.

region accepted_orders net_paise
East 59 7155660
North 59 1637130
South 60 4370050
Unknown 1 29900
West 60 10919680

Metric contract and reproducibility

One accepted row per order; integer paise; net merchandise revenue = units * unit_price_paise - discount_paise - refunded_paise; cancelled orders contribute zero. Net AOV uses non-cancelled orders, including returned orders. Tax, shipping, item costs, and advertising spend are absent.

{
  "orders_sha256": "e75574cca90fb1bcdd173775a64899b3b67e783748a58a62e25109a5cd788596",
  "customers_sha256": "5377e0bde9d559afb167e76bf4735576779a9264e9f7f10190f1660dac5bc7a7",
  "python": "3.12.14",
  "pandas": "3.1.0",
  "reporting_timezone": "Asia/Kolkata",
  "accepted_orders": 239,
  "eligible_orders": 224,
  "net_paise": 24112420,
  "metric_contract": "One accepted row per order; integer paise; net merchandise revenue = units * unit_price_paise - discount_paise - refunded_paise; cancelled orders contribute zero. Net AOV uses non-cancelled orders, including returned orders. Tax, shipping, item costs, and advertising spend are absent.",
  "data_origin": "Fictional, deterministic teaching fixture; not a real business sample"
}

All data is fictional and supplied for practice. This report is an educational artifact, not evidence about an actual store.