Recurring Billing

Set up plans and subscriptions.

Set up recurring, installment, or subscription payments with the Recurring Billing service of our Platform API. Create a payment plan through the API, then apply the plan to a saved customer profile to create a subscription. You can save customers in the Customer Vault directly via API or during a one-time payment transaction. On billing dates, we automatically charge your customers and notify you of the transaction results.

This page gives an overview of Recurring Billing and the requests it supports. Subpages provide implementation guides for several important Recurring Billing requests. See Recurring Billing in our API Reference for endpoints and details on all supported transactions.


Our Recurring Billing API service supports the following features:

  • Plans - Easily create one plan for multiple customer subscriptions.
    • This supports one-time fees, trial periods, and prorated billing options.
    • Plans work great for selling one or a few items at the same price to customers.
    • Example: A fitness gym sells two memberships: basic and premium. It creates two plans and subscribes customers to each.
  • One-time off-plans - Set up a unique subscription to charge a customer a certain amount at a set frequency.
    • Example: A department store offers a layaway installment plan. It creates a subscription for each customer to buy a unique basket of goods.
  • Flexible frequencies - Customize the frequency at which you bill.
  • Installment billing - Select how many times to bill your customer, and the subscription will end when all scheduled installment payments are complete.
  • Automatic retries - If we receive a recoverable error, we retry up to 3 times to complete the payment.
  • Security - Store all customer payment information securely with Maast, a PCI DSS certified Level 1 compliant Service Provider.

The service supports several different requests. We offer API reference for all supported requests and detailed implementation guides for some.

We have guides for the following API functions:

See Recurring Billing in API Reference for these additional functions supported by the API:

How It Works

This section provides an overview of the payment flow process with Recurring Billing:


Create a plan

  1. Send a 'create a plan' request to the Recurring Billing API service.
  2. The API creates the plan and returns a unique plan ID to you.
  3. Store the plan ID for future use.

Add a customer

  1. Send a 'create a customer' request to the Customer Vault API service, including a customer ID that you've selected.
  2. Customer Vault saves the customer information and returns a confirmation to you.
  3. Store the customer ID for future use.

Create a subscription

  1. Send a 'create a subscription' request to Recurring Billing, including the customer ID and plan ID in your request.
  2. Maast's Recurring Billing engine creates the subscription and returns a unique subscription ID to you.
  3. Store the subscription ID for future use.

Let the Engine run

  1. When it's time, our Recurring Billing engine initiates recurring payments on your behalf and sends payment information to the card brands for authorization. The card brands return an approval or decline.
  2. At your discretion, Maast emails a receipt for each recurring payment transaction to you and/or your customer.

Get Updates

  • M1 & M2. At any time, you can request the subscription transactions status, and Recurring Billing will return it to you.
  • M3 & M4. At any time, you can request the subscription status, and Recurring Billing will return it to you.

ACH Payments with Recurring Billing API

Maast’s recurring billing service invokes scheduled payments using the default or primary payment method stored in Customer Vault. No changes to a Recurring Billing request are needed to process ACH payments. Instead, use Customer Vault to add ACH payment methods to your customer’s billing cards. If the default payment method is ACH, then an ACH Sale is processed.