Authenticate: POST https://auth.notabene.id/oauth/token with {"grant_type": "client_credentials", "client_id": "YOUR_CLIENT_ID", "client_secret": "YOUR_CLIENT_SECRET", "audience": "https://api.notabene.id"} to obtain a Bearer token
Discover the beneficiary VASP: GET https://api.notabene.id/tf/simple/vasps?address=<destination_address> to determine if the address belongs to a registered VASP in the Notabene network; capture the beneficiaryVASP DID
Create the Travel Rule transaction: POST https://api.notabene.id/tf/transaction with IVMS101-structured body including originator (naturalPerson or legalPerson with primaryIdentifier, accountNumber), beneficiary (name fields), originatingVASP DID, beneficiaryVASP DID, asset, amount, and blockchain txHash (if known)
Encrypt PII fields using the Notabene PII SDK with the beneficiary VASP's public key before including them in the payload — the SDK handles ECIES encryption
Poll GET https://api.notabene.id/tf/transaction/{transactionId} and wait for status ACK_ACCEPTED (or the jurisdictionally required equivalent); REJECTED status means the beneficiary VASP has declined to accept the transfer
Once ACK_ACCEPTED, proceed with on-chain broadcast (if not already sent) and update the Notabene transaction with the txHash via PUT /tf/transaction/{transactionId}
Known gotchas
FATF Travel Rule thresholds vary significantly by jurisdiction: USD $3,000 in the US (FinCEN); no threshold (all transactions) in the EU under TFR; no threshold in Japan; SGD 1,500 for broader data in Singapore; CAD 1,000 in Canada — always apply the threshold of the stricter jurisdiction (originating or beneficiary)
The Notabene tfSimpleListVASPs API searches Notabene's own directory; VASPs reachable only through TRUST (Coinbase-operated network) or OpenVASP require separate discovery — implement multi-network lookup for comprehensive coverage
PII encryption is mandatory even between VASPs on the same network; transmitting unencrypted IVMS101 data violates GDPR and most national data protection frameworks and exposes you to regulatory liability independent of Travel Rule compliance
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp