Skip to main content

Referência da API

Headers

NomeTipoObrigatórioDescrição
AuthorizationstringToken JWT no formato Bearer {token}
Content-TypestringDeve ser application/json

Criar Transação PIX (PIX IN)

Request Body

Campos Principais

NomeTipoObrigatórioValor PadrãoDescrição
amountnumber-Valor da transação (inteiro em centavos)
paymentMethodstring (enum)-Deve ser "PIX"
webhookUrlstring (URL)-URL HTTPS para receber notificações
externalCodestring-Seu código de referência
idempotencyKeystring-Identificador único para evitar duplicações num curto período.
metadataobject-Dados adicionais em formato JSON
isInfoProductbooleantruetrue para produto digital, false para físico
customerobject-Dados do cliente
sellerobject-Dados do vendedor
addressobject-Dados do endereço do cliente
itemsarray-Lista de produtos
pixarrayobjectDados do PIX

Cliente (customer)

NomeTipoObrigatórioDescrição
ipstringIP do cliente (IPv4 ou IPv6)
namestringNome completo
emailstringE-mail válido
documentstringCPF ou CNPJ
mobilePhonestringCelular (formato BR)
landlinestringTelefone Fixo (formato BR)

Vendedor (seller)

NomeTipoObrigatórioDescrição
namestringNome completo
documentstringCPF ou CNPJ

Endereço (address)

Obrigatório quando isInfoProduct é false (para produtos físicos).

NomeTipoObrigatórioDescrição
zipCodestringCEP (formato BR)
streetstringLogradouro
numberstringNúmero
complementstringComplemento
neighborhoodstringBairro
citystringCidade
statestringEstado
countrystringPaís

Itens (items[])

NomeTipoObrigatórioDescrição
titlestringNome do produto
descriptionstringDescrição detalhada
unitPricenumberPreço unitário (inteiro em centavos)
quantityintegerQuantidade

Configuração PIX (pix)

NomeTipoObrigatórioValor PadrãoDescrição
expirationSecondsinteger1800Tempo de expiração (60-86400)

Exemplo de Requisição

curl --location 'https://transaction.cartwave.com.br/transaction' \
--header 'Authorization: Bearer seu-token-jwt' \
--header 'Content-Type: application/json' \
--data '{
"amount": 1199,
"paymentMethod": "PIX",
"webhookUrl": "https://sua-api.com",
"externalCode": "PEDIDO-123",
"idempotencyKey": "PEDIDO-123",
"customer": {
"ip": "192.168.1.1",
"name": "cliente",
"email": "cliente@gmail.com",
"document": "745.267.558-42",
"landline": "(11) 3736-6847",
"mobilePhone": "(11) 99321-4081",
},
"seller": {
"name": "vendedor",
"document": "914.636.318-12"
},
"isInfoProduct": false,
"address": {
"zipCode": "04177-110",
"street": "Rua John Copley",
"number": "654",
"complement": "Apto 42",
"neighborhood": "Parque Bristol",
"city": "São Paulo",
"state": "SP",
"country": "Brasil"
},
"items": [
{
"title": "Produto Exemplo",
"description": "Descrição detalhada do produto",
"unitPrice": 1199,
"quantity": 1
}
],
"metadata": {
"origem": "app",
"campanha": "black_friday"
},
"pix": {
"expirationSeconds": 3600
}
}'

Response

Campos de Resposta

NomeTipoDescrição
idstring (UUID)Identificador único da transação
externalCodestringSeu código de referência
amountnumberValor da transação (inteiro em centavos)
statusstring (enum)Status da transação
pix.uristringCódigo PIX copia e cola
pix.qrCodeBase64stringQR Code em base64
pix.expirationDatestring (ISO 8601)Data/hora de expiração

Status Possíveis

StatusDescrição
PENDINGTransação criada, em processamento
PIX_QRCODE_GENERATEDQR Code gerado, aguardando pagamento
PAIDPagamento confirmado
INFRACTIONEstorno ou Infração do pagamento

Exemplo de Resposta

{
"id": "553e8400-e29b-41d4-a716-436251480000",
"externalCode": "PEDIDO-123",
"amount": 1199,
"status": "PIX_QRCODE_GENERATED",
"pix": {
"uri": "00020126580014br.gov.bcb.pix0136123e4567-e89b-12d3-a456-426614174000",
"qrCodeBase64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"expirationDate": "2025-10-31T14:18:03.090Z"
}
}

Códigos de Erro

CódigoDescriçãoSolução
401Credenciais inválidasVerifique as credenciais
403Sem permissão/autorizaçãoContate o suporte
422Dados inválidos ou faltando e validaçõesVerifique o formato dos dados
429Muitas requisiçõesAguarde e tente novamente
500Erro internoContate o suporte

Validações Importantes

  1. Documentos

    • CPF: 11 dígitos
    • CNPJ: 14 dígitos
  2. Valores

    • Positivos
    • Inteiros
    • Em Centavos
    • Mínimo: configuração do tenant
    • Máximo: configuração do tenant
  3. Webhook

    • URL HTTPS válida
    • Domínio público acessível
    • Resposta 2xx esperada
  4. Endereço

    • CEP: 8 dígitos
    • Obrigatório para produtos físicos
  5. PIX

    • Expiração: 60s a 86400s (24h)
    • QR Code único por transação

Solicitar Saque PIX (PIX OUT)

Request Body

Campos Principais

NomeTipoObrigatórioDescrição
amountnumberValor do saque (inteiro em centavos)
pixKeystringChave PIX de destino
pixKeyTypestring (enum)Tipo da chave: CPF, CNPJ, EMAIL, PHONE, EVP
webhookUrlstring (URL)URL HTTPS para receber notificações
externalCodestringSeu código de referência
idempotencyKeystringIdentificador único para evitar duplicações

Exemplo de Requisição

curl --location 'https://transaction.cartwavehub.com.br/withdraw' \
--header 'Authorization: Bearer seu-token-jwt' \
--header 'Content-Type: application/json' \
--data '{
"amount": 10000,
"pixKey": "12345678910",
"pixKeyType": "CPF",
"webhookUrl": "https://sua-api.com/webhooks/withdraw",
"externalCode": "SAQUE-123",
"idempotencyKey": "unique-key-12345"
}'

Resposta de Sucesso (201)

CampoTipoDescrição
idstring (UUID)Identificador único do saque
externalCodestringSeu código de referência
amountnumberValor do saque (inteiro em centavos)
statusstring (enum)Status do saque

Status Possíveis

StatusDescrição
PENDINGSaque criado, aguardando processamento
PROCESSINGSaque em processamento
COMPLETEDSaque processado com sucesso
FAILEDErro no processamento
CANCELLEDSaque cancelado

Exemplo de Resposta

{
"id": "553e8400-e29b-41d4-a716-436251480000",
"externalCode": "SAQUE-123",
"amount": 10000,
"status": "PENDING"
}

Possíveis Erros

CódigoDescriçãoSolução
401Credenciais inválidasVerifique suas credenciais
403Sem permissão/autorizaçãoContate o suporte
422Dados inválidos ou validaçõesVerifique o formato dos dados
429Muitas requisiçõesAguarde e tente novamente
500Erro internoContate o suporte

Validações Importantes

  1. Valores

    • Positivos
    • Inteiros
    • Em Centavos
    • Mínimo: R$ 1,00 (100 centavos)
  2. Chaves PIX

    • CPF: 11 dígitos
    • CNPJ: 14 dígitos
    • EMAIL: formato válido
    • PHONE: formato brasileiro (+5511999999999)
    • EVP: UUID válido
  3. Saldo

    • Verificação automática de saldo disponível
    • Taxas são deduzidas automaticamente

📚 Próximos Passos

PIX IN (Recebimentos)

  1. Criar Transação PIX
  2. Detalhes da Transação
  3. Configurar Webhooks PIX IN

PIX OUT (Pagamentos)

  1. Solicitar Saque PIX
  2. Configurar Webhooks PIX OUT
  3. Lista de Erros