Transações

Listar transações

Lista transações com filtros, ordenação e paginação. Os itens de data são uma projeção leve — diferente do objeto completo retornado por Consultar(/docs/guide/transactions/read). Para os detalhes comp

Visão Geral

Lista transações com filtros, ordenação e paginação. Os itens de data são uma projeção leve — diferente do objeto completo retornado por Consultar. Para os detalhes completos (cliente, itens, recebíveis, etc.), consulte cada transação individualmente.

Precauções

  • Resposta paginada, com limite máximo de 100 registros por requisição.
  • Para conjuntos grandes, navegue com limit/offset.
  • Requisições frequentes podem estar sujeitas a rate limiting.

Requisição

GET /v1/transactions

Parâmetros de Consulta

ParâmetroTipoObrigatórioDescriçãoExemplo
statusstringNãoFiltra pelo statusapproved
methodstringNãoFiltra pelo métodocredit
idstringNãoFiltra por um ID de transaçãotra_1234567890
customidstringNãoFiltra pelo identificador personalizadoE5D4C3B2A1
referenceidstringNãoFiltra pela referência externapedido_loja_9876
customerId (ou customerid)stringNãoFiltra pelo ID do clientecus_1234567890
customeremailstringNãoFiltra pelo email do cliente[email protected]
sourcestringNãoFiltra pela origemapi
ipaddressstringNãoFiltra pelo IP de origem187.85.132.45
limitintegerNãoRegistros por página (1–100, padrão: 20)50
offsetintegerNãoRegistros a pular (paginação)20
sortstringNãoOrdenação (ascending/descending ou campo:asc/campo:desc)descending

Valores Aceitos para status

pending, pre-authorized, approved, failed, refused, canceled, refunded, chargeback, dispute, fraud-review, analyzing, awaiting. O alias unauthorized também é aceito como filtro (compatibilidade).

Valores Aceitos para method

credit, pix, billet. O alias nupay é aceito como filtro (compatibilidade com dados legados); a criação suporta apenas credit/pix/billet.

Exemplos de Requisição

GET /v1/transactions?status=approved&method=credit&limit=50&sort=descending
GET /v1/transactions?status=pending&customerId=cus_1234567890
GET /v1/transactions?status=refunded&limit=20&sort=updatedAt:desc

Resposta

Sucesso (HTTP 200 OK)

Resposta paginada no nível raiz. Os itens de data são projeções leves: amount/originalAmount vêm como strings e fees é um único número (total em centavos).

{
  "offset": 0,
  "limit": 20,
  "total": 142,
  "hasMore": true,
  "page": {
    "current": 1,
    "total": 8,
    "offset": { "first": 0, "prev": null, "next": 20, "last": 140 }
  },
  "data": [
    {
      "id": "tra_01hqzvabc",
      "customId": "E5D4C3B2A1",
      "customerId": "cus_987654321",
      "cardBrand": "Mastercard",
      "amount": "9500",
      "originalAmount": "10000",
      "status": "approved",
      "method": "credit",
      "currency": "BRL",
      "fees": 45,
      "approvedAt": "2026-06-15T14:23:45.000Z",
      "updatedAt": "2026-06-15T14:00:30.000Z",
      "createdAt": "2026-06-10T09:15:25.000Z",
      "images": []
    }
  ],
  "merchant": {
    "name": "Seller Name",
    "merchantId": "bus_1234567890",
    "isSubAccount": false
  },
  "_links": {
    "self": {
      "href": "https://api.selectwin.io/v1/transactions",
      "method": "GET",
      "description": "List all transactions."
    },
    "create": {
      "href": "https://api.selectwin.io/v1/transactions",
      "method": "POST",
      "description": "Create a new transaction."
    }
  }
}

Atributos da Resposta Paginada

AtributoTipoDescrição
offsetintegerPosição inicial dos resultados
limitintegerMáximo de registros retornados
totalintegerTotal de registros disponíveis
page.offset.first/prev/next/lastinteger | nullOffsets de navegação
page.currentintegerPágina atual
page.totalintegerTotal de páginas
hasMorebooleanSe há mais resultados
dataarrayProjeções leves das transações
merchantobjectMerchant da conta
_linksobjectLinks HATEOAS (self, create)

Item de lista (projeção leve em data)

AtributoTipoDescrição
idstringIdentificador (tra_* / trx_*)
customIdstring | nullIdentificador personalizado
customerIdstring | nullCliente associado (cus_*)
cardBrandstring | nullBandeira do cartão
amountstringValor cobrado em centavos (como string)
originalAmountstringValor original em centavos (como string)
statusstringStatus atual
methodstringMétodo de pagamento
currencystringMoeda (BRL)
feesintegerTotal de taxas em centavos
approvedAtstring | nullData/hora de aprovação (ISO)
updatedAtstringÚltima atualização (ISO)
createdAtstringCriação (ISO)
imagesarrayURLs de imagens dos itens (geralmente vazia na listagem)

Melhores Práticas

  1. Utilize filtros específicos para reduzir o volume retornado.
  2. Pagine adequadamente para grandes conjuntos.
  3. Para reconciliação, combine filtros de status e período.
  4. Evite consultas muito frequentes para não atingir rate limits.

How is this guide?

On this page