subscriptions

Enhance Your Subscriptions Integration Features

After you integrate the Subscriptions API, you can customize the integration with additional operations.

Availability: Customers who integrated with Subscriptions before April 2019 can access reference and support material in the archived Subscriptions integration guide.

Product management

Task Resource
Show details for your product Show product details
Update product details Update product details
List products for a merchant List products

Plan management

Task Resource
List available plans List plans
Show details for a plan Show plan details
Activate a plan Activate plan
Deactivate a plan Deactivate plan
Update a plan Update plan
Update the pricing for a plan Update pricing

Subscriptions management

Task Resource
Show details for a subscription Show subscription details
Update a subscription Update subscription
Suspend an active subscription Suspend subscription
Cancel an active subscription Cancel subscription
Activate a subscription Activate subscription
Capture payment for the outstanding subscription balance Capture amount on subscription
List transactions for a subscription List transactions for a subscription
Upgrade or downgrade a subscription Revise subscription

Payment processing and retry

  • Auto debit for active subscriptions occur at 10:00 am, GMT irrespective of country.

  • On payment success, a PAYMENT.SALE.COMPLETED webhook is triggered, and on failure, a BILLING.SUBSCRIPTION.PAYMENT.FAILED webhook is triggered.

  • Failed payments are retried every 5 days (a maximum of 2 retries) until the next cycle is reached. If the second retry attempt fails, PayPal increments the failed payment count by 1, places the amount in the outstanding balance, and adds it to next billing cycle.

    For example, a monthly subscription starting on 01 Jan encounters a payment failure on its next billing cycle. 01 Feb is automatically retried on 05 Feb and 10 Feb. Since both the payment and retry attempt failed, PayPal treats it as a failed billing cycle and increments failed_payments_count by 1 and places the amount in the outstanding balance and adds it to next billing cycle.

  • Retry attempts for failed payments on subscriptions stop if the buyer has canceled the subscription. The amount you're trying to recover will go into an outstanding balance which you settle offline or can pull anytime.

  • The failed_payments_count attribute of the BILLING.SUBSCRIPTION.PAYMENT.FAILED webhook can be used to track the failed billing cycle count for a subscription. A subscription is suspended if this count exceeds the payment_failure_threshold configured against the plan associated with the subscription. Any amount you're trying to recover will go into an outstanding balance which you settle offline or can pull anytime.