Status: the dedicated export endpoints described below (CSV, JSON, signed PDF dossier) are coming. In the interim, per-intent records are retrievable via the existing compliance snapshot endpoint
GET /api/v1/compliance/orders/{intent_id}, which returns the full signed FXOrder + attestations. Batch downloads and signed PDF dossiers are on the roadmap.Export formats
- Daily / weekly reconciliation (CSV)
- Monthly compliance archive (JSON)
- On-demand regulator dossier (PDF)
One row per settled intent over the date range. Columns match accounting needs:
Status: coming. Interim: the per-intent snapshot endpoint returns the equivalent data one intent at a time.
| Column | Description |
|---|---|
intent_id | FXOrder UUID |
transaction_hash | Atomic DvP settlement proof — one hash covers all four legs |
settled_at | ISO 8601 timestamp |
source_currency / source_amount_actual | What left your custody (sender) or what the sender paid (receiver) |
target_currency / target_amount | What the receiver got |
fx_rate | Executed rate |
sender_party_id / receiver_party_id | Canton identities |
originating_vasp_code / beneficiary_vasp_code | IVMS 101 VASP codes |
jurisdiction_sender / jurisdiction_receiver | For reporting routing |
Filtering
Planned filters:- Date range —
from/toonsettled_at - Status — filter to SETTLED, or include FAILED / EXPIRED for operational reviews
- Institution — limit to a specific
sender_party_idorreceiver_party_id - Jurisdiction — limit by
jurisdiction_senderorjurisdiction_receiverfor per-regime reporting - Currency pair — limit to JPYSC0 → USDCx, etc.
Consuming exports
Once exports land, your compliance archive picks them up via your existing ingestion — whatever you already use for ingesting daily reconciliation from your KYC / sanctions / Travel Rule providers. Musubi retains the on-ledger record for 10 years independently of what your internal archive does; the dual-retention model means a regulator subpoena can be answered from either side. See Audit Trail.Interim: per-intent snapshot
Until the batch endpoints ship, you can retrieve one intent at a time:Next steps
- Deploy the backend if you haven’t — see Deploy
- Ops team workflow — see Console
- Need real-time, not scheduled? — see Programmatic Access
- How records age and are retrieved by regulators — see Audit Trail