---
title: "Update payment"
method: PUT
path: "/payments/{id}"
---

# Update payment

`PUT /payments/{id}`

## Path parameters

- `id` string, required

## Headers

- `Content-Type` string, required
- `Host` string, required
- `Date` string, required
- `Digest` string, required
- `Authorization` string, required
- `x-satispay-deviceinfo` string
- `x-satispay-devicetype` 'SMARTPHONE' | 'TABLET' | 'CASH REGISTER' | 'POS' | 'PC' | 'ECOMMERCE_PLUGIN'
- `x-satispay-os` string
- `x-satispay-osv` string
- `x-satispay-apph` string
- `x-satispay-appn` string
- `x-satispay-appv` string
- `x-satispay-tracking-code` string

## Request body

- object
  - `action` 'ACCEPT' | 'CANCEL' | 'CANCEL_OR_REFUND', required — The action to execute on a specific payment. <br> <br> `ACCEPT` <br> This action can be used to accept `PENDING` or `AUTHORIZED` payments. <br> <br> `CANCEL` <br> This action can be used to cancel `PENDING` or `AUTHORIZED` payments. <br> <br> `CANCEL_OR_REFUND` <br> This action can be used to cancel `PENDING` or `AUTHORIZED` payments. <br> Or to refund a payment in status `ACCEPTED`. <br> <br> We suggest to execute this action only if you don't know the actual status of the payment. <br> For example if you received a timeout or an HTTP `500`. <br> <br> Depending on the actual status of the payment, you will receive a different outcome and response.
  - `amount_unit` integer — The payment amount that you want to capture in cents. <br> <br> To represent the amount `€12.40`, you should multiply it by `100`, resulting in `1240` cents. <br> <br> This property is applicable only for payments in `AUTHORIZED` status. <br> These payments must be created using either the `FUND_LOCK` or `PRE_AUTHORIZED_FUND_LOCK` flow. <br> <br> This amount must be equal or smaller than the amount set during the payment creation.

## Response `200`

OK

- object
  - `id` string — The unique payment id. <br> <br> This can be used for every eventual subsequent operations on the payment, including refunds.
  - `type` string — The current payment type. <br> <br> `TO_BUSINESS` <br> This type is used for payments from a consumer to a merchant. <br> <br> `REFUND_TO_BUSINESS` <br> This type is used for payments from a merchant to a consumer (e.g. refunds).
  - `amount_unit` integer — The payment amount in cents. <br> <br> For example, the amount `€12.40` is being represented as `1240` cents.
  - `currency` 'EUR' — The payment currency.
  - `status` string — The current payment status. <br> <br> `ACCEPTED` <br> The payment has been accepted succesfully. <br> Beware: if you use the `CANCEL_OR_REFUND` action and you receive back an `ACCEPTED` status, this means that the payment has been successfully refunded. <br> <br> `CANCELED` <br> The payment has been correctly canceled. <br> Beware: if you use the `CANCEL_OR_REFUND` action and you receive back a `CANCELED` status, this means that the payment has been successfully canceled.
  - `expired` boolean — The current payment expiration status. <br> <br> It becomes `true` once it reaches the `expiration_date` without being accepted or canceled.
  - `metadata` object — The additional metadata for the payment.
  - `sender` object — The sender payment actor.
    - `id` string — The unique sender id. <br> <br> This will only be available once the payment will be matched with a consumer.
    - `type` string — The sender type. <br> <br> `CONSUMER` <br> This sender type is used when the payment goes from a consumer to a merchant. <br> <br> `SHOP` <br> This sender type is used when the payment goes from a merchant to a consumer (e.g. refunds payments).
    - `name` string — The sender name. <br> <br> This will only be available once the payment will be matched with a consumer.
  - `receiver` object — The receiver payment actor.
    - `id` string — The unique receiver id.
    - `type` string — The receiver type. <br> <br> `CONSUMER` <br> This receiver type is used when the payment goes from a merchant to a consumer. <br> <br> `SHOP` <br> This receiver type is used when the payment goes from a consumer to a merchant (e.g. refunds payments).
  - `insert_date` string — The UTC payment creation datetime.
  - `expire_date` string — The UTC payment expiration datetime.

## Other responses

- `400` — 400 Bad Request
- `401` — 401 Unauthorized
- `403` — 403 Forbidden or invalid authorization header
- `404` — 404 Resource not found

---

[API](https://skmtc.net/satispay/apis/satispay-gbusiness-api.md) · [All operations](https://skmtc.net/satispay/apis/satispay-gbusiness-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/satispay/satispay-gbusiness-api/versions/f91f20a37e6f/schema)
