Full source
O código de cada capítulo acima é um trecho real destes arquivos — nunca uma "versão da
documentação" mantida separadamente. Eles vivem em examples/marketplace-mercatto/ no repositório
da plataforma Ishtaran.
examples/marketplace-mercatto/
├── fixtures.ts # as constantes fixas da história
├── client.ts # fábrica de client ciente de ambiente (Sandbox, ou uma stack local)
├── setup.ts # Capítulo 2 — Setup
├── seller-onboarding.ts # Capítulo 3 — Seller onboarding
├── create-order.ts # Capítulo 4 — Creating an order
├── pay-order.ts # Capítulos 5-6 — Accepting payment / Holding funds
├── confirm-delivery.ts # Capítulo 7 — Confirming delivery
├── release-order.ts # Capítulo 8 — Settlement and Split
├── withdraw.ts # Capítulos 10-11 — Seller balance / Withdrawal
├── GAPS.md # toda limitação real da plataforma que este caso encontrou
├── README.md # como as peças se encaixam
├── scenarios/ # Capítulo 12 — os 11 caminhos reais de falha/alternativos
│ ├── settlement-partial.ts # Capítulo 9 — Partial Settlement
│ └── … (mais 10, veja o Capítulo 12)
└── tests/
├── happy-path.e2e.ts # a sequência exata que este tutorial percorre
└── scenarios.e2e.ts # roda e reporta sobre os 11 cenários
Nada aqui é um resumo simplificado: tests/happy-path.e2e.ts literalmente importa e chama
setup(), onboardParticipants(), createOrder(), payOrder(), confirmDelivery(),
releaseOrder(), checkSellerBalance(), e attemptWithdraw() — as mesmas funções mostradas nos
Capítulos 2 a 11 — e então valida invariantes financeiros reais no resultado (Gross = Fee + as
distribuições, valores exatos do Split, saldos reais, estados corretos de Transaction). Se uma
mudança na plataforma quebrar essa história, esse teste falha e o release é bloqueado.