Assinatura criada

Evento: SUBSCRIPTION_CREATED

Uma assinatura nova foi registrada.

Quando dispara: logo depois da criação da assinatura, no checkout da PagPolar ou em POST /v1/plans/offer/{id}/subscribe. Se ainda não tiver sido enviado para a assinatura, também dispara quando o gateway ativa o primeiro ciclo no cartão.

O que fazer: registre a assinatura pelo subscription.id. Não libere o acesso. No cartão, libere só quando GET /v1/subscriptions/{id} trouxer status ACTIVE.

Atenção: no cartão, a assinatura nasce DRAFT; em PIX ou boleto, nasce PENDING_PAYMENT.

Exemplo de payload

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "event": "SUBSCRIPTION_CREATED",
  "creation_date": "2026-01-28T10:00:05.000Z",
  "version": "1.0.0",
  "data": {
    "subscription": {
      "id": "c3d4e5f6-a7b8-4012-8def-123456789012",
      "external_id": null,
      "status": "DRAFT",
      "start_at": "2026-01-28T10:00:00.000Z",
      "end_at": null,
      "next_billing_at": "2026-02-28T10:00:00.000Z",
      "payment_method": "CREDIT_CARD",
      "total_amount": "49.9000",
      "created_at": "2026-01-28T10:00:00.000Z"
    },
    "product": {
      "id": "8a2cdb3c-4a6d-4bad-8add-1a0c6b2cab5c",
      "name": "Assinatura Premium Mensal",
      "type": "SUBSCRIPTION"
    },
    "buyer": {
      "name": "João Silva",
      "email": "joao.silva@email.com",
      "document": "12345678900",
      "phone": "11999999999"
    },
    "source": {
      "channel": "API",
      "api_credential_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
    }
  }
}

Header Parameters

Authorization?string

Bearer <webhook_authorization>: o token do webhook, exibido uma única vez na criação da credencial. Compare com o valor guardado antes de processar o evento.

X-PagPolar-Test?string

true só nos envios de teste feitos pelo Playground de webhooks do portal. Os eventos reais não trazem este header.

Value in"true"
idstring

Id desta tentativa de entrega. Cada nova tentativa do mesmo evento chega com outro id: não use este campo para evitar processamento duplicado.

Formatuuid
eventstring

Nome do evento.

creation_datestring

Data e hora (UTC) em que esta tentativa foi montada.

Formatdate-time
versionstring

Versão do formato do payload.

test?boolean

Só aparece nos envios de teste feitos pelo Playground de webhooks do portal, junto com o header X-PagPolar-Test: true. Os eventos reais não trazem este campo: ignore em produção qualquer evento com test: true.

dataSubscriptionEventData

Dados do evento. Chega vazio ({}) se a venda ou a assinatura não for encontrada no momento do envio.

Response Body

Chargeback aprovado POST

**Evento:** `TRANSACTION_CHARGEBACK_APPROVED` O banco do cliente aprovou uma contestação da compra (chargeback) e o valor foi revertido. **Quando dispara:** quando o gateway avisa a PagPolar que o chargeback foi aprovado. **O que fazer:** revogue o acesso ao que foi vendido e marque o pedido como contestado. **Atenção:** se a venda já estava `REFUNDED` ou `CANCELED`, o evento chega com esse status, sem mudar para `CHARGEBACK_APPROVED`. Diferente de `TRANSACTION_REFUNDED`, a transação traz `chargeback_approved_at` e não traz `refund_reason` nem `refund_at`. ### Exemplo de payload ```json { "id": "550e8400-e29b-41d4-a716-446655440000", "event": "TRANSACTION_CHARGEBACK_APPROVED", "creation_date": "2026-02-10T09:15:05.000Z", "version": "1.0.0", "data": { "transaction": { "id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d", "identifier": "PPO0087103960", "status": "CHARGEBACK_APPROVED", "type": "BILLING", "payment_method": "CREDIT_CARD", "total_amount": "555.2400", "net_amount": 450, "effective_value": "426.5500", "base_tax": "23.4500", "installment_tax": "105.2400", "base_fixed_tax": "0.9900", "base_percentage_tax": "22.4600", "installments": 12, "cycle": 1, "paid_at": "2026-01-29T14:35:00.000Z", "created_at": "2026-01-29T14:00:00.000Z", "chargeback_approved_at": "2026-02-10T09:15:00.000Z" }, "items": [ { "id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "quantity": 1, "amount": "450.0000", "original_amount": "500.0000", "discount_value": "50.0000", "product": { "id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d", "name": "Curso Completo de Marketing Digital", "type": "DIGITAL" }, "price": { "id": "1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed", "title": "Plano Anual", "price": "500.0000", "identifier": "PPP1234567890" } } ], "product": { "id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d", "name": "Curso Completo de Marketing Digital", "type": "DIGITAL" }, "buyer": { "name": "João Silva", "email": "joao.silva@email.com", "document": "12345678900", "phone": "11999999999" }, "address": { "street": "Rua das Flores", "number": "123", "complement": "Apto 4B", "neighborhood": "Centro", "city": "São Paulo", "state": "SP", "postal_code": "01000-000" }, "payment_details": { "origin": "DIRECT", "qr_code": null, "billet_barcode": null, "billet_link": null, "last_credit_card_digits": "4242", "shipping_value": "0.00" }, "coupon": null, "subscription": null, "affiliate": null, "source": { "channel": "API", "api_credential_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7" } } } ```

Assinatura confirmada POST

**Evento:** `SUBSCRIPTION_CONFIRMED` O gateway aceitou a assinatura no cartão de crédito. **Quando dispara:** quando a PagPolar termina de criar a assinatura no gateway. Essa criação acontece depois da resposta de `POST /v1/plans/offer/{id}/subscribe` (ou da compra no checkout). **O que fazer:** guarde `subscription.external_id` se precisar dele. Não libere o acesso: consulte `GET /v1/subscriptions/{id}` e libere só quando `status` for `ACTIVE`. **Atenção:** o `status` **continua `DRAFT`** e só vira `ACTIVE` quando o gateway informa a cobrança paga. Só existe para assinaturas no cartão. Se a criação no gateway falhar, chega `SUBSCRIPTION_FAILED` no lugar deste evento. ### Exemplo de payload ```json { "id": "550e8400-e29b-41d4-a716-446655440000", "event": "SUBSCRIPTION_CONFIRMED", "creation_date": "2026-01-28T10:00:20.000Z", "version": "1.0.0", "data": { "subscription": { "id": "c3d4e5f6-a7b8-4012-8def-123456789012", "external_id": "sub_abc123", "status": "DRAFT", "start_at": "2026-01-28T10:00:00.000Z", "end_at": null, "next_billing_at": "2026-02-28T10:00:00.000Z", "payment_method": "CREDIT_CARD", "total_amount": "49.9000", "created_at": "2026-01-28T10:00:00.000Z" }, "product": { "id": "8a2cdb3c-4a6d-4bad-8add-1a0c6b2cab5c", "name": "Assinatura Premium Mensal", "type": "SUBSCRIPTION" }, "buyer": { "name": "João Silva", "email": "joao.silva@email.com", "document": "12345678900", "phone": "11999999999" }, "source": { "channel": "API", "api_credential_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7" } } } ```