---
title: "Update payment"
method: PUT
path: "/api/v1/pay/{uuid}/update/summary"
tags: ["Crypto Payments"]
---

# Update payment

`PUT /api/v1/pay/{uuid}/update/summary`

## Request

- Base URL: `https://api.sandbox.bvnk.com`
- URL: `https://api.sandbox.bvnk.com/api/v1/pay/{uuid}/update/summary`
- Auth: API key in header `Authorization`
- TypeScript: <https://skmtc.dev/bvnk/apis/bvnk-api-endpoints/docs/api/v1/pay/:uuid/update/summary/put.ts> (a function with typed inputs; its response is checked against the schema)

Updates a pending payment with currency or payout information.

## Path parameters

- `uuid` string, required

## Request body

- object
  - `currency` string
  - `payOutInstruction` PayOutDetailDto: Crypto destination details: the gateway code, currency, address, and network, plus a tag where the currency requires one.
    - `code` string, required: Gateway to be used. Currently, only 'crypto' is supported.
    - `currency` string, required: Currency code, in which the payout needs to be made.
    - `address` string, required: Address to which funds will be withdrawn. BVNK strictly enforces the [EIP-55](https://www.binance.com/en/square/post/8436113423258) checksum standard for mixed-case Ethereum addresses in Ethereum Virtual Machine (EVM) networks. If the casing doesn't exactly match the checksum, the address is considered invalid. Make sure that the `0x` prefix is lowercase and use one of the following formats: - All uppercase: `0xCCC2D224ADDEC8AA7A54BB22C7D4AC2D8ACA91BE` - All lowercase: `0xccc2d224addec8aa7a54bb22c7d4ac2d8aca91be`
    - `tag` string: Tag of the payment destination. This field must not be empty when the `paidCurrency` currency value is `XRP`.
    - `network` string, required: Network of the cryptocurrency. We recommend using the `network` parameter instead of `protocol`. For the complete list of available networks, see [Currencies](https://docs.bvnk.com/bvnk/references/currencies/).
    - `protocol` string: Only used for multiple protocol currencies, like USDT. Will only generate address matching the protocol and no alternatives. **Deprecated**. Use `network` instead.

## Response `200`

OK

- SummaryPaymentDto: Contains all the information about a summary payment object returned.
  - `uuid` string: Unique identifier for the merchant payment.
  - `merchantDisplayName` string: The display name for the merchant payment.
  - `walletId` string: Your wallet's ID.
  - `dateCreated` integer: The date and time, encoded into UNIX epoch timestamps.
  - `expiryDate` integer: The date and time, encoded into UNIX epoch timestamps.
  - `quoteExpiryDate` integer: Expiration date and time, encoded into UNIX epoch timestamps.
  - `acceptanceExpiryDate` integer: Date and time, encoded into UNIX epoch timestamps.
  - `quoteStatus` string
  - `reference` string: Custom payment reference ID to tie the payment to your customer.
  - `type` 'IN' | 'OUT': Defines whether a payment in or payment out.
  - `subType` 'merchantPayIn' | 'merchantPayOut' | 'merchantRefund': Payment sub type.
  - `status` 'PENDING' | 'PROCESSING' | 'CANCELLED' | 'COMPLETE' | 'UNDERPAID' | 'OVERPAID' | 'EXPIRED': The payment status.
  - `displayCurrency` PayAmountsDto: Contains the type of currency, amount to be paid, and amount received.
    - `currency` string: The currency acronym.
    - `amount` number: The amount to be paid.
    - `actual` number: The actual amount received.
  - `walletCurrency` PayAmountsDto: Contains the type of currency, amount to be paid, and amount received.
    - `currency` string: The currency acronym.
    - `amount` number: The amount to be paid.
    - `actual` number: The actual amount received.
  - `paidCurrency` PayAmountsDto: Contains the type of currency, amount to be paid, and amount received.
    - `currency` string: The currency acronym.
    - `amount` number: The amount to be paid.
    - `actual` number: The actual amount received.
  - `feeCurrency` PayAmountsDto: Contains the type of currency, amount to be paid, and amount received.
    - `currency` string: The currency acronym.
    - `amount` number: The amount to be paid.
    - `actual` number: The actual amount received.
  - `displayRate` ExchangeRateDto: Contains exchange rate information to convert from base currency to counter currency.
    - `base` string: The base currency acronym.
    - `counter` string: The counter currency acronym.
    - `rate` number: The exchange rate
  - `exchangeRate` ExchangeRateDto: Contains exchange rate information to convert from base currency to counter currency.
    - `base` string: The base currency acronym.
    - `counter` string: The counter currency acronym.
    - `rate` number: The exchange rate
  - `address` CryptoAddressDto: Payment address details
    - `address` string: The crypto address to send funds to
    - `tag` string: This is a payment destination tag. This fields isn't null when the paidCurrency currency value is XRP.
    - `network` string: The network of the address. We recommend using the `network` parameter instead of `protocol`.
    - `protocol` string: The protocol behind a currency, 'ERC20' or 'TRC20'. **Deprecated**. Use `network` instead.
    - `uri` string: The destination address URI for QR code
    - `alternatives` AlternativeAddressDto[]: The list of non-default addresses for other tokens
      - `network` string: The network of the alternative address. We recommend using the `network` parameter instead of `protocol`.
      - `protocol` string: The protocol behind a currency. Matches currency for native tokens. **Deprecated**. Use `network` instead.
      - `address` string: The crypto address to send funds to.
      - `tag` string: This is a payment destination tag. This fields isn't null when the paidCurrency currency value is XRP.
      - `uri` string: The destination address URI for QR code
  - `returnUrl` string: The URL that the customer will be redirected to if they click 'Back to Merchant' button on the payment web page.
  - `redirectUrl` string: The URL to the payment page that you redirect your customers to.
  - `transactions` GatewayTransactionDto[]
    - `dateCreated` integer: The date and time, encoded into UNIX epoch timestamps.
    - `dateConfirmed` integer: The date and time, encoded into UNIX epoch timestamps.
    - `hash` string: Transaction hash.
    - `amount` number: Payment amount.
    - `risk` object
    - `networkFeeCurrency` string: The currency acronym.
    - `networkFeeAmount` number: The network fee amount.
    - `sources` string[]: The list of source addresses, only applicable if payment in.
    - `displayRate` ExchangeRateDto: Contains exchange rate information to convert from base currency to counter currency.
      - `base` string: The base currency acronym.
      - `counter` string: The counter currency acronym.
      - `rate` number: The exchange rate
    - `exchangeRate` ExchangeRateDto: Contains exchange rate information to convert from base currency to counter currency.
      - `base` string: The base currency acronym.
      - `counter` string: The counter currency acronym.
      - `rate` number: The exchange rate
  - `refund` object: The payment this object is a refund of. This should reference the pay in that this refund was created for.
  - `refunds` object[]: Refunds that have been requested for this payment. This should reference the refund payout for this pay in.
  - `currencyOptions` CurrencyOptions: The currency options.
    - `transaction` string: View onchain transactions.
    - `explorer` string: The explorer to view crypto network
    - `address` string: View wallet address
    - `confirmations` integer: Number of confirmations needed.
  - `networkFeeCurrency` object: Details of the network fee currency.
    - `currency` string: The currency code for the network fee.
    - `amount` number: The network fee amount.
    - `actual` number: The actual network fee amount charged.
  - `flow` string

## Other responses

- `400`: Bad Request
- `500`: Unexpected Error

## Changes

- **2026-06-16** `97d6c0d2fe2e`: 1 warning, 1 info
  - removed the optional property `CurrencyOptions` from the response with the `200` status
  - added the optional property `currencyOptions` to the response with the `200` status

[Operation history](https://skmtc.dev/bvnk/apis/bvnk-api-endpoints/changes/api/v1/pay/:uuid/update/summary/put.md)

---

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