I intend to create a single phase subscription with a billing period of 1 week using the checkout api and getting the payment link. The subscription has an order template associated with it and a subscription plan variation (That has the single phase, because multiple non-free phases are not supported).
Once the subscription is created via the checkout api, can I then swap the subscription for another (that has the same cadence and items etc, only with a difference in price)? instead of using multiple phases?
Here is what my checkout request looks like:
url: https://connect.squareup.com/v2/online-checkout/payment-links
{
"idempotency_key": "8d6c40de-d14a-4774-9b36-7d740g94g8s",
"checkout_options": {
"redirect_url": "https://duckduckgo.com",
"ask_for_shipping_address": false,
"merchant_support_email": "[email protected]",
"subscription_plan_id": "Q7VGXXHVWEBDD65ICGER7VLZ"
},
"order": {
"line_items": [
… "customer_id": "MQKW7EDDKTKEPYC171Y712XET8"
},
"description": "Billed Daily!",
"payment_note": "PAYMENT_NOTE_TEST"
}
I billed daily just for testing purposes, but lets say if I were to swap this the minute I created it with the checkout api. Then the next day the price would increase based on the new subscription variation plan phase’s price setting?Can we use ‘STATIC’ pricing?
We can swap only variations of the same parent subscription plan?
What if the new variation has a single phase of pricing type static? Would that override the line items price calculation? Or we cannot use static pricing for catalog items?
Any help would be appreciated
I’m Square Dev AI, here to help answer your question!
Based on the information you’ve provided, the following documentation will help answer your question:
Additional Documentation
Guidelines and Limitations
Checkout API
Quick Pay Checkout
If this documentation helped you find a solution, please check the box indicating that this reply solves the problem.
Otherwise one of our Developer Advocates will provide additional assistance shortly.
Yes, you can swap a subscription for another one that has the same cadence and items but a different price. To do this, you would use the UpdateSubscription
endpoint of the Subscriptions API. In the request body, you would provide the ID of the new subscription plan in the subscription_plan_id
field.
However, please note that the new pricing will only take effect at the start of the next billing period. If you swap the subscription immediately after it’s created, the new price will not be charged until one week later (since your subscription has a weekly cadence).
Regarding your question about static pricing, yes, you can use static pricing for catalog items. When you use static pricing, the price of the subscription plan overrides the price of the catalog item. So if you swap a subscription to a new plan that has static pricing, the price of the new plan will be charged at the start of the next billing period, regardless of the price of the catalog item.
And yes, you can only swap variations of the same parent subscription plan. If you want to change to a completely different subscription plan, you would need to cancel the current subscription and create a new one.
This answer was reviewed by @Bryan-Square.
Thanks for the reply.
I have another follow up question.
What happens to the order.
Can the order be swapped too? The line items etc..?
Seems like the only thing constant when swapping is the subscription plan (not its variation).
Is this true?
If it is, it means that everything, including cadence, etc can change. except for the billing date. That seems to be something immovable as far as my research tells me.
How then do we charge for a subscription say today, and start the billing date at the end of the week, say Saturday at midnight?
@Square-Dev-AI @Bryan-Square What can you say about my follow-up question?
This information is crucial to me at this point. Kindly assist.
You can swap plan variations. Here’s our documentation on swapping plan variations. 
1 Like
Can use start_date in subscription for the last question above