---
title: "Finalize a pending guest payment"
method: POST
path: "/guest/payments/{id}"
tags: ["Payments"]
---

# Finalize a pending guest payment

`POST /guest/payments/{id}`

Finalize a pending payment being made by a Bolt guest shopper. Upon receipt of a finalized payment result, payment success should be communicated to the shopper.

## Path parameters

- `id` string, required

## Headers

- `X-Publishable-Key` string, required
- `X-Merchant-Client-Id` string

## Request body

- PaymentActionRequest
  - `.tag` 'finalize' | 'finalize_threeds_payment', required
  - `redirect_result` string — Optional redirect result token required for an APM payment (excluding PayPal).

## Response `200`

The action was successfully applied to the pending guest payment

- union
  - PaymentResponseFinalized
    - `.tag` 'finalized', required
    - `id` string, id
    - `status` 'success', required
    - `transaction` Transaction, required
      - `reference` string
      - `authorizations` TransactionAuthorization[] — Payment authorization events attached to a transaction
        - `processor_reference` string
        - `processor_response` ProcessorResponse — Raw authorization response from the payment processor
          - `content_type` string
          - `api_version` string
          - `text` string
    - `co_funding_summary` CoFundingSummary
      - `funder_public_id` string, required — Public merchant ID of the merchant funding the payment.
      - `receiver_public_id` string, required — Public merchant ID of the merchant receiving the funding.
      - `amount` integer, required — Amount being funded in the smallest currency unit (cents for USD).
      - `currency` string, required — Currency code of the co-funding amount.
      - `reference` string, required — Idempotency reference for this co-funding transfer.
      - `status` 'pending' | 'submitted' | 'funded', required — Status of the co-funding transfer. 'pending' = created but not yet queued for funding, 'submitted' = queued in funding batch, 'funded' = settled.
  - PaymentResponsePending
    - `.tag` 'pending', required
    - `id` string, id
    - `status` 'awaiting_user_confirmation', required
    - `action` 'redirect', required
    - `url` string, url, required
  - PaymentResponseThreeDsRequired
    - `.tag` 'three_ds_required', required
    - `id` string, id
    - `step_up_url` string, url, required
    - `jwt_payload` string, required

## Other responses

- `4XX` — An error has occurred, and further details are contained in the response
- `default` — An error has occurred, and no further details are provided (e.g. 5xx errors)

---

[API](https://skmtc.dev/bolt/apis/bolt-api-reference-2.md) · [All operations](https://skmtc.dev/bolt/apis/bolt-api-reference-2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bolt/bolt-api-reference-2/revisions/18e78f3cf6f3/schema)
