Pause subscriptions to stop billing for them temporarily. Paddle doesn't bill for paused subscriptions until they're resumed.
You may wish to give customers some level of access to your software while paused to maintain a relationship and encourage them to return. For example, you might let customers download reports or access existing data, but restrict their access to create records.
If a customer doesn't want to use your software at all, cancel instead. You can't reinstate a canceled subscription.
Unlike cancel and update payment details, pause isn't supported by the customer portal. Customers can't self-serve a pause — you'll need to build a workflow in your app using the API or pause from the Paddle dashboard.
How it works
Pause
When you pause a subscription, its status is set to paused and Paddle doesn't create any transactions or collect payment for it. You should provision your app so customers don't have access, or have limited access, while paused.
When sending a request to pause, you can tell Paddle to:
- Pause at the end of the billing period
Paddle creates a scheduled change to say the subscription should be paused on the next billing date. The subscription remainsactiveuntil the next billing date, when the subscription status changes topaused. - Pause immediately
Paddle pauses the subscription right away. Its status changes topaused.
To avoid charging for overlapping billing periods, any past due transactions for subscription renewals, where the transaction origin is subscription_recurring, are automatically canceled.
If you've made changes to a subscription or billed for one-time charges and set them to be charged on the next billing period:
- When changes result in a credit, these are automatically forgiven.
- When changes result in a charge, these are applied to the transaction created on resume.
Resume
Subscriptions remain paused until they're resumed. Pauses can be open-ended, or you can set a resume date. We recommend giving customers a set of pause duration options in your frontend — for example, 30 days, 60 days, or 90 days.
You can resume a paused subscription at any time, even if there's a resume date already set, by sending a request to resume. It's good practice to make it as easy as possible for customers to resume their subscription, so we recommend building a way for self-serve customers to reactivate their account.
When sending a request to resume, you can tell Paddle to:
- Start a new billing period
Paddle starts a new billing period for the subscription. Thecurrent_billing_period.starts_atis set to the date and time that the subscription is resumed, and Paddle creates a transaction to collect for the new billing period immediately. - Continue the existing billing period
Paddle checks the end date of the existing billing period. If the resume date is within the existing billing period, Paddle continues the existing billing period. Thecurrent_billing_perioddates aren't changed, and there's no immediate charge.
Before you begin
You can't make changes to a subscription if the next billing period is within 30 minutes, or the subscription status is past_due.
To pause a subscription, you'll need to get the subscription ID for the subscription you want to change.
You can use the status query parameter when listing with the value active to get a list of active subscriptions.
Pause a subscription
- Go to Paddle > Customers, and find the customer whose subscription you want to pause.
- Find the subscription under the Subscriptions heading and click it.
- From the subscription overview page, click Pause subscription
- Use the When do you want to pause the subscription? to choose whether to pause now or at the end of the billing period.
- To resume a subscription on a particular date, toggle Automatically resume on, then set a date and time. Toggle off to pause indefinitely.
- Click Pause subscription to confirm.
- If you chose to pause now, click Pause subscription again on the confirmation box.
Send a POST request to the /subscriptions/{subscription_id}/pause endpoint to pause a subscription.
In your request, include effective_from to tell Paddle when to pause (next_billing_period or immediately). Include resume_at (RFC 3339 timestamp) to set a scheduled resume date — omit for an indefinite pause. Include on_resume to control charging on resume — defaults to start_new_billing_period (customer is charged immediately for the new billing period).
Paddle creates a scheduled change with an effective_at date matching the subscription's next_billed_at date.
{ "effective_from": "next_billing_period"}{ "data": { "id": "sub_01h8bxswamxysj44zt5n48njwh", "status": "active", "customer_id": "ctm_01h8441jn5pcwrfhwh78jqt8hk", "address_id": "add_01h848pep46enq8y372x7maj0p", "business_id": "biz_01h84a7hr4pzhsajkm8tev89ev", "currency_code": "USD", "created_at": "2023-08-21T11:31:10.292Z", "updated_at": "2023-09-27T10:54:24.066Z", "started_at": "2023-08-21T11:31:08.689295Z", "first_billed_at": "2023-08-21T11:31:08.689295Z", "next_billed_at": null, "paused_at": null, "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": { "starts_at": "2023-09-21T11:31:08.689295Z", "ends_at": "2023-10-21T11:31:08.689295Z" }, "billing_cycle": { "frequency": 1, "interval": "month" }, "scheduled_change": { "action": "pause", "effective_at": "2023-10-21T11:31:08.689295Z", "resume_at": null }, "items": [ { "status": "active", "quantity": 30, "recurring": true, "created_at": "2023-08-21T11:31:10.292Z", "updated_at": "2023-09-21T11:32:06.153Z", "previously_billed_at": "2023-09-21T11:31:08.689295Z", "next_billed_at": null, "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "description": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3266", "currency_code": "USD" } } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01h8bxswamxysj44zt5n48njwh/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01h8bxswamxysj44zt5n48njwh/cancel" }, "discount": null }, "meta": { "request_id": "3c69e2df-9f2f-4fb3-afa8-474fd768836b" }}The subscription status changes to paused right away.
{ "effective_from": "immediately"}{ "data": { "id": "sub_01hbxebsqc7qg1fbqg5eqz1v82", "status": "paused", "customer_id": "ctm_01hbxeaqa73chfk9ants8gtrjf", "address_id": "add_01hbxeaqb46zke464dwjjh7zab", "business_id": null, "currency_code": "USD", "created_at": "2023-10-04T13:34:45.484Z", "updated_at": "2023-10-05T10:03:01.546Z", "started_at": "2023-10-04T13:34:44.39169Z", "first_billed_at": "2023-10-04T13:34:44.39169Z", "next_billed_at": null, "paused_at": "2023-10-05T10:03:01.544Z", "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": null, "billing_cycle": { "frequency": 1, "interval": "month" }, "scheduled_change": null, "items": [ { "status": "active", "quantity": 10, "recurring": true, "created_at": "2023-10-04T13:34:45.484Z", "updated_at": "2023-10-04T13:34:45.484Z", "previously_billed_at": "2023-10-04T13:34:44.39169Z", "next_billed_at": null, "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "description": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3266", "currency_code": "USD" } } }, { "status": "active", "quantity": 1, "recurring": true, "created_at": "2023-10-04T13:34:45.484Z", "updated_at": "2023-10-04T13:34:45.484Z", "previously_billed_at": "2023-10-04T13:34:44.39169Z", "next_billed_at": null, "trial_dates": null, "price": { "id": "pri_01h1vjfevh5etwq3rb416a23h2", "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65", "description": "Monthly (recurring addon)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "10887", "currency_code": "USD" } } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01hbxebsqc7qg1fbqg5eqz1v82/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01hbxebsqc7qg1fbqg5eqz1v82/cancel" }, "discount": null }, "meta": { "request_id": "af4b4f10-e051-4f6d-9b27-0af0573b16da" }}Paddle creates a scheduled_change to resume with an effective_at matching the resume_at date you sent.
{ "effective_from": "immediately", "resume_at": "2023-11-01T00:00:00.000Z"}{ "data": { "id": "sub_01hbzxvbv3swwa9e3k17q9jhsg", "status": "paused", "customer_id": "ctm_01hbzfn01epffnm8azqj8va535", "address_id": "add_01hbzxtk9rmhjqsfgqcrfpe3y3", "business_id": null, "currency_code": "USD", "created_at": "2023-10-05T12:43:53.059Z", "updated_at": "2023-10-05T12:50:54.857Z", "started_at": "2023-10-05T12:43:51.363035Z", "first_billed_at": "2023-10-05T12:43:51.363035Z", "next_billed_at": "2023-11-01T00:00:00Z", "paused_at": "2023-10-05T12:50:16.963Z", "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": null, "billing_cycle": { "frequency": 1, "interval": "month" }, "scheduled_change": { "action": "resume", "effective_at": "2023-11-01T00:00:00Z", "resume_at": null }, "items": [ { "status": "active", "quantity": 10, "recurring": true, "created_at": "2023-10-05T12:43:53.059Z", "updated_at": "2023-10-05T12:43:53.059Z", "previously_billed_at": "2023-10-05T12:43:51.363035Z", "next_billed_at": "2023-11-01T00:00:00Z", "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "description": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3266", "currency_code": "USD" } } }, { "status": "active", "quantity": 1, "recurring": true, "created_at": "2023-10-05T12:43:53.059Z", "updated_at": "2023-10-05T12:43:53.059Z", "previously_billed_at": "2023-10-05T12:43:51.363035Z", "next_billed_at": "2023-11-01T00:00:00Z", "trial_dates": null, "price": { "id": "pri_01h1vjfevh5etwq3rb416a23h2", "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65", "description": "Monthly (recurring addon)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "10887", "currency_code": "USD" } } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01hbzxvbv3swwa9e3k17q9jhsg/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01hbzxvbv3swwa9e3k17q9jhsg/cancel" }, "discount": null }, "meta": { "request_id": "823fab25-9a78-4f5b-b331-fcbc8534c23b" }}Remove a scheduled change
You can stop a pause from going through at the end of the billing period by removing the scheduled change.
You might also do this to remove a scheduled resume from a paused subscription, so it's paused indefinitely until you resume.
- Go to Paddle > Customers, and find the customer whose subscription you no longer want to pause.
- Find the subscription under the Subscriptions heading and click it.
- From the subscription overview page, click Don't pause
- Click Don't pause on the confirmation box.
Send a PATCH request to the /subscriptions/{subscription_id} endpoint to update the subscription.
In your request, set scheduled_change to null to remove the scheduled pause or resume.
{ "scheduled_change": null}{ "data": { "id": "sub_01htymmb3hj0q9fmckjbtrmd73", "status": "active", "customer_id": "ctm_01htymkpj07kjy7p5q1vzqpk70", "address_id": "add_01htymkpjq97zpchxzdyyas99v", "business_id": null, "currency_code": "USD", "created_at": "2024-04-08T10:38:58.673Z", "updated_at": "2024-04-08T10:44:18.005Z", "started_at": "2024-04-08T10:38:57.97967Z", "first_billed_at": "2024-04-08T10:38:57.97967Z", "next_billed_at": "2024-05-08T10:38:57.97967Z", "paused_at": null, "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": { "starts_at": "2024-04-08T10:38:57.97967Z", "ends_at": "2024-05-08T10:38:57.97967Z" }, "billing_cycle": { "frequency": 1, "interval": "month" }, "scheduled_change": null, "items": [ { "status": "active", "quantity": 10, "recurring": true, "created_at": "2024-04-08T10:38:58.673Z", "updated_at": "2024-04-08T10:38:58.673Z", "previously_billed_at": "2024-04-08T10:38:57.97967Z", "next_billed_at": "2024-05-08T10:38:57.97967Z", "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "type": "standard", "description": "Monthly", "name": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3000", "currency_code": "USD" }, "unit_price_overrides": [], "custom_data": { "features": { "crm": true, "data_retention": false, "reports": true }, "suggested_addons": [ "pro_01h1vjes1y163xfj1rh1tkfb65", "pro_01gsz97mq9pa4fkyy0wqenepkz" ], "upgrade_description": "Move from Basic to Pro to take advantage of advanced reporting and a CRM that's right where you're chatting." }, "status": "active", "quantity": { "minimum": 1, "maximum": 999 }, "import_meta": null, "created_at": "2023-02-23T13:55:22.538367Z", "updated_at": "2024-04-05T14:30:28.146783Z" } }, { "status": "active", "quantity": 1, "recurring": true, "created_at": "2024-04-08T10:38:58.673Z", "updated_at": "2024-04-08T10:38:58.673Z", "previously_billed_at": "2024-04-08T10:38:57.97967Z", "next_billed_at": "2024-05-08T10:38:57.97967Z", "trial_dates": null, "price": { "id": "pri_01h1vjfevh5etwq3rb416a23h2", "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65", "type": "standard", "description": "Monthly", "name": "Monthly (recurring addon) ", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "10000", "currency_code": "USD" }, "unit_price_overrides": [], "custom_data": null, "status": "active", "quantity": { "minimum": 1, "maximum": 100 }, "import_meta": null, "created_at": "2023-06-01T13:31:12.625056Z", "updated_at": "2024-04-05T14:33:48.860572Z" } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01htymmb3hj0q9fmckjbtrmd73/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01htymmb3hj0q9fmckjbtrmd73/cancel" }, "discount": null, "import_meta": null }, "meta": { "request_id": "a37dc0cb-0337-45cb-8f2c-8bd31db37553" }}Set or change a resume date
You can change when a subscription is set to resume, or set a resume date where a subscription is paused indefinitely.
To change the future resume date for an active subscription that's scheduled to pause, remove the scheduled change then send a request to pause with a resume date.
- Go to Paddle > Customers, and find the customer whose paused subscription you want to set or change the resume date for.
- Find the subscription under the Subscriptions heading and click it.
- From the subscription overview page, click Set resume date or Edit resume date
- Choose a new date and time under the Automatically resume toggle. Toggle off to pause indefinitely.
- Click Save to confirm.
Send a POST request to the /subscriptions/{subscription_id}/resume endpoint to set or change the resume date for a paused subscription.
In your request, include effective_from with either an RFC 3339 timestamp (to resume on a specific date) or next_billing_period. Include on_resume to control charging on resume — defaults to start_new_billing_period (customer is charged immediately for the new billing period).
{ "effective_from": "2023-11-01T00:00:00.000Z"}{ "data": { "id": "sub_01h8bxswamxysj44zt5n48njwh", "status": "paused", "customer_id": "ctm_01h8441jn5pcwrfhwh78jqt8hk", "address_id": "add_01h848pep46enq8y372x7maj0p", "business_id": "biz_01h84a7hr4pzhsajkm8tev89ev", "currency_code": "USD", "created_at": "2023-08-21T11:31:10.292Z", "updated_at": "2023-10-21T11:32:49.597295Z", "started_at": "2023-08-21T11:31:08.689295Z", "first_billed_at": "2023-08-21T11:31:08.689295Z", "next_billed_at": "2023-11-01T00:00:00Z", "paused_at": "2023-10-21T11:32:03.228295Z", "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": null, "billing_cycle": { "frequency": 1, "interval": "month" }, "scheduled_change": { "action": "resume", "effective_at": "2023-11-01T00:00:00Z", "resume_at": null }, "items": [ { "status": "inactive", "quantity": 30, "recurring": true, "created_at": "2023-08-21T11:31:10.292Z", "updated_at": "2023-10-21T11:32:03.234295Z", "previously_billed_at": "2023-09-21T11:31:08.689295Z", "next_billed_at": "2023-11-01T00:00:00Z", "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "description": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3266", "currency_code": "USD" } } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01h8bxswamxysj44zt5n48njwh/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01h8bxswamxysj44zt5n48njwh/cancel" }, "discount": null }, "meta": { "request_id": "fb4c8524-1337-4446-b6cc-a022cede97fa" }}Resume a paused subscription
Resume a subscription to start billing for it again. You should grant the customer access to your app once resumed.
When resumed, Paddle bills for the subscription immediately. The subscription billing date is recalculated based on the resume date.
To resume on a particular date, see Set or change a resume date
- Go to Paddle > Customers, and find the customer whose subscription you want to pause.
- Find the subscription under the Subscriptions heading and click it.
- From the subscription overview page, click Resume subscription
- Click Resume subscription on the confirmation box.
Resume a paused subscription using the API in two steps:
- Preview charging Optional
Preview what the customer will be charged when the subscription resumes. - Resume subscription
Send a request to resume the subscription.
Preview charging Optional
Send a GET request to the /subscriptions/{subscription_id} endpoint with include=recurring_transaction_details to get a preview of what the customer will be charged on resume.
{ "data": { "id": "sub_01hbb6jctayag2q3ptdftmt89n", "status": "paused", "customer_id": "ctm_01h8441jn5pcwrfhwh78jqt8hk", "address_id": "add_01hbb6hmaggbtq4df34cy39e4b", "business_id": null, "currency_code": "USD", "created_at": "2023-09-27T11:32:13.258Z", "updated_at": "2023-10-27T11:32:34.158969Z", "started_at": "2023-09-27T11:32:12.028969Z", "first_billed_at": "2023-09-27T11:32:12.028969Z", "next_billed_at": null, "paused_at": "2023-10-27T11:32:34.146969Z", "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": null, "billing_cycle": { "frequency": 1, "interval": "month" }, "recurring_transaction_details": { "tax_rates_used": [ { "tax_rate": "0.08875", "totals": { "subtotal": "40000", "discount": "0", "tax": "3549", "total": "43549" } } ], "totals": { "subtotal": "40000", "tax": "3549", "discount": "0", "total": "43549", "fee": null, "credit": "0", "balance": "43549", "grand_total": "43549", "earnings": null, "currency_code": "USD", "exchange_rate": "1" }, "line_items": [ { "price_id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "quantity": 10, "totals": { "subtotal": "30000", "tax": "2662", "discount": "0", "total": "32662" }, "product": { "id": "pro_01gsz4t5hdjse780zja8vvr7jg", "name": "ChatApp Pro", "description": "Everything in basic, plus access to a suite of powerful tools and features designed to take your team's productivity to the next level.", "tax_category": "standard", "image_url": "https://paddle-sandbox.s3.amazonaws.com/user/10889/2nmP8MQSret0aWeDemRw_icon1.png", "status": "active" }, "tax_rate": "0.08875", "unit_totals": { "subtotal": "3000", "discount": "0", "tax": "266", "total": "3266" }, "proration": { "rate": "1", "billing_period": { "starts_at": "2023-09-27T11:32:12.028969Z", "ends_at": "2023-10-27T11:32:12.028969Z" } } }, { "price_id": "pri_01h1vjfevh5etwq3rb416a23h2", "quantity": 1, "totals": { "subtotal": "10000", "tax": "887", "discount": "0", "total": "10887" }, "product": { "id": "pro_01h1vjes1y163xfj1rh1tkfb65", "name": "Voice rooms addon", "description": "Create voice rooms in your chats to work in real time alongside your colleagues. Includes unlimited voice rooms and recording backup for compliance.", "tax_category": "standard", "image_url": "https://paddle-sandbox.s3.amazonaws.com/user/10889/GcZzBjXRfiraensppgtQ_icon2.png", "status": "active" }, "tax_rate": "0.08875", "unit_totals": { "subtotal": "10000", "discount": "0", "tax": "887", "total": "10887" }, "proration": { "rate": "1", "billing_period": { "starts_at": "2023-09-27T11:32:12.028969Z", "ends_at": "2023-10-27T11:32:12.028969Z" } } } ] }, "scheduled_change": null, "items": [ { "status": "inactive", "quantity": 10, "recurring": true, "created_at": "2023-09-27T11:32:13.258Z", "updated_at": "2023-10-27T11:32:34.159969Z", "previously_billed_at": "2023-09-27T11:32:12.028969Z", "next_billed_at": null, "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "description": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3266", "currency_code": "USD" } } }, { "status": "inactive", "quantity": 1, "recurring": true, "created_at": "2023-09-27T11:32:13.258Z", "updated_at": "2023-10-27T11:32:34.160969Z", "previously_billed_at": "2023-09-27T11:32:12.028969Z", "next_billed_at": null, "trial_dates": null, "price": { "id": "pri_01h1vjfevh5etwq3rb416a23h2", "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65", "description": "Monthly (recurring addon)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "10887", "currency_code": "USD" } } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01hbb6jctayag2q3ptdftmt89n/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01hbb6jctayag2q3ptdftmt89n/cancel" }, "discount": null }, "meta": { "request_id": "3e7bfaba-420d-4c3c-bb59-e3046ef54058" }}Resume subscription
Send a POST request to the /subscriptions/{subscription_id}/resume endpoint with an empty request body to resume the subscription right away.
Paddle creates a transaction for the new billing period. If automatically collected, Paddle attempts to collect immediately. If collection fails, the subscription becomes past_due.
{ "data": { "id": "sub_01hv959anj4zrw503h2acawb3p", "status": "active", "customer_id": "ctm_01hv8wt8nffez4p2t6typn4a5j", "address_id": "add_01hv958rbhm5n0r6h3tmna4gtv", "business_id": null, "currency_code": "USD", "created_at": "2024-04-12T12:42:27.89Z", "updated_at": "2024-04-12T12:44:51.309Z", "started_at": "2024-04-12T12:42:27.185672Z", "first_billed_at": "2024-04-12T12:42:27.185672Z", "next_billed_at": "2024-05-12T12:44:51.27Z", "paused_at": null, "canceled_at": null, "collection_mode": "automatic", "billing_details": null, "current_billing_period": { "starts_at": "2024-04-12T12:44:51.27Z", "ends_at": "2024-05-12T12:44:51.27Z" }, "billing_cycle": { "frequency": 1, "interval": "month" }, "scheduled_change": null, "items": [ { "status": "active", "quantity": 10, "recurring": true, "created_at": "2024-04-12T12:42:27.89Z", "updated_at": "2024-04-12T12:44:51.311Z", "previously_billed_at": "2024-04-12T12:44:51.27Z", "next_billed_at": "2024-05-12T12:44:51.27Z", "trial_dates": null, "price": { "id": "pri_01gsz8x8sawmvhz1pv30nge1ke", "product_id": "pro_01gsz4t5hdjse780zja8vvr7jg", "type": "standard", "description": "Monthly", "name": "Monthly (per seat)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "3000", "currency_code": "USD" }, "unit_price_overrides": [], "custom_data": null, "status": "active", "quantity": { "minimum": 1, "maximum": 999 }, "import_meta": null, "created_at": "2023-02-23T13:55:22.538367Z", "updated_at": "2024-04-11T13:54:52.254748Z" }, "product": { "id": "pro_01gsz4t5hdjse780zja8vvr7jg", "name": "AeroEdit Pro", "type": "standard", "tax_category": "standard", "description": "Designed for professional pilots, including all features plus in Basic plus compliance monitoring, route optimization, and third-party integrations.", "image_url": "https://paddle.s3.amazonaws.com/user/165798/bT1XUOJAQhOUxGs83cbk_pro.png", "custom_data": { "features": { "aircraft_performance": true, "compliance_monitoring": true, "flight_log_management": true, "payment_by_invoice": false, "route_planning": true, "sso": false }, "suggested_addons": [ "pro_01h1vjes1y163xfj1rh1tkfb65", "pro_01gsz97mq9pa4fkyy0wqenepkz" ], "upgrade_description": "Move from Basic to Pro to take advantage of aircraft performance, advanced route planning, and compliance monitoring." }, "status": "active", "import_meta": null, "created_at": "2023-02-23T12:43:46.605Z", "updated_at": "2024-04-05T15:53:44.687Z" } }, { "status": "active", "quantity": 1, "recurring": true, "created_at": "2024-04-12T12:42:27.89Z", "updated_at": "2024-04-12T12:44:51.312Z", "previously_billed_at": "2024-04-12T12:44:51.27Z", "next_billed_at": "2024-05-12T12:44:51.27Z", "trial_dates": null, "price": { "id": "pri_01h1vjfevh5etwq3rb416a23h2", "product_id": "pro_01h1vjes1y163xfj1rh1tkfb65", "type": "standard", "description": "Monthly", "name": "Monthly (recurring addon)", "tax_mode": "account_setting", "billing_cycle": { "frequency": 1, "interval": "month" }, "trial_period": null, "unit_price": { "amount": "10000", "currency_code": "USD" }, "unit_price_overrides": [], "custom_data": null, "status": "active", "quantity": { "minimum": 1, "maximum": 100 }, "import_meta": null, "created_at": "2023-06-01T13:31:12.625056Z", "updated_at": "2024-04-12T10:42:45.476453Z" }, "product": { "id": "pro_01h1vjes1y163xfj1rh1tkfb65", "name": "Analytics addon", "type": "standard", "tax_category": "standard", "description": "Unlock advanced insights into your flight data with enhanced analytics and reporting features. Includes customizable reporting templates and trend analysis across flights.", "image_url": "https://paddle.s3.amazonaws.com/user/165798/97dRpA6SXzcE6ekK9CAr_analytics.png", "custom_data": null, "status": "active", "import_meta": null, "created_at": "2023-06-01T13:30:50.302Z", "updated_at": "2024-04-05T15:47:17.163Z" } } ], "custom_data": null, "management_urls": { "update_payment_method": "https://buyer-portal.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/update-payment-method", "cancel": "https://buyer-portal.paddle.com/subscriptions/sub_01hv959anj4zrw503h2acawb3p/cancel" }, "discount": null, "import_meta": null }, "meta": { "request_id": "7c010829-486c-4fb6-ac5d-44fbea7723d0" }}Update payment method Optional
When resumed, Paddle creates a transaction to collect for the new billing period. If automatically collected, Paddle automatically attempts to collect using a payment method on file immediately on resume. This may have expired or no longer be valid, especially when resuming after a long period of time.
If collection fails, the subscription and related transaction become past_due and events for subscription past due occur. As collection is attempted immediately, if a subscription becomes past due then we recommend presenting a way for customers to update their payment method as part of your resume workflow.
Events
For a full list of events that occur when a subscription is paused or resumed, see Subscription pause or resume