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

# Subscription cancel



## OpenAPI

````yaml /api-reference/openapi.json post /api/v1/subscription/cancel
openapi: 3.1.0
info:
  title: acquiring-order
  description: 接口文档
  termsOfService: https://www.waffo.com
  version: 1.0.0
servers:
  - url: https://waffo.com
    description: Sandbox API (auto-signed via waffo.com signing proxy)
security: []
tags:
  - name: Subscription inquiry
    description: Subscription inquiry api description
  - name: Subscription manage
    description: >
      This API allows the merchant to request a subscription management URL from
      Waffo

      Waffo will generate a subscription management URL which merchant can
      redirect user to this URL for managing subscription details (e.g. view
      subscription detail and cancel subscription). This management URL has a
      fixed expiration time (e.g., 1 day).
  - name: Subscription change inquiry
    description: >
      This API allows merchants to query the status of a subscription change
      (upgrade/downgrade) request.

      此接口允许商户查询订阅升降级请求的状态。
  - name: Subscription resume
    description: >
      Revoke a scheduled cancellation before it takes effect, so that the
      subscription keeps renewing. The next billing date stays unchanged.
  - name: Subscription update
    description: ' Subscription update api description'
  - name: Payment session update
    description: Payment session update api description
  - name: Order inquiry
    description: Order inquiry api description
  - name: Payout inquiry
    description: Payout inquiry api description
  - name: Order create
    description: ' Order create api description'
  - name: Pay Method Config Inquiry
    description: Pay Method Config Inquiry api description
  - name: Payment session create
    description: Payment session create api description
  - name: Order cancel
    description: Order cancel api description
  - name: Order capture
    description: Order capture api description
  - name: Subscription session create
    description: Subscription session create api description
  - name: Chargeback list
    description: Chargeback list api description
  - name: Payout create
    description: Payout create api description
  - name: Subscription session update
    description: Subscription session update api description
  - name: Payment session confirm
    description: Payment session confirm api description
  - name: Payment session validate
    description: Payment session validate api description
  - name: Payment session info
    description: Payment session info api description
  - name: Chargeback file download
    description: Chargeback file download api description
  - name: Subscription change
    description: >
      This API allows merchants to upgrade or downgrade a user's subscription
      plan. The change request will create a new subscription based on the
      original subscription, applying any remaining amount from the original
      subscription.


      此接口允许商户升级或降级用户的订阅计划。升降级请求将基于原订阅创建新订阅，并将原订阅的剩余金额应用到新订阅中。
  - name: Chargeback accept
    description: Chargeback accept api description
  - name: Chargeback file upload
    description: Chargeback file upload api description
  - name: Chargeback update
    description: Chargeback update api description
  - name: Wallet inquiry
    description: Wallet inquiry api description
  - name: Order refund
    description: Order refund api description
  - name: Refund inquiry
    description: Refund inquiry api description
  - name: Subscription cancel
    description: >
      Cancel an active subscription when the merchant no longer wishes to
      continue the recurring billing cycle. This endpoint can only be invoked
      when the subscription status is active
  - name: Merchant config inquiry
    description: Merchant config inquiry api description
  - name: Chargeback inquiry
    description: Chargeback inquiry api description
  - name: Subscription create
    description: Subscription create api description
  - name: Reported Fraud list
    description: Reported Fraud list api description
paths:
  /api/v1/subscription/cancel:
    post:
      tags:
        - 收单商户api接口
        - Subscription cancel
      summary: Subscription cancel
      operationId: merchantCancel
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubscriptionCancelRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ResponseSubscriptionCancelResponse'
components:
  schemas:
    SubscriptionCancelRequest:
      type: object
      description: Subscription cancel request
      properties:
        subscriptionId:
          type: string
          description: Waffo subscription Id
          example: <subscriptionId>
          maxLength: 64
          minLength: 0
        merchantId:
          type: string
          description: Merchant Id assigned by Waffo
          example: 1000000201
          maxLength: 64
          minLength: 0
        requestedAt:
          type: string
          format: date-time
          description: Merchant-side cancel request time
          x-gen: DATETIME_ISO
        scheduledCancelAt:
          type: string
          format: date-time
          description: >
            Schedule the cancellation at this time instead of cancelling
            immediately. Leave it empty to cancel immediately.

            Must not be later than the subscription end time. If the
            subscription has no end time, it must be within 2 years from now.

            Contact Waffo technical support to enable this field before using
            it.
          x-gen: DATETIME_ISO
      required:
        - merchantId
        - requestedAt
        - subscriptionId
    ResponseSubscriptionCancelResponse:
      type: object
      description: response data
      properties:
        code:
          type: string
          example: 0
        msg:
          type: string
          example: success
        data:
          $ref: '#/components/schemas/SubscriptionCancelResponse'
    SubscriptionCancelResponse:
      type: object
      properties:
        merchantSubscriptionId:
          type: string
          description: 'Merchant subscription plan ID assigned to this user '
        subscriptionRequest:
          type: string
          description: >-
            Subscription request id sent from Merchant. It will also be used for
            idempotent check.  
        subscriptionId:
          type: string
          description: 'Waffo subscription Id '
        orderStatus:
          type: string
          description: |
            - ACTIVE (cancellation scheduled, not yet effective)
            - CLOSE (due to timeout or failed)
            - MERCHANT_CANCELLED
            - CHANNEL_CANCELLED
            - EXPIRED 
        scheduledCancelAt:
          type: string
          description: >-
            The time when the cancellation takes effect, in ISO 8601. Returned
            when the cancellation is scheduled instead of immediate. 

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.