---
api: 'Business API'
---

# Update a payment in a payment draft

Update the fields of a single payment within a payment draft.

:::note
You can update payments in drafts created with the API or via the Revolut Business app.
:::

All fields are optional — omit what should not change. Other payments in the draft are unaffected.

For more information, see the guides: [Payment drafts](https://developer.revolut.com/docs/guides/manage-accounts/transfers/payment-drafts).

## Endpoint

PATCH `/payment-drafts/{payment_draft_id}/payments/{payment_id}`

## Parameters

### path parameters

- `payment_draft_id` (string, required)
  The ID of the payment draft that contains the payment.

- `payment_id` (string, required)
  The ID of the payment to update.

## Request body

The fields to update on the payment.

### Attributes

- `receiver` (object, optional)
    The details of the transfer recipient.
    
    If the counterparty has multiple payment methods available (e.g. 2 accounts, or 1 account and 1 card), you must specify the account (`account_id`) or card (`card_id`) to which you want to transfer the money.
  - `receiver.counterparty_id` (string)
      The ID of the receiving counterparty.
  - `receiver.account_id` (string, optional)
      The ID of the receiving counterparty's account. Used for bank transfers.
      
      If the counterparty has multiple payment methods available, use it to specify the account to which you want to send the money.
  - `receiver.card_id` (string, optional)
      The ID of the receiving counterparty's card.
      Used for card transfers.
      
      If the counterparty has multiple payment methods available, use it to specify the card to which you want to send the money.
- `amount` (number, optional)
    The amount of the payment.
- `currency` (string, optional)
    [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) currency code in upper case.
- `reference` (string, optional)
    The reference for the payment.
    A piece of text or number you provide to help identify what the payment relates to.
    It can be used, for example, for reconciliation or tracking purposes.
- `charge_bearer` (enum, optional)
    The party that should bear the transaction fees related to the selected transaction route if applied.
    Possible options are:
    - `shared`: Also known as **SHA**. The transaction route fees are split between the sender and the recipient.
    - `debtor`: Also known as **OUR**. The sender pays all explicit transaction fees.
    Possible enum values:

    - `shared`
    - `debtor`
- `transfer_reason_code` (string, optional)
    The reason code for the transaction. Transactions to certain countries and currencies might require you to provide a transfer reason. 
    You can check available reason codes with the [`GET /transfer-reasons` operation](https://developer.revolut.com/docs/api/business#get-transfer-reasons).
    
    If a transfer reason is not required for the given currency and country, this field is ignored.

## Returns

### 204

The payment was successfully updated

## Error responses

| HTTP status code | Description |
| --- | --- |
| 400 | Bad Request  Returned, for example, when a required parameter is missing or malformatted. |
| 404 | The specified payment draft or payment was not found. |
| 422 | Unprocessable Entity  Returned when the payment draft cannot be modified. |
