Zoca Billing API

The billing API from Zoca — 46 operation(s) for billing.

Operations 63

GET /billing/customers Get Chargebee customer ID for a location entity #
GET /billing/agents List buyable agents with Chargebee addon info for a plan #
POST /billing/payment-method/hosted-page Create Chargebee hosted-page for drop-in payment modal #
POST /billing/invoices/{invoiceId}/payment-intent Create payment_intent for an unpaid invoice (handlePayment 3DS) #
POST /billing/invoices/{invoiceId}/collect-payment Collect payment for an unpaid invoice (card on file or authorised… #
POST /billing/portal-session Create Chargebee portal_session for Customer Portal drop-in #
GET /billing/contract/prefill Prefill data for the contract Confirm step #
POST /billing/contract/confirm Confirm contract details and trigger Zoho signing #
GET /billing/contract/{contractId} Poll a single contract by id #
PATCH /billing/subscription Update subscription (items/plan/coupons/pause/resume/reactivate/…) #
DELETE /billing/subscription Cancel subscription #
GET /billing/subscription Get the unified billing state for a location #
GET /billing/cancellation-stats Aggregated location stats for the cancellation flow #
GET /billing/cancellation/reasons List active cancellation reasons for the cancellation flow #
GET /billing/cancellation/faqs List active cancellation FAQs (optionally scoped to a subscription) #
POST /billing/cancellation/responses Log the cancellation reason answer (upsert per location × subscription) #
GET /billing/admin/cancellation-reasons Admin - list all cancellation reasons (incl. archived) #
POST /billing/admin/cancellation-reasons Admin - create a new cancellation reason #
GET /billing/admin/cancellation-reasons/{id} Admin - get a single cancellation reason #
PATCH /billing/admin/cancellation-reasons/{id} Admin - update title, description, displayOrder, status, or attributes #
DELETE /billing/admin/cancellation-reasons/{id} Admin - soft-archive a cancellation reason #
POST /billing/admin/cancellation-reasons/bulk Admin - bulk-upsert cancellation reasons (idempotent on reasonKey) #
GET /billing/admin/cancellation-faqs Admin - list all cancellation FAQs (incl. archived) #
POST /billing/admin/cancellation-faqs Admin - create a new cancellation FAQ #
GET /billing/admin/cancellation-faqs/{id} Admin - get a single cancellation FAQ #
PATCH /billing/admin/cancellation-faqs/{id} Admin - update question, answer, displayOrder, status, or attributes #
DELETE /billing/admin/cancellation-faqs/{id} Admin - soft-archive a cancellation FAQ #
POST /billing/admin/cancellation-faqs/bulk Admin - bulk-upsert cancellation FAQs (idempotent on faqKey) #
GET /billing/admin/cancellation-responses Admin - list cancellation responses for a location (optionally a sub) #
POST /billing/subscription/change-estimate Estimate proration for a subscription change #
GET /billing/addons/catalog Addons available to add to the subscription #
GET /billing/admin/locations/{locationEntityId}/addons-toggle Admin - read the per-addon visibility toggles for a location #
POST /billing/admin/locations/{locationEntityId}/addons-toggle Admin - flip the visibility toggle for a single addon at a location #
POST /billing/locations/{locationEntityId}/addons-toggle User - flip a single addon on/off for the location (persists to preferences) #
POST /billing/addons Add addons by creating a new subscription at the chosen frequency #
GET /billing/addons Addons currently attached to the subscription #
GET /billing/missed-payments List overdue invoices + next retry #
GET /billing/subscription/frequency-options Project current addon set onto every supported billing frequency #
GET /billing/payment-methods List payment methods on the customer #
GET /billing/invoices List invoices for a location #
GET /billing/invoices/{id}/download Redirect to signed Chargebee PDF URL #
GET /billing/pricing List active pricing plans for the checkout plan-selection step #
GET /billing/pricing/quote Quote bundle pricing for a specific (frequency, addons) combination #
GET /billing/admin/plan-pricing Admin - list all plan_pricing rows (incl. inactive) #
POST /billing/admin/plan-pricing Admin - create a plan_pricing row #
GET /billing/admin/plan-pricing/{id} Admin - get a single plan_pricing row #
PATCH /billing/admin/plan-pricing/{id} Admin - update status, validity window, attributes, or CB item price id #
DELETE /billing/admin/plan-pricing/{id} Admin - hard-delete a plan_pricing row #
GET /billing/admin/addon-pricing Admin - list addon_pricing rows (incl. inactive) #
POST /billing/admin/addon-pricing Admin - create an addon_pricing row #
GET /billing/admin/addon-pricing/{id} Admin - get a single addon_pricing row #
PATCH /billing/admin/addon-pricing/{id} Admin - update unit_price_cents, status, validity, attributes, or CB id #
DELETE /billing/admin/addon-pricing/{id} Admin - hard-delete an addon_pricing row #
GET /billing/agents/status List agents with active-subscription status for a location #
GET /billing/state Get current billing state for a location #
PATCH /billing/state Update billing_state for a location (FE-driven transitions only) #
POST /billing/admin/subscriptions/{subscriptionId}/schedule-price-change Admin - manually schedule a future-dated unit_price change on a subscription #
POST /billing/admin/contracts/{contractId}/mark-signed Force-mark a contract as signed (admin override for missed Zoho webhook) #
POST /billing/subscription/start Create trial subscription for the signed contract #
POST /billing/subscription/renew Renew a cancelled subscription with a fresh plan combination #
POST /billing/trial/extend Extend the active trial for a location #
POST /billing/trial/end End the active trial for a location immediately #
POST /billing/customers/ensure Ensure a Chargebee customer exists for a location entity #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zoca-billing-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zoca-billing-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Zoca Platform Billing API
  description: 'The Zoca platform API behind the Zoca web app and mobile apps: scheduling, website generation, Google Business Profile, discovery/local SEO, social media, booking enquiries, offers, clients, staff, billing and the Zoca "brain" agent layer.'
  version: 3.20.10
  contact: {}
  x-apievangelist-note: Harvested verbatim from https://api.zoca.ai/swagger.json. The provider ships the default NestJS Swagger metadata (title "API Documentation", empty servers[]); title/description/servers were set by API Evangelist for identification and the unmodified original is preserved at openapi/_original/zoca-platform-swagger.json. Every path, operation, summary, parameter and response is exactly as published.
servers:
- url: https://api.zoca.ai
  description: Production
tags:


# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zoca/refs/heads/main/openapi/zoca-billing-api-openapi.yml