Run it yourself
cd examples/marketplace-mercatto
npm install
npm run typecheck
npm run test:happy-path
npm run test:scenarios
Requiere Node.js ≥ 18. Por defecto esto corre contra el Sandbox público real de Ishtaran
(https://sandbox-api.ishtaran.com) — sin credenciales que configurar. Cada corrida provisiona su
propia Organization, Application, y Accounts, con un namespace determinado por un run ID derivado
del timestamp actual, así que corridas repetidas nunca colisionan ni tocan los datos de Sandbox de
nadie más.
Para apuntarlo a una instancia local en su lugar:
export MERCATTO_BASE_URL=http://localhost:18100 # or wherever your local API is running
npm run test:happy-path
Lo que vas a ver
Salida real, no texto ilustrativo — cada ID es distinto en tu propia corrida, la forma no:
=== release-order (settlement) ===
[release-order] settlementId=… settledAmount=200.000000000000000000 remainingReservedAmount=0.000000000000000000
=== withdraw (expected real block -- see withdraw.ts) ===
[withdraw] blocked as expected (activation cooldown): WITHDRAWAL_DESTINATION_NOT_USABLE
Mercatto happy path: all assertions passed.
Una nota sobre dónde vive este código ahora mismo
Este Business Case vive actualmente en el repositorio privado de la plataforma Ishtaran, en
examples/marketplace-mercatto/. Cada SDK oficial (Java, TypeScript, Python, Go) se refleja en su
propio repositorio público de GitHub — este ejemplo todavía no está sincronizado a una ubicación
pública. Si estás leyendo esto en el sitio de documentación público sin acceso al repositorio
privado, trata los bloques de código a lo largo de este tutorial como el código fuente literal,
completo y ejecutable (son extractos textuales, no paráfrasis) hasta que exista esa sincronización.
Release gate
La misma suite que produjo la salida de arriba es la que bloquea cada release de SDK y cada
release de la plataforma: mercatto-e2e en .github/workflows/ci.yml. Si el camino feliz de este
Business Case o cualquiera de sus 11 escenarios de fallo dejan de pasar, el release se bloquea —
esto no es una demo de marketing, es una prueba de regresión para la corrección financiera real de
la plataforma.