# API de Débito Direto da Belvo

Nossa infraestrutura de pagamento tem como objetivo facilitar, acelerar e modular a movimentação de dinheiro entre empresas e pessoas.

Version: 1.0.0

## Servers

```
https://api.sandbox.directdebit.belvo.com
```

## Security

### ApiKeyAuth

Type: apiKey
In: header
Name: api-key-id

### ApiKeySecret

Type: apiKey
In: header
Name: api-key-secret

## Download OpenAPI description

[API de Débito Direto da Belvo](https://developers.belvo.com/_bundle/@l10n/pt-BR/apis/BelvoPaymentsMexico.yaml)

## Institutions (Direct Debit Mexico)

Use o recurso Institutions para: listar todas as instituições para as quais você pode fazer pagamentos e de onde pode recebê-los.

### Listar todas as instituições

 - [GET /institutions](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/institutions-(direct-debit-mexico)/listdirectdebitinstitutions.md): Liste todas as instituições disponíveis.

## Customers (Direct Debit Mexico)

Um Cliente é o usuário final, seja um indivíduo ou uma empresa, que possui a conta bancária envolvida em uma operação de débito ou pagamento. O Belvo Direct Debit armazena as informações essenciais deste Cliente para simplificar e reutilizá-las em vários métodos de pagamento e destinos de pagamento.

### Criar um cliente

 - [POST /customers](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/customers-(direct-debit-mexico)/createdirectdebitcustomer.md): Criar um novo cliente de Débito Direto

### Listar todos os clientes

 - [GET /customers/](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/customers-(direct-debit-mexico)/listdirectdebitcustomers.md): Liste todos os clientes de Débito Direto associados à sua conta.

### Atualizar um cliente

 - [POST /customers/{customerId}](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/customers-(direct-debit-mexico)/updatedirectdebitcustomer.md): Atualizar um cliente de débito direto existente

### Obter os detalhes de um cliente

 - [GET /customers/{customerId}](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/customers-(direct-debit-mexico)/detaildirectdebitcustomer.md): Obtenha os detalhes sobre um cliente específico de débito direto.

## Payment Methods (Direct Debit Mexico)

Um Método de Pagamento contém os detalhes da conta bancária de origem da qual você debitará os fundos.

### Criar um método de pagamento

 - [POST /payment_methods/bank_accounts](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-methods-(direct-debit-mexico)/createdirectdebitpaymentmethod.md): Criar um novo método de pagamento para um cliente

### Liste todos os métodos de pagamento

 - [GET /payment_methods](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-methods-(direct-debit-mexico)/listdirectdebitpaymentmethods.md): Liste todos os métodos de pagamento associados à sua conta.

### Obter os detalhes de um método de pagamento

 - [GET /payment_methods/{paymentMethodId}](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-methods-(direct-debit-mexico)/detaildirectdebitpaymentmethod.md): Obtenha os detalhes sobre um método de pagamento específico.

### Desativar um método de pagamento

 - [POST /payment_methods/{paymentMethodId}/deactivate](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-methods-(direct-debit-mexico)/deactivatedirectdebitpaymentmethod.md): Desativar um método de pagamento específico.

> 📘 Informações
>
> Você só pode desativar um método de pagamento quando o status estiver no estado active e não houver solicitações de pagamento pendentes (paymentRequest.status = processing).

## Payment Requests (Direct Debit Mexico)

Uma Solicitação de Pagamento é a transação real que você deseja executar para debitar fundos de uma conta. Cada Solicitação de Pagamento deve estar associada a um Método de Pagamento previamente criado. Para cada nova transação que você deseja realizar, é necessário criar uma nova Solicitação de Pagamento.

### Criar uma solicitação de pagamento

 - [POST /payment_requests](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-requests-(direct-debit-mexico)/createdirectdebitpaymentrequest.md): Crie uma nova solicitação de pagamento para um método de pagamento existente.

> 📘 Chaves de Idempotência
>
> Este método suporta chaves de idempotência.

### Listar todas as solicitações de pagamento

 - [GET /payment_requests](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-requests-(direct-debit-mexico)/listdirectdebitpaymentrequests.md): Liste todas as solicitações de pagamento associadas à sua conta.

### Obter os detalhes de uma solicitação de pagamento

 - [GET /payment_requests/{paymentRequestId}](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-requests-(direct-debit-mexico)/detaildirectdebitpaymentrequest.md): Obtenha os detalhes sobre uma solicitação de pagamento específica.

### Cancelar uma solicitação de pagamento

 - [POST /payment_requests/{paymentRequestId}/cancel](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-requests-(direct-debit-mexico)/canceldirectdebitpaymentrequest.md): Cancelar uma solicitação de pagamento.

> 📘 Informações
>
> Você só pode cancelar uma solicitação de pagamento quando o status estiver no estado initial.

## Movements (Direct Debit Mexico)

Use o recurso Movements para listar todos os Movements da conta (transações que ocorrem dentro da sua conta bancária).

### Obtenha os movimentos da sua conta

 - [GET /account_movements](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/movements-(direct-debit-mexico)/listdirectdebitaccountmovements.md): Obtenha um extrato dos movimentos que ocorreram em sua conta.

## Payment Consents (Direct Debit Mexico)

Um Consentimento em Débito Direto é a prova de que seu cliente confirmou que terá fundos debitados de sua conta (Método de Pagamento). Essa prova é composta por fotos do documento de identidade, uma selfie e um contrato assinado.

### Criar um Consentimento

 - [POST /consents](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-consents-(direct-debit-mexico)/createconsent.md): Crie o Consentimento inicial para um Método de Pagamento. Após criar um Consentimento, você pode enviar documentos de suporte que servem como consentimento do seu cliente para debitar a conta bancária dele usando o endpoint Upload Consent Files.

### Listar todos os Consents

 - [GET /consents](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-consents-(direct-debit-mexico)/listallconsents.md): Liste todos os Consentimentos que você criou para seus Métodos de Pagamento.

### Obter os Detalhes de um Consentimento

 - [GET /consents/{consentId}](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-consents-(direct-debit-mexico)/getconsentdetails.md): Obtenha os detalhes de um consentimento específico.

### Fazer Upload de Arquivos de Consentimento

 - [POST /consents/{consentId}/files](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-consents-(direct-debit-mexico)/uploadconsentfiles.md): Envie arquivos que sirvam como consentimento do seu cliente para debitar a conta bancária dele. Você deve enviar todos os arquivos necessários para um Consentimento (scans frente e verso do documento de identidade, uma selfie do usuário segurando o documento de identidade e um contrato assinado). Cada arquivo não pode ter mais de 20MB.

### Obter os Arquivos de um Consentimento

 - [GET /consents/{consentId}/files](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/payment-consents-(direct-debit-mexico)/listconsentfiles.md): Liste todos os arquivos que foram enviados para um Consentimento específico.

## Loans (Direct Debit Mexico)

Use o recurso Loans para registrar e rastrear instantâneos do portfólio de empréstimos para clientes de débito direto. Cada instantâneo captura o estado atual da dívida de um cliente.

Cada instantâneo é identificado de forma única por `merchantCustomerId` + `targetCollectionDate`, onde `targetCollectionDate` é a data em que a Belvo tentará coletar o pagamento — definida automaticamente para o dia em que a solicitação foi feita ou para o próximo dia útil no México. Você só pode fazer um POST de um instantâneo por cliente por dia; uma solicitação duplicada no mesmo dia do calendário retorna um `409 Conflict`.

### Criar um instantâneo de empréstimo

 - [POST /loans](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/loans-(direct-debit-mexico)/createdirectdebitloan.md): Crie uma nova captura de empréstimo para um cliente. Cada solicitação bem-sucedida aciona uma tentativa automática de cobrança por débito direto no mesmo dia ou no próximo dia útil no México. A resposta retorna o id da captura recém-criada. Quando a tentativa de cobrança é concluída, a Belvo envia uma notificação de webhook com o resultado.

### Listar todos os snapshots de empréstimos

 - [GET /loans](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/loans-(direct-debit-mexico)/listdirectdebitloans.md): Liste e filtre os instantâneos do histórico de empréstimos associados à sua conta.

### Obter os detalhes de um instantâneo de empréstimo

 - [GET /loans/{id}](https://developers.belvo.com/pt-br/apis/belvopaymentsmexico/loans-(direct-debit-mexico)/detaildirectdebitloan.md): Obtenha os detalhes de um instantâneo específico do histórico de empréstimos.

