Listar Transações
Utilize este endpoint para listar transações com filtros.
Ambientes Disponíveis
- Produção
https://api.unoip.com.br
Endpoint
- Método:
GET - Endpoint:
/transaction - Autenticação: Bearer token
Query Params
ℹ️ Datas em ISO
Os campos startDate e endDate devem ser enviados em ISO date string com horário.
Exemplo:
2026-03-06T12:00:00.000Z
| Nome | Tipo | Obrigatório | Descrição | Validações |
|---|---|---|---|---|
startDate | string | Não | Data inicial do filtro | Deve ser ISO date string com horário |
endDate | string | Não | Data final do filtro | Deve ser ISO date string com horário |
status | string[] (enum) - PENDING, PIX_QRCODE_GENERATED, PAID, PROCESSING_REFUND, PROCESSING_INFRACTION, REFUNDED, INFRACTION, FAILED, BLOCKED | Não | Lista de status para filtrar | Deve ser um array não vazio e sem duplicados |
customerEmail | string | Não | E-mail do customer | Deve possuir formato de email válido |
customerName | string | Não | Nome do customer | Deve ser alphanumerico internacional |
customerDocument | string | Não | Documento do customer | Deve ser CPF ou CNPJ válido |
customerPhone | string | Não | Documento do customer | |
id | string (UUID v4) | Não | Identificador da transação | Deve ser UUID v4 válido |
endToEnd | string | Não | Identificador end-to-end da transação | Deve ter entre 8 e 255 caracteres |
endToEndRefund | string | Não | Identificador end-to-end do estorno | Deve ter entre 8 e 255 caracteres |
externalCode | string | Não | Seu código de referência | Deve ter entre 8 e 255 caracteres |
paymentMethod | string[] (enum) - PIX | Não | Lista de métodos de pagamento para filtrar | Deve ser um array não vazio e sem duplicados |
minAmount | number | Não | Valor mínimo da transação (centavos) | Deve ser inteiro em centavos; mínimo 1 (R$ 0,01) e máximo 10000000 (R$ 100.000,00) |
maxAmount | number | Não | Valor máximo da transação (centavos) | Deve ser inteiro em centavos; mínimo 1 (R$ 0,01) e máximo 10000000 (R$ 100.000,00) |
Exemplo de Requisição
- cURL
- JavaScript
curl --request GET \
--url https://api.unoip.com.br/transaction?status=PAID&startDate=2026-03-06T00:00:00.000Z&endDate=2026-03-06T23:59:59.999Z \
--header 'Authorization: Bearer seu-token-jwt'
const params = new URLSearchParams({
startDate: '2026-03-06T00:00:00.000Z',
endDate: '2026-03-06T23:59:59.999Z'
});
params.append('status', 'PAID');
const response = await fetch(`https://api.unoip.com.br/transaction?${params}`, {
method: 'GET',
headers: {
'Authorization': 'Bearer seu-token-jwt'
}
});
const data = await response.json();
Resposta de Sucesso
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
total | number | Sim | Total de itens |
totalPages | number | Sim | Total de páginas |
currentPage | number | Sim | Página atual |
perPage | number | Sim | Itens por página |
data | array | Sim | Lista de transações |
Campos do item em data
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
id | string (UUID) | Sim | Identificador único da transação |
acquirer | string | Sim | Adquirente da transação |
amount | number | Sim | Valor da transação (inteiro em centavos) |
paymentMethod | string (enum) - PIX | Sim | Método de pagamento |
webhookUrl | string | Não | URL de webhook configurada |
externalCode | string | Não | Seu código de referência |
customer | object | Não | Dados do pagador (ver Sub-Objeto AccountHolder) |
seller | object | Não | Dados do vendedor (ver Sub-Objeto Seller) |
isInfoProduct | boolean | Sim | Flag para produtos digitais ou físicos |
address | object | Não | Endereço do cliente (ver Sub-Objeto Address) |
items | object[] | Não | Lista de produtos (ver Sub-Objeto Item) |
metadata | object | Não | Metadados |
createdAt | string (ISO) | Sim | Data de criação |
status | string (enum) - PENDING, PIX_QRCODE_GENERATED, PAID, PROCESSING_REFUND, PROCESSING_INFRACTION, REFUNDED, INFRACTION, FAILED, BLOCKED | Sim |
|
statusHistory | array | Sim | Histórico de status (ver Sub-Objeto StatusHistory) |
updatedAt | string (ISO) | Sim | Data da última atualização |
amountPaid | number | Não | Valor efetivamente pago (inteiro em centavos) |
paymentDate | string (ISO) | Não | Data de pagamento |
infractionDate | string (ISO) | Não | Data da infração |
pixResponse | object | Sim (se paymentMethod for PIX) | Dados do PIX (ver Sub-Objeto PixResponse) |
errorMessage | string | Não | Mensagem de erro |
endToEnd | string | Não | Identificador end-to-end da transação |
payer | object | Não | Dados do pagador (ver Sub-Objeto AccountHolder) |
receiver | object | Não | Dados do recebedor (ver Sub-Objeto AccountHolder) |
feeAmount | number | Não | Valor da taxa |
Sub-Objetos
Customer
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
ip | string | Não | IP |
name | string | Sim | Nome |
email | object | Sim | |
document | string | Sim | Documento |
landline | object | Não | Telefone fixo |
mobilePhone | object | Não | Telefone celular |
Seller
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name | string | Sim | Nome |
document | string | Sim | Documento |
Address
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
zipCode | string | Sim | CEP do Brasil |
number | string | Sim | Número da casa |
street | string | Sim | Nome da rua |
neighborhood | string | Sim | Nome do bairro |
city | string | Sim | Nome da cidade |
state | string | Sim | Nome ou Sigla do estado |
country | string | Sim | Nome do país |
complement | string | Não | Informações adicionais |
Item
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
title | string | Sim | Título |
unitPrice | number | Sim | Valor do item (inteiro em centavos) |
quantity | number | Sim | Quantidade deste item |
description | string | Não | Informações adicionais |
StatusHistory (item)
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
status | string (enum) - PENDING, PIX_QRCODE_GENERATED, PAID, PROCESSING_REFUND, PROCESSING_INFRACTION, REFUNDED, INFRACTION, FAILED, BLOCKED | Sim | Status da transação |
date | string (ISO) | Sim | Data do status |
durationInMilliseconds | number | Sim | Duração do status em milissegundos |
PixResponse
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
uri | string | Sim | Copia e cola do QRCode |
qrCodeBase64 | string | Sim | Imagem do QRCode |
expirationDate | string | Sim | Data de expiração do QRCode |
AccountHolder
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type | string (enum) - PF, PJ | Sim | Tipo do titular |
name | string | Sim | Nome do titular |
document | string | Sim | Documento do titular |
bankAccount | object | Sim | Dados bancários (ver Sub-Objeto BankAccount) |
pix | object | Sim | Chave PIX do titular (ver Sub-Objeto PixKeyVo) |
BankAccount
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
type | string | Sim | Tipo de conta |
branch | string | Sim | Agência |
number | string | Sim | Número da conta |
digit | string | Sim | Dígito da conta |
ispb | string | Sim | ISPB do banco |
Exemplo de Resposta
{
"total": 1,
"totalPages": 1,
"currentPage": 1,
"perPage": 15,
"data": [
{
"id": "553e8400-e29b-41d4-a716-436251480000",
"acquirer": "UNOIP",
"amount": 500,
"paymentMethod": "PIX",
"webhookUrl": "https://sua-api.com/webhooks/transaction",
"externalCode": "TRANSACTION-123",
"customer": {
"ip": "123123123123",
"name": "Customer",
"email": "customer@gmail.com",
"document": {
"value": "12312312312",
"type": "CPF"
},
"landline": "12123451234",
"mobilePhone": "12123451234"
},
"seller": {
"name": "Seller",
"document": {
"value": "12312312312",
"type": "CPF"
}
},
"isInfoProduct": false,
"address": {
"zipCode": "54753-800",
"number": "155",
"street": "Rua Santa Mariana",
"neighborhood": "São Pedro",
"city": "Camaragibe",
"state": "Pernambuco",
"country": "Brazil",
"complement": "Casa Azul"
},
"items": [
{
"title": "Fone Bluetooth PulseWave X200",
"unitPrice": 500,
"quantity": 1,
"description": "Fone de ouvido sem fio com cancelamento ativo de ruído, bateria de 30h e microfone embutido. Compatível com Android e iOS."
}
],
"metadata": {
"moeda": "BRL",
"autorizacao": "A1B2C3",
"status": "aprovada"
},
"createdAt": "2026-03-06T12:49:04.681Z",
"status": "PAID",
"statusHistory": [
{
"status": "PENDING",
"date": "2026-03-06T12:49:04.681Z",
"durationInMilliseconds": 1000
},
{
"status": "PIX_QRCODE_GENERATED",
"date": "2026-03-06T12:49:04.681Z",
"durationInMilliseconds": 10000
},
{
"status": "PAID",
"date": "2026-03-06T12:49:04.681Z",
"durationInMilliseconds": null
}
],
"updatedAt": "2026-03-06T12:49:04.681Z",
"amountPaid": 500,
"paymentDate": "2026-03-06T12:49:04.681Z",
"infractionDate": null,
"pixResponse": {
"uri": "00020126580014br.gov.bcb.pix0136123e4567-e89b-12d3-a456-426614174000",
"qrCodeBase64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"expirationDate": "2026-03-06T12:49:04.681Z"
},
"errorMessage": null,
"endToEnd": "0123456789",
"payer": {
"type": "PF",
"name": "Fulano de Tal",
"document": "12345678910",
"bankAccount": {
"type": "CHECKING",
"branch": "0001",
"number": "123456",
"digit": "7",
"ispb": "12345678"
},
"pix": {
"key": "12345678910",
"type": "CPF"
}
},
"receiver": {
"type": "PJ",
"name": "Empresa Exemplo LTDA",
"document": "12345678000199",
"bankAccount": {
"type": "CHECKING",
"branch": "0001",
"number": "654321",
"digit": "0",
"ispb": "12345678"
},
"pix": {
"key": "contato@exemplo.com",
"type": "EMAIL"
}
},
"feeAmount": 150,
}
]
}
Possíveis Erros
| Código | Descrição | Solução |
|---|---|---|
| 401 | Credenciais inválidas | Verifique suas credenciais |
| 403 | Sem permissão/autorização | Contate o suporte |
| 422 | Dados inválidos ou faltando | Verifique o formato dos dados |
| 422 | Validações | Contate o suporte |
| 500 | Erro interno | Contate o suporte |