POST

Criar Checkout

Crie um novo link de pagamento (checkout) para receber pagamentos de seus clientes. O checkout suporta cartão de crédito, PIX e boleto.

Endpoint

POST /api/checkout

Parâmetros da Requisição

Campo Tipo Obrigatório Descrição
value decimal Sim Valor da cobrança
maxInstallmentCount int Sim Número de parcelas

Valor permitido de 1 a 21

billingType string Sim Tipo de cobrança.

Opções: CREDITO, PIX, BOLETO, CREDITO_PIX, CREDITO_BOLETO, PIX_BOLETO, CREDITO_PIX_BOLETO.

recurrent string Condicional Periodicidade da recorrência. Atualmente somente MENSAL.

Ao enviar este campo, a cobrança se torna automaticamente recorrente. Para criar uma recorrência, envie: billingType = "CREDITO" e recurrent = "MENSAL".

taxId string Condicional CPF ou CNPJ do cliente

Obrigatório quando o billingType for BOLETO ou incluir boleto (_BOLETO)

customerName string Condicional Nome completo do cliente

Obrigatório quando o billingType for BOLETO ou incluir boleto _BOLETO

dueDate datetime Não Data de vencimento (para boleto)
fine int Não Percentual de multa após vencimento (boleto)

(padrão: 0)

interest int Não Percentual de juros ao mês após vencimento (boleto)

(padrão: 0)

externalReference string Não Identificador único do seu sistema
description string Não Descrição da cobrança
expirationDate datetime Não Data de expiração do link de pagamento
customerEmail string Não Email do cliente
successCallback string Não URL de redirecionamento em caso de sucesso
errorCallback string Não URL de redirecionamento em caso de erro

Exemplo de Requisição

curl -X POST "https://api.recebeaqui.com/v2/api/checkout" \
  -H "Authorization: Bearer {seu_token_de_api}" \
  -H "Content-Type: application/json" \
  -d '{
    "value": 100.50,
    "maxInstallmentCount": 12,
    "billingType": "CREDITO_PIX_BOLETO",
    "description": "Produto XYZ",
    "customerName": "João Silva",
    "customerEmail": "joao@email.com",
    "taxId": "12345678901",
    "externalReference": "pedido-12345",
    "antifraud": true,
    "successCallback": "https://seusite.com/sucesso",
    "errorCallback": "https://seusite.com/erro"
  }'
const checkout = {
  value: 100.50,
  maxInstallmentCount: 12,
  billingType: "CREDITO_PIX_BOLETO",
  description: "Produto XYZ",
  customerName: "João Silva",
  customerEmail: "joao@email.com",
  taxId: "12345678901",
  externalReference: "pedido-12345",
  antifraud: true,
  successCallback: "https://seusite.com/sucesso",
  errorCallback: "https://seusite.com/erro"
};

const response = await fetch('https://api.recebeaqui.com/v2/api/checkout', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer {seu_token_de_api}',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(checkout)
});

const data = await response.json();
var checkout = new
{
    value = 100.50m,
    maxInstallmentCount = 12,
    billingType = "CREDITO_PIX_BOLETO",
    description = "Produto XYZ",
    customerName = "João Silva",
    customerEmail = "joao@email.com",
    taxId = "12345678901",
    externalReference = "pedido-12345",
    antifraud = true,
    successCallback = "https://seusite.com/sucesso",
    errorCallback = "https://seusite.com/erro"
};

var json = JsonSerializer.Serialize(checkout);
var content = new StringContent(json, Encoding.UTF8, "application/json");

client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "{seu_token_de_api}");
var response = await client.PostAsync("https://api.recebeaqui.com/v2/api/checkout", content);

Resposta de Sucesso

Em caso de sucesso (código 200), você receberá:

{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "externalReference": "pedido-12345",
  "paymentLink": "https://app.recebeaqui.com.br/Pagar/123e4567-e89b-12d3-a456-426614174000"
}

Campos da Resposta

Campo Tipo Descrição
id string ID único do checkout gerado pelo RecebeAqui
externalReference string Referência externa que você informou na criação
paymentLink string Link de pagamento para enviar ao cliente