Skip to content

This guide covers enabling Travel Rule compliance in Ripple Custody using Notabene.

Travel Rule (Notabene) and transaction screening (Chainalysis/Elliptic) can be used independently or together. For maximum compliance coverage, enable both—when both are enabled, transactions must pass both checks before execution.

Prerequisites

Complete these steps before contacting Ripple:

Ripple Custody requirements

  • Ripple Custody v1.30 or later
  • Compliance domain configured (contact your partner engineer if not already set up)

Register with Notabene

Register as a VASP with Notabene and complete their onboarding process:

  1. Create account at notabene.id and complete KYB verification
  2. Set up your DIDdoc for VASP discovery and PII encryption (see Notabene's DID documentation)
  3. Obtain API credentials (client_id and client_secret) for both sandbox and production.

Notabene registration typically takes 1-2 weeks. Start this process early.

Information to gather

Have the following ready for your Ripple partner engineer:

ItemDescription
Notabene credentialsclient_id and client_secret for sandbox and production
VASP DIDYour decentralized identifier (e.g., did:web:your-domain.com)

Configure with Ripple

Work with your Ripple customer partner engineer to complete the following.

1. Provide Notabene credentials

Your Ripple partner engineer will configure the Notabene provider connection in Ripple Custody.

You must provide:

  • Notabene client_id and client_secret
  • Environment: sandbox (for testing) or production
  • Your VASP DID

Share credentials securely. Do not send via unencrypted email.

2. Register wallet addresses

Your Ripple partner engineer will register your wallet addresses with Notabene. You can also register addresses yourself through the Notabene Dashboard or API.

For bulk registration, see Notabene's Relationships API.

New wallets created after setup are registered automatically.

Verify setup

After configuration, verify the integration:

  1. Create a Travel Rule message using the API:

    POST /v1/domains/{domainId}/compliance/travel-rule/providers/{provider}/messages

    Replace {provider} with the configured provider name (for example, notabene). Confirm suggestedIntentId is returned.

  2. Submit PII if required for the transfer.

  3. Create a transfer intent using the suggestedIntentId from step 1.

  4. Check the compliance decision — verify the transaction is approved, rejected, or flagged as expected.

  5. Test incoming transfers — send a test transaction to a registered address and confirm:

    • Funds are quarantined
    • Travel Rule check initiates
    • Funds release when approved