---
title: "Changes to Execute transfer (custody)"
method: POST
path: "/v1/payments/transfers"
---

# Changes to Execute transfer (custody)

`POST /v1/payments/transfers`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 19 of 42 revisions.

- **2026-11-03** `47682f5c382e`: 1 info
- **2026-11-02** `9f0b1d561064`: 8 warning
- **2026-10-30** `f4a0135eca08`: 48 warning
- **2026-10-28** `18ae851e8081`: 8 warning
- **2026-10-26** `1f50eccf8036`: 16 info
- **2026-10-23** `9dbd824a95fb`: 1 info
- **2026-10-21** `a2e43ec868ab`: 3 info
- **2026-10-16** `04b5d7ec60f2`: 1 breaking, 32 warning
- **2026-10-15** `cbc72fc39983`: 8 warning
- **2026-10-14** `d28a69a64333`: 2 warning, 12 info
- **2026-10-13** `6330018ffa32`: 1 warning, 1 info
- **2026-10-12** `5a8c8bfbde01`: 1 warning, 8 info
- **2026-10-04** `030531d691d7`: 8 info
- **2026-09-23** `efb53d5c0ff9`: 3 info
- **2026-09-17** `c40cf3f45740`: 8 warning
- **2026-09-16** `fae304472f95`: 2 warning, 3 info
- **2026-09-15** `ae979bae198c`: 6 warning, 1 info
- **2026-09-02** `496a0685145b`: 2 breaking, 1 warning, 4 info
- **2026-08-15** `3e302bba5386`: 5 warning

## Changes

- **2026-11-03** `47682f5c382e`: 1 info
  - added the new optional request property `counterpartyAccountId`
- **2026-11-02** `9f0b1d561064`: 8 warning
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `400`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `401`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `403`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `404`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `409`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `422`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `500`
  - added the new `CUSTODY_POLICY_REFUSED` enum value to the `error/code` response property for the response status `503`
- **2026-10-30** `f4a0135eca08`: 48 warning
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `400`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `401`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `403`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `404`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `409`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `422`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `500`
  - added the new `RPC_UNAVAILABLE` enum value to the `error/code` response property for the response status `503`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `400`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `401`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `403`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `404`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `409`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `422`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `500`
  - added the new `SPONSORED_RENT_OVER_CAP` enum value to the `error/code` response property for the response status `503`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `400`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `401`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `403`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `404`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `409`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `422`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `500`
  - added the new `TRANSFER_BATCH_DESTINATION_CHANGED` enum value to the `error/code` response property for the response status `503`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `400`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `401`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `403`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `404`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `409`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `422`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `500`
  - added the new `TRANSFER_BATCH_NOTHING_TO_RETRY` enum value to the `error/code` response property for the response status `503`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `400`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `401`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `403`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `404`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `409`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `422`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `500`
  - added the new `TRANSFER_BATCH_RETRY_CLAIMED` enum value to the `error/code` response property for the response status `503`
  - …8 more
- **2026-10-28** `18ae851e8081`: 8 warning
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `400`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `401`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `403`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `404`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `409`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `422`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `500`
  - added the new `AMOUNT_BELOW_RENT_MINIMUM` enum value to the `error/code` response property for the response status `503`
- **2026-10-26** `1f50eccf8036`: 16 info
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `400`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `401`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `403`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `404`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `409`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `422`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `500`
  - removed the `EXPIRED_INVITATION` enum value from the `error/code` response property for the response status `503`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `400`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `401`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `403`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `404`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `409`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `422`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `500`
  - removed the `INVALID_INVITATION` enum value from the `error/code` response property for the response status `503`
- **2026-10-23** `9dbd824a95fb`: 1 info
  - added the optional property `data/transfer/fireblocks` to the response with the `200` status
- **2026-10-21** `a2e43ec868ab`: 3 info
  - added the optional property `data/transfer/confirmedAt` to the response with the `200` status
  - added the optional property `data/transfer/deliveryMismatch` to the response with the `200` status
  - added the optional property `data/transfer/fiatPayout` to the response with the `200` status
- **2026-10-16** `04b5d7ec60f2`: 1 breaking, 32 warning
  - the `header` request parameter `Idempotency-Key` became required
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `400`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `401`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `403`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `404`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `409`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `422`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `500`
  - added the new `IDEMPOTENCY_KEY_IN_FLIGHT` enum value to the `error/code` response property for the response status `503`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `400`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `401`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `403`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `404`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `409`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `422`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `500`
  - added the new `IDEMPOTENCY_KEY_OUTCOME_UNKNOWN` enum value to the `error/code` response property for the response status `503`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `400`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `401`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `403`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `404`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `409`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `422`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `500`
  - added the new `IDEMPOTENCY_KEY_REQUIRED` enum value to the `error/code` response property for the response status `503`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `400`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `401`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `403`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `404`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `409`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `422`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `500`
  - added the new `IDEMPOTENCY_KEY_REUSED` enum value to the `error/code` response property for the response status `503`
- **2026-10-15** `cbc72fc39983`: 8 warning
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `400`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `401`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `403`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `404`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `409`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `422`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `500`
  - added the new `PROVIDER_RESPONSE_INVALID` enum value to the `error/code` response property for the response status `503`
- **2026-10-14** `d28a69a64333`: 2 warning, 12 info
  - removed the optional property `data/transfer/provider` from the response with the `200` status
  - removed the optional property `data/transfer/settlement` from the response with the `200` status
  - removed the `batch_pay` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `confidential_pay` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `deposit` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `offramp` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `offramp` enum value from the `data/transfer/type` response property for the response status `200`
  - removed the `onramp` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `onramp` enum value from the `data/transfer/type` response property for the response status `200`
  - removed the `pay` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `recurring_pay` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `request_deposit` enum value from the `data/transfer/kind` response property for the response status `200`
  - removed the `transfer` enum value from the `data/transfer/type` response property for the response status `200`
  - removed the `transfer_batch` enum value from the `data/transfer/type` response property for the response status `200`
- **2026-10-13** `6330018ffa32`: 1 warning, 1 info
  - removed the optional property `data/transfer/moneygram` from the response with the `200` status
  - removed `subschema #2` from the `data/transfer/settlement` response property `anyOf` list for the response status `200`
- **2026-10-12** `5a8c8bfbde01`: 1 warning, 8 info
  - added the new `hercle` enum value to the `data/transfer/provider` response property for the response status `200`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `400`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `401`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `403`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `404`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `409`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `422`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `500`
  - removed the `SIGNING_PENDING` enum value from the `error/code` response property for the response status `503`
- **2026-10-04** `030531d691d7`: 8 info
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `400`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `401`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `403`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `404`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `409`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `422`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `500`
  - removed the `EXPIRED_SESSION` enum value from the `error/code` response property for the response status `503`
- **2026-09-23** `efb53d5c0ff9`: 3 info
  - added the optional property `data/transfer/moneygram/customerId` to the response with the `200` status
  - added the optional property `data/transfer/moneygram/mgiTransactionId` to the response with the `200` status
  - added the optional property `data/transfer/settlement` to the response with the `200` status
- **2026-09-17** `c40cf3f45740`: 8 warning
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `400`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `401`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `403`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `404`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `409`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `422`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `500`
  - added the new `VAULT_EXPOSURE_CAP` enum value to the `error/code` response property for the response status `503`
- **2026-09-16** `fae304472f95`: 2 warning, 3 info
  - removed the request property `privateTransfer`
  - removed the optional property `data/privateTransfer` from the response with the `200` status
  - added the non-success response with the status `503`
  - removed the `transfer_confidential` enum value from the `data/transfer/type` response property for the response status `200`
  - added the required property `data/transfer/kind` to the response with the `200` status
- **2026-09-15** `ae979bae198c`: 6 warning, 1 info
  - added the new `SIGNING_REJECTED` enum value to the `error/code` response property for the response status `400`
  - added the new `SIGNING_REJECTED` enum value to the `error/code` response property for the response status `401`
  - added the new `SIGNING_REJECTED` enum value to the `error/code` response property for the response status `403`
  - added the new `SIGNING_REJECTED` enum value to the `error/code` response property for the response status `404`
  - added the new `SIGNING_REJECTED` enum value to the `error/code` response property for the response status `409`
  - added the new `SIGNING_REJECTED` enum value to the `error/code` response property for the response status `500`
  - added the non-success response with the status `422`
- **2026-09-02** `496a0685145b`: 2 breaking, 1 warning, 4 info
  - added the new required request property `sourceCustodyWalletId`
  - removed the required property `data/transfer/walletId` from the response with the `200` status
  - removed the request property `source`
  - added the new optional request property `transferId`
  - added the non-success response with the status `404`
  - added the required property `data/transfer/custodyWalletId` to the response with the `200` status
  - added the required property `data/transfer/providerWalletId` to the response with the `200` status
- **2026-08-15** `3e302bba5386`: 5 warning
  - added the new `SERVICE_UNAVAILABLE` enum value to the `error/code` response property for the response status `400`
  - added the new `SERVICE_UNAVAILABLE` enum value to the `error/code` response property for the response status `401`
  - added the new `SERVICE_UNAVAILABLE` enum value to the `error/code` response property for the response status `403`
  - added the new `SERVICE_UNAVAILABLE` enum value to the `error/code` response property for the response status `409`
  - added the new `SERVICE_UNAVAILABLE` enum value to the `error/code` response property for the response status `500`

---

[Operation](https://skmtc.dev/solana/apis/solana-developer-platform-api/docs/v1/payments/transfers/post.md) - [API](https://skmtc.dev/solana/apis/solana-developer-platform-api.md) - [Page](https://skmtc.dev/solana/apis/solana-developer-platform-api/changes/v1/payments/transfers/post)
