---
title: "Update or cancel a payment for reservation"
method: PUT
path: "/reservations/{id}/payments/{paymentId}"
tags: ["Reservations"]
---

# Update or cancel a payment for reservation

`PUT /reservations/{id}/payments/{paymentId}`

Use this request to update or cancel an upcoming payment. To cancel, set the the payment status to `CANCELLED`.

## Path parameters

- `id` string, required
- `paymentId` string, required

## Request body

- object
  - `status` 'PENDING' | 'PENDING_AUTH' | 'FAILED' | 'SUCCEEDED' | 'CANCELLED' | 'AUTHORIZATION_HOLD_SUCCEEDED' | 'FAILED_FULLY_PAID' | 'PENDING_ACTIVATION' — Payment status
  - `paymentMethod` object, required — Payment method object **"Recorded" cash payment method example**
    - `method` 'CASH' | 'STRIPE' | 'AMARYLLIS' | 'CREDIT' | 'DEBIT' | 'ECHECK' | 'AIRBNB' | 'BANK_TRANSFER' | 'CREDIT_NOTE' | 'VOUCHER' | 'CHECK' | 'OTHER', required
    - `saveForFutureUse` boolean
    - `id` string
  - `amount` number
  - `shouldBePaidAt` string, date — Expected charge date. Not passing this param at all or passing it with a past date, will immediately charge the payment.
  - `paidAt` string, date — Used when adding a record to payment history - the actual charge date.
  - `note` string
  - `stripePaymentMethodToken` string — Stripe pm_ token representing a credit card **tok_ kind of tokens are NOT supported**

## Response `200`

Retrieve the updated reservation payments

- object
  - `paymentProviderId` string
  - `paymentProvider` object
    - `id` string
    - `status` string
    - `syncedAt` string, date
    - `lastPendingPaymentDate` string, date
    - `pendingPaymentsCount` number
    - `paymentMethodsCount` number
    - `providerAccountId` string
    - `isDefault` boolean
    - `providerType` string
    - `connectedBy` string
    - `accountName` string
    - `defaultCurrency` string
    - `statsLastUpdated` string, date

## Other responses

- `400` — Invalid Input
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Unhandled exception. Something went wrong on server.

---

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