Online subscription based application

I have created a web application that charges monthly subscription rates based on the number of members in the customer’s organization. So far I have been able to create a
SUBSCRIPTION_PLAN with a set of SUBSCRIPTION_PLAN_VARIATION objects for the different member ranges (1-50 members, 51-100 members, etc.)

I event have it setup so I can create a customer and then assign the appropriate
SUBSCRIPTION_PLAN_VARIATION based on their organization size and then created a recurring invoice.

My problem is I can’t clear the sandbox to start another test run. I have tried creating a new application but that doesn’t clear the sandbox and makes everything confusing and difficult to manage.

How to I start with a clean slate?

At this time you can’t clear the default test sandbox account. You can create a new sandbox test account in the Developer Dashboard if you’d like. To do so you’ll click new account in the sandbox section of the Developer Dashboard. :slightly_smiling_face:


Thank you. I did that. I think was my issue was that I was not doing a complete refresh of the explorer window so it would include the latest sandbox information.

Don’t know if this is fair to asl on this tread but I did more meat in my request.

I need to be able to mark a SUBSCRIPTION_PLAN as deleted and also SUBSCRIPTION PLAN VARIATIONS. Or do I have to create a new one and mark the old one as deprecated in some way?

Also, right now after I setup a new customer account they get a one month grace period, then they begin to get invoiced. Is there a way to have my web app immediately bring up a Square payment so that you record the form of payment that will be utilized once the one month grace period is up? For obvious reasons, I don’t want to save customer payment related information.


Subscription plans and plan variations cannot be deleted. However, they can be disabled so that new subscriptions cannot be created. To disable a plan or variation, call UpsertCatalogObject. In the request, include the plan or variation to disable and set present_at_all_locations to false.

By default, all active subscriptions have present_at_all_locations set to true. It’s not possible to disable subscription plans or variations on a per-location basis.

When a plan is disabled, existing subscriptions continue to work but you cannot add new subscriptions. :slightly_smiling_face:

Thank you Bryan

So I have my sandbox created, and this is where I know I was running into trouble testing everything.

When I do any thing with webhooks I get this error message:

The merchant has not given your application sufficient permissions to do that. The merchant must authorize your application for the following scopes: DEVELOPER_APPLICATION_WEBHOOKS_READ

What do I need to do set the appropriate permission and specifically where?


Paul Divan

Your getting that error because webhook subscriptions are owned by the application and not by any one seller, you cannot use OAuth access tokens with the Webhook Subscriptions API. You must use the application’s personal access token. :slightly_smiling_face: