Criar uma nova assinatura (Checkout de assinatura)

Cria um Checkout de assinatura — uma página de pagamento igual ao Checkout comum, mas para cobrança recorrente.

Aceita os mesmos parâmetros do Checkout (returnUrl, completionUrl, customerId, externalId, metadata, coupons, methods). O Checkout de assinatura aceita apenas um produto; o ciclo (frequência) já deve estar definido no produto ao criá-lo na loja — não é enviado no checkout.

post/subscriptions/create

Request body

methodsstring[]

Métodos de pagamento disponíveis. Assinaturas suportam apenas CARD. Padrão ["CARD"].

returnUrlstring uri

URL para onde o cliente será redirecionado ao clicar em "Voltar" no checkout.

completionUrlstring uri

URL para onde o cliente será redirecionado após o pagamento ser concluído.

customerIdstring

ID de um cliente já cadastrado na sua loja. Se informado, o checkout será pré-preenchido com os dados deste cliente.

couponsstring[]

Lista de cupons que podem ser utilizados nesta cobrança.

externalIdstring

ID da assinatura no seu sistema, caso queira manter uma referência própria.

metadataobject

Metadados adicionais. Campo livre para a sua aplicação.

upSellProductIdstring

ID de um produto avulso (sem cycle) a ser ofertado como upsell após a conclusão do pagamento.

O produto deve estar com status: ACTIVE e não pode ter cycle — apenas produtos de pagamento único são aceitos.

Exemplo: "prod_bump456xyz"

dueDatestring date

Data de vencimento do boleto no formato YYYY-MM-DD (ex: "2026-08-15"). Opcional. Só é válido quando methods inclui BOLETO; ignorado nos demais métodos.

Se omitido, o vencimento padrão é de 3 dias úteis. Não pode ser data no passado. Máximo de 365 dias no futuro.

Example request

{
  "items": [
    {
      "id": "prod-1234",
      "quantity": 1
    }
  ],
  "customerId": "cust_abc123xyz",
  "methods": [
    "CARD"
  ]
}

Response

Checkout de assinatura criado com sucesso. Use a url retornada para redirecionar o cliente.

errorstring nullable
successboolean

Se a requisição obteve sucesso ou não.

Example response

{
  "data": {
    "id": "bill_abc123xyz",
    "externalId": "pedido-123",
    "url": "https://app.abacatepay.com/pay/bill_abc123xyz",
    "amount": 10000,
    "items": [
      {
        "id": "prod_456",
        "quantity": 2
      }
    ],
    "status": "PENDING",
    "coupons": [],
    "upSellProductId": "prod_bump456xyz",
    "installmentsCount": 3,
    "dueDate": "2026-08-15",
    "interest": {
      "value": 100
    },
    "fine": {
      "value": 200,
      "type": "PERCENTAGE"
    },
    "metadata": {},
    "createdAt": "2024-11-04T18:38:28.573Z",
    "updatedAt": "2024-11-04T18:38:28.573Z"
  },
  "success": true
}

Changes