Skip to main content
PUT
Mark a Transaction as Paid Externally
Mark a pix or voucher transaction as paid outside Pagou, for example when the buyer paid by bank transfer after the charge expired. Use the transaction UUID returned as id in the path and authenticate with your company API key. The transaction moves to paid_externally for its full amount and Pagou runs the same delivery flow as a paid sale: the transaction.paid webhook (with status: "paid_externally"), the buyer confirmation e-mail and the tracking integrations.
No money moves through Pagou for this sale: it creates no balance, settlement or sale fee, and it cannot be refunded or undone. Services your company has enabled, such as the buyer confirmation e-mail, are still charged as usual. Your integration must release orders on paid_externally as well as on paid.

Which transactions can be marked

  • Payment method pix or voucher.
  • Status pending or expired, never paid before.
Card, canceled, paid and refunded transactions return 422. When the charge is still open, Pagou also tries to cancel it; the marking happens whether or not the cancellation succeeds.

Request fields

Idempotency

Calling the endpoint again for a transaction already marked returns its current state with 200 and has no other effect: no second webhook and no second e-mail. The reason and external_reference sent in the new call are ignored; the ones from the first marking are kept.

If the buyer also pays through Pagou

If the original charge is paid after the marking, the transaction moves to paid and the money follows the normal flow, with its fee. No second transaction.paid is sent, so the order is not released twice. Refunding that payment to the buyer follows the regular refund flow.

Errors

Example

The response carries the transaction in the same shape as Get a Transaction, with status: "paid_externally".

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string<uuid>
required
Pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$

Body

application/json
reason
string
required

Why the sale is being marked as paid outside the platform. Required.

Required string length: 1 - 500
Example:

"Pago por transferência bancária"

external_reference
string | null

Your own reference for the outside payment, such as a bank transfer id.

Required string length: 1 - 255
Example:

"TED-2026-10-27-0042"

Response

Success

success
boolean
required
requestId
string
required
data
object
required