CoinGate Billing is an API-first solution enabling businesses to issue bills and collect payments in cryptocurrencies. These can be one-off bills or a set of predefined recurring payments. There is also email invoicing solution which can be enabled by passing a single parameter.
It is up to you how invoices will be delivered. For example, you can choose to display retrieved payment (bill) links on your user dashboard, send them via any other channel available at your disposal or choose CoinGate to deliver the bill via email for you.
Billing service has four main building blocks: subscribers, subscription details, subscriptions and payments.
Subscribers represent your customers. Subscription details represent a set of details of a specific subscription, like it's title, list of items included, their quantity and unit price.
Subscription is constituted from subscriber and subscription details merged to form a payments schedule along with other preferences, like start and end dates of a subscription.
Each building block supports many-to-many relations and are reusable. This means that one subscriber can have unlimited amount of subscriptions assigned at any given time. Similarly, same subscription details can be used in any number of subscriptions. This can be useful when, for example, you are selling fixed number of different subscription plans. In this use case, it is only needed to create subscription details for each subscription plan you are selling and these can be reused later on.
The first step is to create an API app to get an auth token. This can be done on Business account dashboard under Merchant - API apps. Previously created API apps can also be used.
Using the API
In the most simple scenario, the sequence of calls to API should be as follows:
- POST Subscriber
- POST Details
- POST Subscription
- PATCH Activate Subscription
- GET Subscription Payments