Determine your billing model

The Billing API is composed of three different resources: ApplicationCharge, RecurringApplicationCharge, and UsageCharge.

To determine your billing model, you'll need to consider each resource described below and the billing scenario you'd like to implement.

Application charge

The ApplicationCharge resource facilitates one-time charges. This type of charge is  recommended for apps that aren’t billed on a recurring basis, such as apps that you can support without recurring revenue. For example, if your app allows merchants to import data from other platforms, then you can charge a $20 fee for each import job. Similarly, apps that don't have high ongoing operating costs (for example, apps that create simple animations on a merchant's storefront) can use the ApplicationCharge resource.

Recurring application charge

The RecurringApplicationCharge resource facilitates a fixed-value 30-day recurring charge. This type of charge is best suited to apps that provide continuing service to merchants. For example, an app could offer a tiered pricing model depending on a store’s customer count ($30/month for fewer than 1,000 customers, $200/month for up to 10,000 customers, $500/month for unlimited usage).

Usage charge

The UsageCharge resource facilitates a variable-value charge, and must be associated to a RecurringApplicationCharge. This charge is best suited to services that require users to pay based on usage events. See the implementation guide, for step-by-step instructions of how to implement the UsageCharge and RecurringApplicationCharge resources.

Where to go from here

Now that you're familiar with the billing resources, you can follow along with our detailed implementation guide, which offers step-by-step guidance.