Skip to main content
Stabyl may hold a confirmed crypto deposit until Travel Rule information is submitted. The deposit is visible in wallet transaction reads, but funds are not available while the transaction has status: "hold" and required_action.type: "travel_rule".

Detecting The Action

Read wallet transactions as usual:
When required_action is present, call GET on the submission_url to read the required fields, then POST the answers to the same path. The URL is relative to your API base URL and is the same in transaction reads and in the deposit.action_required webhook:
Reading the requirements needs wallets:view. Submitting them needs wallets:transfer, the same scope as recipient management. A successful submission returns 202 Accepted.

Collected Fields

Allowed purpose values are personal_transfer, business_payment, goods_or_services, investment_or_savings, and other. sender_originator must be 2 to 140 characters after trimming, and sender_country must be exactly three letters; it is stored upper-case. Unknown fields are rejected. The requirements response includes those purpose values as field options, so clients can render the select control directly from the API response.

Status Changes

After the user submits the form, required_action.status becomes submitted. The deposit remains unavailable until Stabyl completes clearance and credits the wallet. Once credited, required_action is omitted from transaction responses.