Withdraw from a contract
request_withdrawalElectronic withdrawal (Paragraph 356a BGB), two steps. Step 1: withdrawal = {order_id (ord_...) or order_number, buyer: {email, name (optional)}, statement (optional)} returns a summary with a request id (wrq_..., valid 30 min) and expires_at; nothing is declared and the shop is not contacted yet. Step 2, only after the buyer explicitly confirmed: withdrawal_id = wrq_... + confirm = true declares the withdrawal; the result carries the reference (wdr_...) and received_at (receipt confirmation), and the shop sends a confirmation of receipt by e-mail. Works even while ordering is paused (consumer right). meta.idempotency-key is required.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "request_withdrawal"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | ||
| confirm | No | Step 2: true, only after the buyer explicitly confirmed. | |
| withdrawal | No | Step 1: {order_id | order_number, buyer: {email, name?}, statement?}. | |
| order_token | No | Optional order token from complete_checkout. | |
| withdrawal_id | No | Step 2: request id (wrq_...) from step 1. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ucp | Yes |