> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abacatepay.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Deletar um checkout de assinatura

> Exclui um checkout de assinatura (`bill_...` com `frequency: SUBSCRIPTION`), que deixa de aparecer nas listagens.

As assinaturas que o checkout já gerou continuam ativas. Para encerrá-las, use `POST /subscriptions/cancel`.


Exclui um checkout de assinatura (`bill_...` com `frequency: SUBSCRIPTION`). Depois da exclusão, ele deixa de aparecer em [Listar checkouts de assinatura](/pages/subscriptions/checkouts-list).

<Card horizontal>
  Requer a permissão `SUBSCRIPTION:DELETE`.
</Card>

<Warning>
  Excluir o checkout **não cancela** as assinaturas que ele já gerou. Para encerrá-las, use [Cancelar uma assinatura](/pages/subscriptions/cancel) em cada `subs_...`. Para encontrá-las, use [Listar assinaturas](/pages/subscriptions/list) com `checkoutId`.
</Warning>

<Info>
  Até 23/09/2026, checkouts de assinatura também eram excluídos pelo `POST /checkouts/delete` e pelo `POST /payment-links/delete`. Essas rotas agora recusam checkout de assinatura. Veja o [changelog](/pages/changelog/index).
</Info>


## OpenAPI

````yaml POST /subscriptions/checkouts/delete
openapi: 3.1.0
info:
  title: API AbacatePay
  description: API para gerenciamento de cobranças e pagamentos usando o AbacatePay.
  version: 1.0.0
servers:
  - url: https://api.abacatepay.com/v2
    description: Único servidor para os ambientes de produção e sandbox.
security: []
paths:
  /subscriptions/checkouts/delete:
    post:
      summary: Deletar um checkout de assinatura
      description: >
        Exclui um checkout de assinatura (`bill_...` com `frequency:
        SUBSCRIPTION`), que deixa de aparecer nas listagens.


        As assinaturas que o checkout já gerou continuam ativas. Para
        encerrá-las, use `POST /subscriptions/cancel`.
      parameters:
        - name: id
          in: query
          description: Identificador único do checkout de assinatura
          required: true
          schema:
            type: string
            example: bill_abc123xyz
      responses:
        '200':
          description: Checkout de assinatura excluído com sucesso.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Billing'
                  error:
                    type: string
                    nullable: true
                    example: null
                  success:
                    $ref: '#/components/schemas/Success'
        '401':
          description: Não autorizado. Falha na autenticação.
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    example: Token de autenticação inválido ou ausente.
      security:
        - bearerAuth: []
components:
  schemas:
    Billing:
      type: object
      properties:
        id:
          type: string
          description: Identificador único do Checkout.
          example: bill_abc123xyz
        externalId:
          type: string
          nullable: true
          description: ID do Checkout no seu sistema.
          example: pedido-123
        url:
          type: string
          format: uri
          description: URL onde o usuário pode concluir o pagamento.
          example: https://app.abacatepay.com/pay/bill_abc123xyz
        amount:
          type: number
          description: Valor total a ser pago em centavos.
          example: 10000
        paidAmount:
          type: number
          nullable: true
          description: Valor já pago em centavos. Null se ainda não foi pago.
          example: null
        items:
          type: array
          description: Lista de itens no Checkout.
          items:
            type: object
            properties:
              id:
                type: string
                description: ID do produto.
                example: prod_456
              quantity:
                type: integer
                description: Quantidade do item.
                example: 2
        status:
          type: string
          description: Status atual do Checkout.
          enum:
            - PENDING
            - EXPIRED
            - CANCELLED
            - PAID
            - REFUNDED
          example: PENDING
        coupons:
          type: array
          description: Lista de cupons aplicados no Checkout.
          items:
            type: string
          example: []
        devMode:
          type: boolean
          description: Indica se a cobrança foi criada em ambiente de testes.
          example: false
        customerId:
          type: string
          nullable: true
          description: ID do cliente associado ao Checkout.
          example: null
        returnUrl:
          type: string
          format: uri
          nullable: true
          description: URL para onde o cliente será redirecionado ao clicar em "Voltar".
          example: null
        completionUrl:
          type: string
          format: uri
          nullable: true
          description: URL para onde o cliente será redirecionado após o pagamento.
          example: null
        receiptUrl:
          type: string
          format: uri
          nullable: true
          description: URL do comprovante de pagamento.
          example: null
        upSellProductId:
          type: string
          nullable: true
          description: >-
            ID do produto de upsell vinculado ao Checkout. Null se nenhum
            produto de upsell foi informado na criação.
          example: prod_bump456xyz
        installmentsCount:
          type: integer
          nullable: true
          description: >-
            Número de parcelas do pagamento quando realizado via Cartão de
            crédito com mais de uma parcela. `null` para pagamentos à vista ou
            realizados por outros métodos (PIX, Boleto).
          example: 3
        dueDate:
          type: string
          format: date
          nullable: true
          description: >-
            Data de vencimento do boleto (`YYYY-MM-DD`). `null` quando não foi
            configurada ou quando o método de pagamento não é BOLETO.
          example: '2026-08-15'
        interest:
          nullable: true
          description: >-
            Juros por atraso configurados para o boleto. `null` quando não foi
            configurado ou quando o método de pagamento não é BOLETO.
          allOf:
            - $ref: '#/components/schemas/BoletoInterest'
        fine:
          nullable: true
          description: >-
            Multa por atraso configurada para o boleto. `null` quando não foi
            configurada ou quando o método de pagamento não é BOLETO.
          allOf:
            - $ref: '#/components/schemas/BoletoFine'
        metadata:
          type: object
          description: Metadados adicionais do Checkout.
          additionalProperties: true
          example: {}
        createdAt:
          type: string
          format: date-time
          description: Data e hora de criação do Checkout.
          example: '2024-11-04T18:38:28.573Z'
        updatedAt:
          type: string
          format: date-time
          description: Data e hora da última atualização do Checkout.
          example: '2024-11-04T18:38:28.573Z'
    Success:
      type: boolean
      description: Se a requisição obteve sucesso ou não.
      example: true
    BoletoInterest:
      type: object
      description: >-
        Juros por atraso aplicados ao boleto após o vencimento. Late interest
        applied to the boleto after the due date. Aplica-se apenas a `method:
        "BOLETO"`; ignorado nos demais métodos.
      additionalProperties: false
      required:
        - value
      properties:
        value:
          type: integer
          minimum: 0
          description: >-
            Percentual de juros ao mês em centésimos de percentual (`100` = 1%
            ao mês, `250` = 2,5% ao mês). Quando `0` ou omitido, sem juros.
            Calculado pro rata die após o vencimento.

            EN: Monthly late-interest rate in hundredths of a percent (`100` =
            1%/month). Accrues pro rata die after the due date; `0` or omitted
            disables interest.
          example: 100
    BoletoFine:
      type: object
      description: >-
        Multa por atraso aplicada uma única vez após o vencimento do boleto.
        One-time late fine applied after the due date. Aplica-se apenas a
        `method: "BOLETO"`; ignorado nos demais métodos.
      additionalProperties: false
      required:
        - value
        - type
      properties:
        value:
          type: integer
          minimum: 0
          description: >-
            Quando `type = "PERCENTAGE"`: centésimos de percentual sobre o valor
            do boleto (`200` = 2%). Quando `type = "FIXED"`: valor fixo em
            centavos (`1000` = R$ 10,00). Quando `0` ou omitido, sem multa.

            EN: With `type: "PERCENTAGE"`, value is in hundredths of a percent
            (`200` = 2%). With `type: "FIXED"`, value is in cents (`1000` = R$
            10.00). `0` or omitted disables the fine.
          example: 200
        type:
          type: string
          description: >-
            Tipo da multa. `PERCENTAGE` aplica percentual sobre o valor do
            boleto; `FIXED` aplica um valor fixo em centavos.

            EN: Fine type. `PERCENTAGE` applies a percent of the boleto amount;
            `FIXED` applies a fixed amount in cents.
          enum:
            - PERCENTAGE
            - FIXED
          example: PERCENTAGE
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        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](/pages/authentication).

````