API de Pagamentos Vanguru
Este documento fornece instruções sobre como integrar com a API de Pagamentos do Vanguru.
Autenticação
Gerar um token de desenvolvimento
GET /auth/dev- Descrição: Gera um token JWT de desenvolvimento. Este é um método de autenticação simplificado para uso em ambientes de desenvolvimento.
- Integração:
- Método:
GET - Caminho:
/auth/dev - Resposta:
json { "token": "seu_token_jwt" }
- Método:
Cliente (Customer)
Criar um cliente
POST /v1/customer- Descrição: Cria um novo cliente no sistema.
- Integração:
- Método:
POST - Caminho:
/v1/customer - Corpo:
json { "name": "Nome do Cliente", "cpfCnpj": "12345678901" } - Resposta:
201 Createdcom a mensagem "Cliente criado com sucesso".
- Método:
Buscar um cliente
GET /v1/customer/{cpfCnpj}- Descrição: Recupera o ID de um cliente pelo seu CPF/CNPJ.
- Integração:
- Método:
GET - Caminho:
/v1/customer/{cpfCnpj} - Resposta:
200 OKcom o ID do cliente como string.
- Método:
Pagamento (Payment)
Criar um pagamento
POST /v1/payment- Descrição: Cria um novo pagamento para um cliente.
- Integração:
- Método:
POST - Caminho:
/v1/payment - Corpo:
json { "customer": "id_do_cliente", "billingType": "CREDIT_CARD", "value": 100.00, "dueDate": "2024-12-31", "description": "Mensalidade escolar" } - Resposta:
201 Createdcom a mensagem "Pagamento criado com sucesso".
- Método:
Listar pagamentos do cliente
GET /v1/payment/{cpfCustomer}- Descrição: Recupera uma lista de todos os pagamentos de um cliente específico.
- Integração:
- Método:
GET - Caminho:
/v1/payment/{cpfCustomer} - Resposta:
200 OKcom uma lista de objetos de pagamento.
- Método:
Buscar um pagamento específico
GET /v1/payment/{cpfCustomer}/{idPayment}- Descrição: Recupera um pagamento específico de um cliente.
- Integração:
- Método:
GET - Caminho:
/v1/payment/{cpfCustomer}/{idPayment} - Resposta:
200 OKcom o objeto de pagamento.
- Método:
Criar um token de cartão de crédito
POST /v1/payment/tokenCreditCard- Descrição: Cria um token para um cartão de crédito, que pode ser usado para pagamentos futuros.
- Integração:
- Método:
POST - Caminho:
/v1/payment/tokenCreditCard - Corpo:
json { "customer": "id_do_cliente", "creditCard": { "holderName": "Nome no Cartão", "number": "1234123412341234", "expiryMonth": "12", "expiryYear": "2030", "ccv": "123" }, "creditCardHolderInfo": { "name": "Nome do Titular", "email": "titular@exemplo.com", "cpfCnpj": "12345678901", "postalCode": "12345-678", "addressNumber": "123", "phone": "11987654321" } } - Resposta:
201 Createdcom a mensagem "Token criado com sucesso".
- Método:
Webhook
Webhook do Asaas
POST /v1/webhook- Descrição: Recebe eventos de webhook do gateway de pagamento Asaas. Este endpoint é para uso interno e deve ser configurado no dashboard do Asaas.
- Integração:
- Método:
POST - Caminho:
/v1/webhook - Cabeçalho:
asaas-access-tokencom o token do webhook. - Corpo: Payload do evento de webhook do Asaas.
- Resposta:
200 OK.
- Método:
Subconta (Sub-account)
Criar uma subconta
POST /v1/subaccount- Descrição: Cria uma nova subconta.
- Integração:
- Método:
POST - Caminho:
/v1/subaccount - Corpo:
json { "name": "Nome da Subconta", "email": "subconta@exemplo.com", "cpfCnpj": "12345678901" } - Resposta:
201 Createdcom a mensagem "SubConta criada com sucesso".
- Método:
Documentos (Document)
Verificar documentos pendentes
GET /v1/document/pending- Descrição: Verifica se há documentos pendentes para uma subconta.
- Integração:
- Método:
GET - Caminho:
/v1/document/pending - Parâmetros de Consulta:
key: A chave para identificar a subconta (ex: "id" ou "cpfCnpj").value: O valor da chave.
- Resposta:
200 OKcom informações dos documentos.
- Método: