Skip to main content

What happened

Your payout required a Travel Rule message to the receiving institution, but the institution rejected it before the on-chain broadcast. No funds were moved. The payout is in a terminal failed state with failureCode: travel_rule_rejected.

Common causes

  • Unrecognized beneficiary — the receiving institution could not match the destination address or account to a known entity
  • Policy mismatch — the originating or beneficiary information did not meet the receiving institution’s compliance requirements
  • Unsupported corridor — the receiving institution does not accept Travel Rule messages for the requested corridor

Recovery

This is a terminal state. The payout cannot be recovered; a new payout must be submitted.
1. Inspect the failure detail Read the payout to get the failureMessage field, which carries the institution’s rejection reason when one was provided:
The failureMessage is the institution-supplied reason (if present). When absent, contact your account manager for the raw rejection detail. 2. Investigate the destination Verify the destination address is associated with a regulated custodian that participates in Travel Rule messaging. Unhosted wallets or unsupported custodians cannot be matched during the Travel Rule exchange. 3. Submit a new payout to a different destination Once the issue is resolved, submit a new payout with a corrected or alternative destination:

Prevention

  • Verify destination eligibility — confirm the destination address belongs to a custodian that supports Travel Rule before submitting high-value transfers
  • Handle transaction.failed with this code — use failureCode === 'travel_rule_rejected' to branch on this specific terminal state and surface the failureMessage to the relevant party
The transaction.failed event fires when the payout terminates:
failureMessage carries the institution-supplied reason when one was provided. When absent, the rejection had no machine-readable message.