File a Guest EU Withdrawal
About
The createGuestEuWithdrawal mutation records an EU right-of-withdrawal declaration for a guest order. Ownership is proved by supplying the order increment id together with the email used on the order. The declaration is created with status received and the durable-medium confirmation email is sent.
Filing is idempotent — a second call for the same order returns the existing declaration instead of creating a duplicate.
Authentication
This mutation requires only the storefront key — no customer token. See the Authentication page.
The channel must have withdrawal enabled
Filing only works when EU right of withdrawal is switched on for the channel the order belongs to. The setting is off by default. When it is off the mutation fails with the same not-found message an unknown order produces, so check the configuration before assuming the identifiers are wrong — see the overview.
Input Fields
| Field | Type | Required | Description |
|---|---|---|---|
orderIncrementId | String! | ✅ Yes | The human-readable order number of the guest order. |
email | String! | ✅ Yes | The email address used on the guest order. |
reasonText | String | ❌ No | An optional reason for withdrawing. |
Possible Returns
| Field | Type | Description |
|---|---|---|
guestEuWithdrawal._id | Int! | Numeric declaration ID. |
guestEuWithdrawal.uuid | String! | Stable public identifier for the declaration. |
guestEuWithdrawal.orderId | Int! | Numeric ID of the order the withdrawal applies to. |
guestEuWithdrawal.orderIncrementId | String! | Human-readable order number. |
guestEuWithdrawal.isGuest | Boolean! | Whether the declaration was filed on a guest order. |
guestEuWithdrawal.customerEmail | String! | Email address tied to the declaration. |
guestEuWithdrawal.status | String! | Declaration status: received, declined, refunded. |
guestEuWithdrawal.reasonText | String | The reason the shopper supplied, or null. |
guestEuWithdrawal.receivedAt | DateTime | Timestamp when the declaration was received. |
guestEuWithdrawal.confirmationSentAt | DateTime | Timestamp when the confirmation email was sent, or null. |
guestEuWithdrawal.createdAt | DateTime! | Declaration creation timestamp. |

