Products and Subscriptions
Manage your price list and discount codes, and start subscriptions that bill themselves.
One price list that quotes and invoices read from, plus recurring subscriptions, discount codes and the invoices they produce.
Read the price list
curl https://app.softsolz.uk/api/v1/services/catalog/catalog/products \n -H "Authorization: Bearer sk_live_your_key"Fetch one product with GET /catalog/products/{id}, change it with PATCH /catalog/products/{id} and remove it with DELETE /catalog/products/{id}.
Add a product
Prices are whole minor units, so 1200.00 is 120000. The currency code is stored in capitals: send gbp and it is saved and returned as GBP. Fields the API does not know are rejected.
curl -X POST https://app.softsolz.uk/api/v1/services/catalog/catalog/products \n -H "Authorization: Bearer sk_live_your_key" \n -H "Content-Type: application/json" \n -d '{"name":"Annual support","unit_price_cents":120000,"currency":"gbp"}'Start and manage a subscription
POST /catalog/subscriptions starts a subscription for a customer on a product. Once started it bills itself on each renewal date. Manage it with these actions, each a POST on /catalog/subscriptions/{id}:
/pauseand/resumestop and restart billing./cancelends it now./cancel-at-period-endkeeps it running until the current period ends, then ends it./undo-cancelreverses that before the period ends.
curl -X POST https://app.softsolz.uk/api/v1/services/catalog/catalog/subscriptions/SUBSCRIPTION_ID/cancel-at-period-end \n -H "Authorization: Bearer sk_live_your_key"What each status means
trialing: in a free trial, nothing is charged yet.active: running and paid up.past_due: a payment failed and is being retried.paused: billing is stopped until you resume it.canceled: ended. A subscription set to cancel at period end staysactiveuntil then.
Discount codes
GET /catalog/coupons lists discount codes with their usage caps and expiry. POST /catalog/coupons creates one. POST /catalog/coupons/{id}/retire stops it being used, and /reactivate turns it back on.
Read invoices
GET /catalog/invoices lists the invoices your subscriptions have produced.
Scopes
Reading needs service.catalog.view and product changes need service.catalog.manage. Starting and managing subscriptions needs service.catalog.subscriptions.manage, and creating or retiring discount codes needs service.catalog.coupons.manage.
Webhook events
The service sends these events. Sign-checking and retries are covered in the webhooks guide.
catalog.subscription_started,catalog.subscription_renewed,catalog.subscription_plan_changedcatalog.subscription_paused,catalog.subscription_resumedcatalog.subscription_cancel_scheduled: a cancel at period end was requested.catalog.subscription_cancel_unscheduled: it was undone.catalog.subscription_canceled,catalog.coupon_redeemed
Next
Full schemas in the API Reference, and the walkthrough on docs.softsolz.uk.