Maple enables you quickly sign up customers on a plan with standard payment links, customer specific checkout sessions or contract signature workflows.

Payment links are a hosted links that provide a convenient and simple way for your customers to sign up for any product plan or one-time payment fee via your linked payment provider. These reusable links can be shared with your customers via email, messaging apps, or social media.

Maple enables the setup of payment links for product pricing through the web application and the API. There are several options provided by payment links

  • Email verification - to ensure that customers provide a verified email as they sign up for your product
  • Promotion codes – to enable coupons for the payment flow through promo codes
  • Required customer fields - to ensure customer phone or address fields are populated
  • Save card on checkout - to ensure future customer charges are seamless
  • Confirmation page - to customize the messaging upon completion of the flow
  • Redirect URL - to redirect the flow to your application after the checkout flow is completed. The redirect URL includes query parameters for the customer ID created on Maple.

When a customer clicks on the payment link, they will be redirected to a payment page where they can enter their payment information. Once the payment is processed, the customer will be redirected to Maple and a subscription with the product pricing is created.

To create a payment link, go to Products > Payment Links and hit Create Payment Link

You can configure your payment link settings based on the product pricing and then expose this within your application.

Checkout Sessions

While the standard payment links serve as a template for a standard plan purchases (say from your website), the Maple API also supports creation of a customer-specific checkout session links that enable you to dynamically build cart-like checkout for any arbitrary list of product plans.

curl --request POST \
     --url https://api.maplebilling.com/api/v1/companies/company_id/checkout \
     --header 'accept: application/json' \
     --header 'authorization: Bearer my_token' \
     --header 'content-type: application/json' \
     --data '
	{
    "customer_id": "cus_2YdAsQWuTtz2LQh3pjDpj6uwYTI",
    "type":"CHECKOUT_SESSION",
    "term": {
        "frequency": "MONTH",
        "count": 1
    },
    "currency": "USD",
    "product_pricing_ids": ["plan_2QAjNCQN2iEJHWV12IfUIhHjHfd"],
    "config_items": [
        {
            "num_licenses": 1
        }
    ]
	} 
'

While this endpoint is primarily designed for initiating new subscriptions, it can also be utilized to modify existing subscriptions by configuring specific parameters.

To update an existing subscription using the checkout session, you can set parameters such as proration mechanism, resetting the billing anchor or timing for the change. By configuring these parameters appropriately, you can effectively use the checkout session to upgrade or downgrade a customer’s existing subscription, adjust billing cycles, and manage proration behavior. This approach provides flexibility in handling subscription modifications directly through the checkout process.

For more detailed information and examples, please refer the Checkout API.

Maple also enables the creation of checkout flows with contract signatures enabled. The customer checking out is considered to be the signatory on the contract and can sign the document with an in-built flow with Dropbox Sign by default.

For more details for creating contract links, refer to our Contracts API.