Pular para o conteúdo principal

Pix

Envio e recebimento de pagamentos instantâneos via Pix, gestão de chaves e geração de QR Codes.

Endpoints

Pagamentos Pix

MétodoEndpointDescriçãoPermissão
POST/baas/api/v1/pix/paymentsEnviar PixBAAS_PIX_SEND
GET/baas/api/v1/pix/paymentsListar pagamentos PixBAAS_PIX_READ
GET/baas/api/v1/pix/payments/:idObter pagamento Pix por IDBAAS_PIX_READ
POST/baas/api/v1/pix/transfers/:id/refundDevolver Pix (total ou parcial)BAAS_PIX_REFUND

Chaves Pix

MétodoEndpointDescriçãoPermissão
POST/baas/api/v1/pix/keysRegistrar chave PixBAAS_PIX_KEYS_CREATE
GET/baas/api/v1/pix/keysListar chaves PixBAAS_PIX_KEYS_READ
DELETE/baas/api/v1/pix/keys/:idExcluir chave PixBAAS_PIX_KEYS_DELETE
POST/baas/api/v1/pix/keys/lookupConsultar chave no DICTBAAS_PIX_KEYS_READ

QR Code

MétodoEndpointDescriçãoPermissão
POST/baas/api/v1/pix/qrcodeGerar QR CodeBAAS_PIX_QRCODE_CREATE
POST/baas/api/v1/pix/qr-codes/decodeDecodificar QR Code/BRCodeBAAS_PIX_QRCODE_READ

Atributos do Pagamento Pix

CampoTipoDescrição
accountIdstring (UUID)ID da conta de origem
amountnumberValor do pagamento
statusenumStatus: PENDING, PROCESSING, COMPLETED, FAILED, REVERSED
recipientKeyTypeenumTipo da chave do destinatário
recipientKeyValuestringValor da chave do destinatário
descriptionstringDescrição do pagamento
e2eIdstringID fim-a-fim (gerado pelo SPI)
externalRefstringReferência no provedor
failureReasonstringMotivo da falha
completedAtdatetimeData de conclusão
createdAtdatetimeData de criação
updatedAtdatetimeData da última atualização

Atributos da Chave Pix

CampoTipoDescrição
accountIdstring (UUID)ID da conta associada
keyTypeenumTipo: CPF, CNPJ, EMAIL, PHONE, EVP
keyValuestringValor da chave
statusenumStatus: ACTIVE, PENDING, INACTIVE
createdAtdatetimeData de criação

Enviar Pix

POST /baas/api/v1/pix/payments

Envia um pagamento instantâneo via Pix.

Atributos

CampoTipoObrigatórioDescrição
accountIdstringSimID da conta de origem
amountnumberSimValor do pagamento
recipientKeyTypeenumSimTipo da chave Pix do destinatário
recipientKeyValuestringSimValor da chave Pix do destinatário
descriptionstringNãoDescrição do pagamento
curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/pix/payments' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "pix-payments",
"attributes": {
"accountId": "550e8400-e29b-41d4-a716-446655440100",
"amount": 1500.00,
"recipientKeyType": "CPF",
"recipientKeyValue": "12345678901",
"description": "Pagamento fornecedor"
}
}
}'

Response (201 Created)

{
"data": {
"type": "pix-payments",
"id": "550e8400-e29b-41d4-a716-446655440300",
"links": {
"self": "/baas/api/v1/pix/payments/550e8400-e29b-41d4-a716-446655440300"
},
"attributes": {
"accountId": "550e8400-e29b-41d4-a716-446655440100",
"amount": 1500.00,
"status": "PROCESSING",
"recipientKeyType": "CPF",
"recipientKeyValue": "12345678901",
"description": "Pagamento fornecedor",
"e2eId": "E12345678202401151030abcdefghijkl",
"externalRef": null,
"failureReason": null,
"completedAt": null,
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
},
"links": {
"self": "/baas/api/v1/pix/payments/550e8400-e29b-41d4-a716-446655440300"
}
}

Listar Pagamentos Pix

GET /baas/api/v1/pix/payments

Lista pagamentos Pix com suporte a paginação e filtros.

Query Parameters

ParâmetroTipoDescrição
page[number]integerNúmero da página
page[size]integerItens por página
filter[accountId]UUIDFiltrar por conta
filter[status]enumFiltrar por status
filter[dateFrom]dateData inicial (YYYY-MM-DD)
filter[dateTo]dateData final (YYYY-MM-DD)
curl 'https://baas.stg.catalisa.app/baas/api/v1/pix/payments?filter[accountId]=550e8400-e29b-41d4-a716-446655440100&filter[status]=COMPLETED' \
-H 'Authorization: Bearer SEU_TOKEN'

Registrar Chave Pix

POST /baas/api/v1/pix/keys

Registra uma nova chave Pix vinculada a uma conta bancária.

Atributos

CampoTipoObrigatórioDescrição
accountIdstringSimID da conta
keyTypeenumSimTipo: CPF, CNPJ, EMAIL, PHONE, EVP
keyValuestringCondicionalValor da chave (não necessário para EVP)
curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/pix/keys' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "pix-keys",
"attributes": {
"accountId": "550e8400-e29b-41d4-a716-446655440100",
"keyType": "EMAIL",
"keyValue": "financeiro@empresa-abc.com.br"
}
}
}'

Response (201 Created)

{
"data": {
"type": "pix-keys",
"id": "550e8400-e29b-41d4-a716-446655440310",
"links": {
"self": "/baas/api/v1/pix/keys/550e8400-e29b-41d4-a716-446655440310"
},
"attributes": {
"accountId": "550e8400-e29b-41d4-a716-446655440100",
"keyType": "EMAIL",
"keyValue": "financeiro@empresa-abc.com.br",
"status": "ACTIVE",
"createdAt": "2024-01-15T10:30:00Z"
}
}
}

Listar Chaves Pix

GET /baas/api/v1/pix/keys

Lista as chaves Pix cadastradas.

Query Parameters

ParâmetroTipoDescrição
filter[accountId]UUIDFiltrar por conta
filter[keyType]enumFiltrar por tipo de chave
curl 'https://baas.stg.catalisa.app/baas/api/v1/pix/keys?filter[accountId]=550e8400-e29b-41d4-a716-446655440100' \
-H 'Authorization: Bearer SEU_TOKEN'

Excluir Chave Pix

DELETE /baas/api/v1/pix/keys/:id

Remove uma chave Pix cadastrada.

curl -X DELETE 'https://baas.stg.catalisa.app/baas/api/v1/pix/keys/550e8400-e29b-41d4-a716-446655440310' \
-H 'Authorization: Bearer SEU_TOKEN'

Response (204 No Content)

Sem corpo de resposta.


Gerar QR Code

POST /baas/api/v1/pix/qrcode

Gera um QR Code Pix estático ou dinâmico para recebimento.

Atributos

CampoTipoObrigatórioDescrição
accountIdstringSimID da conta recebedora
typeenumSimSTATIC ou DYNAMIC
amountnumberCondicionalValor (obrigatório para DYNAMIC)
descriptionstringNãoDescrição do pagamento
expiresInMinutesintegerNãoExpiração em minutos (apenas DYNAMIC)
curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/pix/qrcode' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "pix-qrcode",
"attributes": {
"accountId": "550e8400-e29b-41d4-a716-446655440100",
"type": "DYNAMIC",
"amount": 250.00,
"description": "Pagamento pedido #1234",
"expiresInMinutes": 30
}
}
}'

Response (201 Created)

{
"data": {
"type": "pix-qrcode",
"id": "550e8400-e29b-41d4-a716-446655440320",
"attributes": {
"accountId": "550e8400-e29b-41d4-a716-446655440100",
"type": "DYNAMIC",
"amount": 250.00,
"description": "Pagamento pedido #1234",
"qrCodeText": "00020126580014br.gov.bcb.pix0136550e8400-e29b-41d4-a716-446655440100...",
"qrCodeImage": "data:image/png;base64,iVBORw0KGgo...",
"expiresAt": "2024-01-15T11:00:00Z",
"createdAt": "2024-01-15T10:30:00Z"
}
}
}

Devolver Pix (Refund)

POST /baas/api/v1/pix/transfers/:id/refund

Realiza a devolução total ou parcial de um pagamento Pix recebido. A devolução pode ser solicitada em até 90 dias após o recebimento do Pix original.

Atributos

CampoTipoObrigatórioDescrição
amountnumberNãoValor da devolução (se omitido, devolução total)
reasonstringNãoMotivo da devolução
Devolução parcial

É possível realizar múltiplas devoluções parciais para o mesmo Pix, desde que a soma total não ultrapasse o valor original recebido.

curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/pix/transfers/550e8400-e29b-41d4-a716-446655440300/refund' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "pix-refunds",
"attributes": {
"amount": 500.00,
"reason": "Produto devolvido pelo cliente"
}
}
}'

Response (201 Created)

{
"data": {
"type": "pix-refunds",
"id": "550e8400-e29b-41d4-a716-446655440350",
"attributes": {
"transferId": "550e8400-e29b-41d4-a716-446655440300",
"amount": 500.00,
"status": "PROCESSING",
"reason": "Produto devolvido pelo cliente",
"e2eId": "D12345678202401151030abcdefghijkl",
"createdAt": "2024-01-15T14:00:00Z",
"updatedAt": "2024-01-15T14:00:00Z"
}
}
}

Consultar Chave no DICT (Lookup)

POST /baas/api/v1/pix/keys/lookup

Consulta informações de uma chave Pix no Diretório de Identificadores de Contas Transacionais (DICT) do Banco Central. Permite validar se a chave existe e obter os dados do recebedor antes de efetuar um pagamento.

Atributos

CampoTipoObrigatórioDescrição
keyTypeenumSimTipo da chave: CPF, CNPJ, EMAIL, PHONE, EVP
keyValuestringSimValor da chave Pix
curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/pix/keys/lookup' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "pix-key-lookup",
"attributes": {
"keyType": "CPF",
"keyValue": "12345678901"
}
}
}'

Response (200 OK)

{
"data": {
"type": "pix-key-lookup",
"attributes": {
"keyType": "CPF",
"keyValue": "12345678901",
"owner": {
"name": "João Silva",
"document": "***456789**",
"documentType": "CPF"
},
"account": {
"bankCode": "260",
"bankName": "Nu Pagamentos",
"branch": "0001",
"accountNumber": "98765-4",
"accountType": "CHECKING"
},
"createdAt": "2023-06-15T10:30:00Z"
}
}
}
Dados mascarados

Por questões de segurança e conformidade com o Banco Central, o CPF/CNPJ do titular é retornado parcialmente mascarado na consulta DICT.


Decodificar QR Code / BRCode

POST /baas/api/v1/pix/qr-codes/decode

Decodifica um QR Code Pix (BRCode) e retorna as informações do pagamento, incluindo dados do recebedor, valor e chave Pix. Útil para validar e exibir os dados ao usuário antes de confirmar o pagamento.

Atributos

CampoTipoObrigatórioDescrição
qrCodeTextstringSimTexto do QR Code Pix (payload BRCode)
curl -X POST 'https://baas.stg.catalisa.app/baas/api/v1/pix/qr-codes/decode' \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"type": "pix-qrcode-decode",
"attributes": {
"qrCodeText": "00020126580014br.gov.bcb.pix0136550e8400-e29b-41d4-a716-446655440100..."
}
}
}'

Response (200 OK)

{
"data": {
"type": "pix-qrcode-decode",
"attributes": {
"type": "DYNAMIC",
"keyType": "EVP",
"keyValue": "550e8400-e29b-41d4-a716-446655440100",
"amount": 250.00,
"description": "Pagamento pedido #1234",
"recipient": {
"name": "Empresa ABC Ltda",
"document": "12.345.678/0001-90",
"documentType": "CNPJ",
"bankName": "Banco Principal",
"bankCode": "001"
},
"expiresAt": "2024-01-15T11:00:00Z",
"createdAt": "2024-01-15T10:30:00Z"
}
}
}

Erros Comuns

CódigoErroDescrição
400VALIDATIONDados inválidos (chave, valor, tipo, etc.)
400INSUFFICIENT_BALANCESaldo insuficiente para envio
404NOT_FOUNDConta, chave ou pagamento não encontrado
404KEY_NOT_FOUNDChave Pix não encontrada no DICT
409CONFLICTChave Pix já registrada em outra conta
409CONFLICTConta não está ativa
409REFUND_EXCEEDEDValor de devolução excede o valor original
422UNPROCESSABLEChave Pix do destinatário inválida ou inexistente
422INVALID_QRCODEQR Code Pix inválido ou expirado