Skip to main content
POST
/
subscriptions
/
create
Criar uma nova assinatura (Checkout de assinatura)
curl --request POST \
  --url https://api.abacatepay.com/v2/subscriptions/create \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "items": [
    {
      "id": "prod-1234",
      "quantity": 1
    }
  ],
  "customerId": "cust_abc123xyz",
  "externalId": "subs-123",
  "returnUrl": "https://seusite.com/voltar",
  "completionUrl": "https://seusite.com/sucesso",
  "metadata": {
    "plan": "premium"
  }
}
'
{
  "data": {
    "id": "bill_abc123xyz",
    "externalId": "pedido-123",
    "url": "https://app.abacatepay.com/pay/bill_abc123xyz",
    "amount": 10000,
    "paidAmount": null,
    "items": [
      {
        "id": "prod_456",
        "quantity": 2
      }
    ],
    "status": "PENDING",
    "coupons": [],
    "devMode": false,
    "customerId": null,
    "returnUrl": null,
    "completionUrl": null,
    "receiptUrl": null,
    "metadata": {},
    "createdAt": "2024-11-04T18:38:28.573Z",
    "updatedAt": "2024-11-04T18:38:28.573Z"
  },
  "error": null,
  "success": true
}
Cria um checkout de assinatura (mesmo fluxo do Checkout). Envie um único item em items (id e quantity); o produto deve ter ciclo definido na loja. Use a url da resposta para redirecionar o cliente.

Authorizations

Authorization
string
header
required

Todas as requisições devem incluir sua chave de API no header Authorization usando o formato Bearer <abacatepay-api-key>. Sem esse header a requisição será rejeitada.

Saiba mais sobre como criar e usar chaves de API na documentação de autenticação.

Body

application/json

Mesmos parâmetros do Checkout, com items contendo exatamente um item (id e quantity). O produto referenciado deve ter sido criado com ciclo de assinatura (frequency) na loja.

items
object[]
required

Lista com exatamente um item. O produto deve ter sido criado com ciclo de assinatura (frequency). O valor total é calculado a partir do produto.

Required array length: 1 element
method
enum<string>

Método de pagamento disponível.

Available options:
PIX,
CARD
returnUrl
string<uri>

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

completionUrl
string<uri>

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

customerId
string

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

coupons
string[]

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

Maximum array length: 50
externalId
string

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

metadata
object

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

Response

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

data
object
error
string | null
Example:

null

success
boolean

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

Example:

true