---
title: "Cancel draft transfer"
method: DELETE
path: "/v2/business-accounts/draft-transfers/{draftTransferId}"
tags: ["Draft Transfers API"]
---

# Cancel draft transfer

`DELETE /v2/business-accounts/draft-transfers/{draftTransferId}`

## Request

- Base URL: `https://api.mollie.com`
- URL: `https://api.mollie.com/v2/business-accounts/draft-transfers/{draftTransferId}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://my.mollie.com/oauth2/authorize`
    - Token URL: `https://api.mollie.com/oauth2/tokens` scopes: `business-account-draft-transfers.write`

> 🚧 Beta feature
>
> This feature is currently in beta testing, and the final specification may still change.

Cancels a draft transfer created via this API. Transitions the draft transfer to `declined` with
`statusReason.code` set to `deleted-by-creator`.

Only draft transfers created via this API, and still in `pending-review`, can be cancelled this way. A
`422` is returned if the initiator has already started approving it.

In test mode, this always returns a synthetic `declined` draft. See [Create draft
transfer](create-draft-transfer) for how to simulate `approved` and `declined` outcomes.

## Headers

- `idempotency-key` string

## Request body

- object
  - `testmode` boolean, nullable: Most API credentials are specifically created for either live mode or test mode, in which case this parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`. Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.

## Response `200`

The cancelled (declined) draft transfer object.

- DraftTransferResponse
  - `resource` string: Indicates the response contains a draft transfer object. Will always contain the string `business-account-draft-transfer` for this endpoint.
  - `id` string
  - `mode` 'live' | 'test': Whether this entity was created in live mode or in test mode.
  - `debtorIban` string: The IBAN of the debtor's (sender) Mollie Business Account.
  - `debtor` DraftTransferParty: A party involved in the draft transfer, representing either the debtor (sender) or creditor (recipient). Contains the party's name and account details.
    - `fullName` string, required: The full name of the account holder.
    - `account` object, required: The bank account details of the party.
      - `iban` string, required: The IBAN (International Bank Account Number) of the account holder.
  - `creditor` DraftTransferParty: A party involved in the draft transfer, representing either the debtor (sender) or creditor (recipient). Contains the party's name and account details.
    - `fullName` string, required: The full name of the account holder.
    - `account` object, required: The bank account details of the party.
      - `iban` string, required: The IBAN (International Bank Account Number) of the account holder.
  - `amount` Amount: In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field.
    - `currency` string, required: A three-character ISO 4217 currency code.
    - `value` string, required: A string containing an exact monetary amount in the given currency.
  - `description` string, nullable: A short description of the draft transfer. Once approved, this will appear on the bank statement of both the debtor and creditor.
  - `scheduledExecutionDate` string, date, nullable: The date on which the resulting transfer will be executed, once approved. Defaults to same-day if omitted, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date format.
  - `status` 'pending-review' | 'approved' | 'declined': The status of the draft transfer.
  - `statusReason` DraftTransferStatusReason, nullable: The reason for the draft transfer's current status. `null` unless `status` is `declined`.
    - `code` 'deleted-by-creator' | 'declined-by-initiator' | 'account-closed', required: A machine-readable code that indicates the reason for the draft transfer's current status.
    - `message` string, required: A human-readable explanation of the status reason. For `declined-by-initiator`, this includes the initiator's free-text reason when they provided one.
  - `createdAt` string: The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
  - `approvedAt` string, nullable: The date and time the draft transfer was approved, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. `null` unless `status` is `approved`.
  - `declinedAt` string, nullable: The date and time the draft transfer was declined by the initiator, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. `null` unless `statusReason.code` is `declined-by-initiator`.
  - `deletedAt` string, nullable: The date and time the draft transfer was deleted via the [Cancel draft transfer](cancel-draft-transfer) endpoint, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. `null` unless `statusReason.code` is `deleted-by-creator`.
  - `testmode` boolean, nullable: Whether to create the entity in test mode or live mode. Most API credentials are specifically created for either live mode or test mode, in which case this parameter must not be sent. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
  - `_links` object: Links to related resources.
    - `self` object, required: The URL to this draft transfer.
      - `href` string
      - `type` string

## Other responses

- `404`: No entity with this ID exists.
- `422`: The draft transfer cannot be cancelled. Only draft transfers with status `pending-review` can be cancelled.
- `429`: Rate Limit has been reached.

## Changes

> 102 revisions in range; 9 not diffed.

- **2026-09-11** `72604f3ea2bb`: 1 warning
  - removed the optional property `allOf[#/components/schemas/entity-draft-transfer-response]/_links/documentation` from the response with the `200` status
- **2026-08-19** `3fb1b5127a6b`: 1 info
  - endpoint added
- **2026-07-22** `5cfbcb209e9f`: 1 breaking
  - api path removed without deprecation
- **2026-07-17** `54f1f8f63657`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/mollie/apis/mollie-api/changes/v2/business-accounts/draft-transfers/:draftTransferId/delete.md)

---

[API](https://skmtc.dev/mollie/apis/mollie-api.md) - [All operations](https://skmtc.dev/mollie/apis/mollie-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mollie/apis/mollie-api/revisions/01847046d5d0?raw)
