SelectwinSelectwin

Transações - Capturar

Visão Geral

Captura uma transação previamente pré-autorizada (criada com payment.capture: false). A captura confirma a cobrança no cartão do cliente. É possível capturar o valor total ou um valor parcial (menor que o autorizado).

A captura é assíncrona: o endpoint aceita a solicitação (HTTP 202) e o processamento ocorre em background. Acompanhe o resultado pelos webhooks (transaction.approved) ou consultando a transação.

Precauções

  • Só pode ser usado em transações no status pre-authorized.
  • O valor da captura não pode exceder o valor autorizado.
  • Uma vez capturada, a transação não pode ser revertida — apenas reembolsada.
  • O ID da transação é sensível a maiúsculas e minúsculas (tra_... ou trx_...).
  • Plataformas de marketplace: a captura de uma venda feita com onBehalfOf é pedida como a sub-conta, com X-Selectwin-Account: bus_… — veja Operar como a sub-conta.

Casos de uso

  • Reservas hoteleiras: autorizar no check-in e capturar após verificar consumos.
  • Aluguel de veículos: pré-autorizar caução e capturar apenas se houver danos.
  • Serviços sob demanda: autorizar valor estimado e capturar o valor real.
  • Verificação de fundos: garantir saldo antes de processar.

Requisição

HTTP
POST /v1/transactions/{transactionId}/capture

Parâmetros de URL

ParâmetroTipoObrigatórioDescrição
transactionIdstringSimIdentificador da transação a capturar

Parâmetros do Corpo da Requisição

ParâmetroTipoObrigatórioDescrição
amountintegerNãoValor a capturar em centavos. Se omitido, captura o valor total autorizado. Para captura parcial, informe um valor menor (> 0 e ≤ autorizado)

Exemplo de Requisição

Captura total (corpo vazio ou sem amount):

JSON
{}

Captura parcial:

JSON
{ "amount": 8000 }

Resposta

Aceito (HTTP 202 Accepted)

A captura foi aceita para processamento assíncrono.

JSON
{
  "transactionId": "tra_987654321",
  "status": "pre-authorized",
  "accepted": true
}
AtributoTipoDescrição
transactionIdstringIdentificador da transação
statusstringStatus no momento do aceite (a confirmação da captura chega por webhook)
acceptedbooleanSempre true

Erros

error.codeHTTPQuando
transactionNotCapturable422A transação não está aguardando captura (não está em pre-authorized)
captureAmountInvalid422O valor de captura é zero/negativo ou excede o autorizado
transactionInPaymentGroup409A transação é uma parte de um pagamento combinado (2 cartões ou cartão + Pix, no checkout hospedado). As partes são capturadas pelo próprio pagamento combinado, só quando todas estão garantidas — nunca por esta rota
transactionNotFound404Transação inexistente

Melhores Práticas

  1. Verifique o status (pre-authorized) antes de capturar.
  2. Reaja ao webhook transaction.approved para confirmar a captura.
  3. Considere captura parcial quando o valor final for menor que o autorizado.
  4. Lembre-se do prazo de validade das pré-autorizações (normalmente alguns dias).

Atualizado em 17 de outubro de 2026

Preferências de cookies

Hoje o site usa só cookies essenciais: nenhuma ferramenta de medição ou de anúncios está ligada, e nada é compartilhado com terceiros. Se isso mudar, você decide aqui antes de qualquer coisa ser carregada.

  • Mantêm o site funcionando: segurança, a sua escolha sobre cookies e preferências como a versão da documentação. Não dependem de consentimento.

    Sempre ativos