Document withdrawal endpoints and guide - #430
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CdjhFUoc96H4BT53YwUm8E
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
|
Claude encountered an error after 2m 13s —— View job Code review in progress
|
|
|
|
||
| ## Overview | ||
|
|
||
| Sometimes a deposit can't be filled: it was flagged by screening, sent in the wrong currency or on the wrong chain, or the order failed after the deposit landed. Those funds sit in the [Depository](/references/protocol/components/depository) until the original depositor reclaims them. [relay.link/withdraw](https://relay.link/withdraw) is a thin frontend over three public API endpoints, and your app can drive the same flow directly. |
There was a problem hiding this comment.
Compliance-blocked deposits are presented as recoverable
The overview says that a deposit flagged by screening can be reclaimed through these public endpoints, and the eligibility instructions later treat protocol.isWithdrawable as the recovery criterion without excluding BLOCKED_WALLET. This selects a blocked-wallet request for attestation and withdrawal even though the execution-errors reference says those funds are subject to compliance review and are not automatically refunded. Explicitly exclude BLOCKED_WALLET from this flow and direct integrators to the required review or support process regardless of isWithdrawable.
Artifacts
PR source diff showing the new withdrawal guide eligibility language
- Captured `git diff HEAD^ HEAD` for the two requested documentation paths, showing the guide was introduced with screened deposits and isWithdrawable recovery guidance; the takeaway is that the candidate language is in this PR.
Focused validation script source
- Captured the numbered Python validation script that reads the two documentation files and exercises the reported eligibility decision; the takeaway is that the execution checks only the requested contradiction.
Executed BLOCKED_WALLET eligibility validation output
- Captured execution of the focused validation with a BLOCKED_WALLET request and isWithdrawable true, which selected the public flow and reported the compliance-review contradiction; the takeaway is that the defect is confirmed.
There was a problem hiding this comment.
Two documentation issues to address:
- P2 — XRP support is omitted (
references/protocol/guides/withdrawals.mdx:29, 120–125, 169). The withdrawal API and worker support XRP user withdrawals and auto-broadcast them like TON, but XRP is absent from both the supported-chain list and signing/broadcast guidance. Either document the XRP signing flow and note solver broadcasting, or explicitly reject XRP in the API. - P2 — Not every
failedjob should be retried (references/protocol/guides/withdrawals.mdx:163). The guide says to restart after any failure, but terminal reasons includeblocked_walletandchain_disabled; repeatedly preparing cannot resolve those. Recommend inspectingreason, retrying only recoverable failures, and directing terminal cases to Support.
Mintlify deployment and link validation pass. The failed Claude check was infrastructure-only: it exhausted its turn limit without producing findings.
Code review in progress
|

No description provided.