Skip to content

This workflow covers detecting and processing incoming deposits with Travel Rule compliance. Ripple Custody automatically handles most of this process.

Prerequisites

Process flow

NotabeneCustodyBlockchainNotabeneCustodyBlockchainalt[Travel Rule message exists][No Travel Rule message]alt[Screening failed][Screening passed or not configured]alt[AUTO_APPROVED][AUTO_REJECTED or NEED_EXPLICIT_DECISION]1. Incoming transfer detectedFunds quarantined2. Screen risk (if configured)AUTO_REJECTED (no Travel Rule check)3. Check for existing Travel Rule messageReturn message dataCreate Travel Rule message4. Compliance decision5. Release fundsNotify settlementFunds remain quarantined
NotabeneCustodyBlockchainNotabeneCustodyBlockchainalt[Travel Rule message exists][No Travel Rule message]alt[Screening failed][Screening passed or not configured]alt[AUTO_APPROVED][AUTO_REJECTED or NEED_EXPLICIT_DECISION]1. Incoming transfer detectedFunds quarantined2. Screen risk (if configured)AUTO_REJECTED (no Travel Rule check)3. Check for existing Travel Rule messageReturn message dataCreate Travel Rule message4. Compliance decision5. Release fundsNotify settlementFunds remain quarantined

Step 1: Transaction detection and quarantine

When an incoming transaction is detected on the blockchain, Ripple Custody automatically:

  1. Detects the incoming transfer.
  2. Quarantines the funds pending compliance checks.

No action required — this is automatic.

Step 2: Risk screening

If transaction screening is configured (Chainalysis or Elliptic), Ripple Custody screens the transaction first.

  • If screening fails (high risk score): The transaction is immediately rejected. No Travel Rule check occurs.
  • If screening passes: The workflow proceeds to the Travel Rule check.

Step 3: Travel Rule check

Ripple Custody checks Notabene for an existing incoming Travel Rule message for this transaction:

  • If a Travel Rule message exists: The message data is retrieved from the originating VASP.
  • If no Travel Rule message exists: Ripple Custody creates a Travel Rule message with basic settlement address information.

Step 4: Compliance decision

Ripple Custody evaluates the results:

Screening ResultTravel Rule ResultDecision
ApprovedApprovedAUTO_APPROVED
RejectedAUTO_REJECTED (Travel Rule skipped)
ApprovedRejectedAUTO_REJECTED
InconclusiveInconclusiveNEED_EXPLICIT_DECISION

If only one check is configured (screening only or Travel Rule only), the decision is based on that single check.

Step 5: Fund release or rejection

If AUTO_APPROVED:

  1. Funds are released from quarantine.
  2. After on-chain settlement, Notabene is notified.

If AUTO_REJECTED:

  1. Funds remain quarantined.
  2. Notabene is notified of rejection.

If NEED_EXPLICIT_DECISION: Funds remain quarantined. Manual review is required in Ripple Custody (see below).

Handle "no data" scenarios

When an incoming transfer arrives but the originating VASP has not provided Travel Rule data, the transfer may enter NEED_EXPLICIT_DECISION status, requiring manual handling.

Manual approval or rejection

After manual review in Ripple Custody, the compliance team can approve or reject the transfer:

  • Approved: Funds are released and Notabene is notified after on-chain settlement.
  • Rejected: Funds remain quarantined and Notabene is notified of rejection.

Next steps