# Criar uma nova Payment Intent

Criar uma Intenção de Pagamento.

Você pode criar uma Intenção de Pagamento nas seguintes configurações:

  |Beneficiário|Cliente (Pagador)|Exemplo|
  |---|---|---|
  |Chave Pix|Já registrado no Belvo|Chave Pix (Com Cliente Existente)|
  |Chave Pix|Registrar no Belvo no momento da solicitação da Intenção de Pagamento|Chave Pix (Com Novo Cliente)|
  |Conta Bancária (Já Registrada)|Já Registrado|Conta Bancária (Com Cliente Existente)|
  |Conta Bancária (Já Registrada)|Registrar no Belvo no momento da solicitação da Intenção de Pagamento|Conta Bancária (Com Novo Cliente)|
  |Conta Bancária (Registrar no momento da solicitação da Intenção de Pagamento)|Registrar no Belvo no momento da solicitação da Intenção de Pagamento|Conta Bancária (Com Novo Cliente e Conta Bancária do Beneficiário)|

  {% admonition type="warning" name="Pagamentos Pix" %}
    Quando você cria Intenções de Pagamento usando uma Chave Pix, é necessário fazer uma solicitação PATCH Complete a Payment Intent para completar a criação da Intenção de Pagamento.
  {% /admonition %}

Endpoint: POST /payments/br/payment-intents/
Version: 1.223.0
Security: basicAuth

## Header parameters:

  - `Belvo-Idempotency-Key` (string)
    Um UUID para garantir solicitações idempotentes. Esta chave ajuda a prevenir operações duplicadas, permitindo que o servidor reconheça solicitações repetidas com a mesma chave e retorne a resposta original em vez de processar a solicitação novamente.

{% admonition type="info" name="Altamente Recomendado" %}
  Recomendamos fortemente incluir este cabeçalho em qualquer solicitação onde você queira garantir idempotência, como na criação de recursos ou na execução de ações que não devem ser duplicadas.
{% /admonition %}

Você pode receber os seguintes erros caso haja um problema com sua solicitação:

- 409 Conflict: Se uma solicitação anterior ainda estiver sendo processada com a mesma chave de idempotência. Verifique o cabeçalho de resposta Belvo-Idempotency-Status para o estado atual dessa chave de idempotência.
- 422 Unprocessable Entity: Se uma nova solicitação usar uma chave de idempotência que já foi utilizada em outra solicitação contendo um payload diferente. Nesse caso, você deve alterar a chave de idempotência para um novo valor único.

{% admonition type="warning" name="Em Beta" %}
  Este recurso está atualmente em Beta e disponível apenas para clientes selecionados. Se você encontrar algum problema ou estiver interessado em usar este recurso, entre em contato com seu representante da Belvo.
{% /admonition %}
    Example: "82737f32-7730-4832-a985-dd86df70301c"

## Response 400 fields (application/json):

  - `code` (string, required)
    Um código de erro único (null, does_not_exist, required, already_registered, invalid_choice, max_length, min_length, blank, null, cancellation_error, idempotency_key_invalid) que permite classificar e tratar o erro de forma programática.
    Example: "required"

  - `message` (string, required)
    Uma breve descrição do erro.

A descrição pode ser (entre outras):

  - Este campo é obrigatório.
  - Objeto com nome=narnia não existe.
  - Este campo não pode ser nulo.
  - Este campo não pode estar em branco.
  - Este cliente já está registrado.
  - Certifique-se de que este campo tenha pelo menos 2 caracteres.
  - Certifique-se de que este campo não tenha mais de 4 caracteres.
  - O valor inserido não é válido.
  - Você deve definir todos os campos obrigatórios: username, password, username_type.
  - Payment Intent não pode ser cancelado porque não está SCHEDULED.
  - Payment Intent não pode ser cancelado pois o horário limite (23:59:00) já passou.
  - A chave de idempotência fornecida é inválida.
    Example: "This field is required."

  - `request_id` (string, required)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

  - `field` (string,null)
    Nome do campo onde o erro foi encontrado.

> Nota: Este campo só está presente quando o erro está relacionado a um campo específico.
    Example: "institution"

## Response 403 fields (application/json):

  - `code` (string)
    Um código de erro único (access_to_resource_denied) que permite classificar e tratar o erro programaticamente.

ℹ️ Consulte nosso DevPortal para mais informações sobre como lidar com 403 access_to_resource_denied.
    Example: "access_to_resource_denied"

  - `message` (string)
    Uma breve descrição do erro.

Para erros access_to_resource_denied, a descrição é:

  - You don't have access to this resource..
    Example: "You don't have access to this resource."

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 404 fields (application/json):

  - `code` (string)
    Um código de erro único (not_found) que permite classificar e lidar com o erro programaticamente.
    Example: "not_found"

  - `message` (string)
    Uma breve descrição do erro.

Para erros not_found, a descrição é:

  - Not found
    Example: "Not found"

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 408 fields (application/json):

  - `code` (string)
    Um código de erro único (request_timeout) que permite classificar e lidar com o erro programaticamente.

ℹ️ Consulte nosso DevPortal para mais informações sobre como lidar com erros 408 request_timeout.
    Example: "request_timeout"

  - `message` (string)
    Uma breve descrição do erro.

Para erros de request_timeout, a descrição é:

  - The request timed out, you can retry asking for less data by changing your query parameters.
    Example: "The request timed out, you can retry asking for less data by changing your query parameters"

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 409 fields (application/json):

  - `code` (string, required)
    Um código de erro único (idempotency_key_conflict) que permite classificar e tratar o erro de forma programática.
    Example: "idempotency_key_conflict"

  - `message` (string, required)
    Uma breve descrição do erro.

Para erros de idempotency_key_conflict, a descrição é:

  - Uma solicitação com esta idempotency key já está sendo processada.
    Example: "A request with this idempotency key is already being processed."

  - `request_id` (string, required)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 422 fields (application/json):

  - `code` (string, required)
    Um código de erro único (idempotency_payload_mismatch) que permite classificar e tratar o erro programaticamente.
    Example: "idempotency_payload_mismatch"

  - `message` (string, required)
    Uma breve descrição do erro.

Para erros idempotency_payload_mismatch, a descrição é:

  - Já existe uma solicitação diferente com a mesma chave de idempotência.
    Example: "A different request with the same idempotency key already exists."

  - `request_id` (string, required)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"

## Response 500 fields (application/json):

  - `code` (string)
    Um código de erro único (unexpected_error) que permite classificar e tratar o erro de forma programática.

ℹ️ Consulte nosso DevPortal para mais informações sobre como lidar com erros 500 unexpected_error.
    Example: "unexpected_error"

  - `message` (string)
    Uma breve descrição do erro.

Para erros unexpected_error, a descrição é:

  - Belvo não consegue processar a solicitação devido a um problema interno do sistema ou a uma resposta não suportada de uma instituição.
    Example: "Belvo is unable to process the request due to an internal system issue or to an unsupported response from an institution"

  - `request_id` (string)
    Um ID único de 32 caracteres da solicitação (correspondente a um padrão regex de: [a-f0-9]{32}). Forneça este ID ao entrar em contato com a equipe de suporte da Belvo para acelerar as investigações.
    Example: "9e7b283c6efa449c9c028a16b5c249fb"


