Skip to main content
Most institutions use scheduled downloads — see Statements. This page is for institutions wiring Musubi into a TMS/ERP (Kyriba, SAP, Oracle) or with real-time reconciliation needs that can’t wait for batch exports.
Musubi exposes REST + SSE APIs and (coming) a webhook callback. Most treasury systems prefer push webhooks over long-lived SSE; SSE is available for services that can keep a streaming connection open.

When to use this

  • You’re wiring Musubi into a TMS or ERP (Kyriba, SAP S/4HANA, Oracle TRM, etc.)
  • Your accounting posts trades to the GL in real time
  • Your treasury automation initiates orders based on internal rules (payment schedules, sweep triggers)
  • You’re building a custom treasury dashboard
If none of those apply, Console + Statements is the simpler path.

Authentication

JWT bearer token, typically refreshed every hour. Full details: Authentication. Cache the token, refresh ~60 seconds before expiry, retry once on 401 after a forced refresh.

Integration modes

REST — order initiation

For institutions automating order initiation (e.g., scheduled payments from a TMS): Request/response shapes: API Reference.

TMS/ERP integration notes

  • Idempotency — key accounting posts by intent_id + transaction_hash. Webhook retries or SSE reconnects can replay events.
  • Reconciliation — match intent_id back to your internal payment reference (store it as a memo prefix or in your own ID mapping table).
  • FX posting — post the JPYSC0 out-leg at source_amount_actual × fx_rate equivalent, and the USDCx in-leg at target_amount. The transaction_hash is your settlement proof.
  • Cost-guard policy — set source_amount_max from your treasury risk rules, not from the UI. Orders exceeding the guard return SLIPPAGE without settling.

Other stacks

Same patterns apply:
  • Nodefetch for REST; EventSource (native) or eventsource package for SSE; express/fastify HMAC-verifying webhook handler
  • Pythonhttpx or requests for REST; httpx-sse for SSE; Flask/FastAPI with hmac.compare_digest for webhooks
  • KotlinWebClient + ktor-client-cio works

Next steps

  • For institutions not automating, the Console + Statements path covers the same workflow without code — see Console and Statements.
  • Full endpoint reference — API Reference.