Our documentation has moved!

You are currently viewing a legacy version of our help articles.
For the most up-to-date version, please use the new Chargify Help & Support Site.
Follow

How to Set Up: Common Pricing Models

Select Your Pricing Model
There are many models possible, these are just a few.

Basic Models

Advanced Models

 

 

Basic Recurring

  1. Create A Product - Follow the guidelines for creating a basic Recurring Product (you can think of it as a "Recurring Plan"), so your customers can subscribe to your offering and be billed on a recurring basis.


  

Basic Recurring with Taxes

  1. Create A Product AND...
  2. When defining your product, make the product subject to taxes.
  3. Enable Taxes



Bill for Overages

  1. Create A Product
  2. Create A Metered Component AND...
  3. When defining your Metered Component's Pricing, set the first bracket to $0 (this represents the amount included in the base price of your product). Set the subsequent bracket(s) to your overage fees. 

Example 

Example: a SaaS company charges for monthly SMS messages. If the base product is $99/mo for 10,000 SMS messages with a 5 cent overage for each additional SMS message, the above image represents a metered component setup. The pricing scheme above would be tiered (however, your scheme may vary depending on your needs).

 

 

Custom Pricing/"Name your Price"

  1. Create A $0 Product
  2. Create A Quantity Component AND...
  3. When defining your Quantity Component, set Unit Name to a singular version of your currency (see example 1.1), set Pricing Scheme to "Per Unit", and checkmark "Allow Fractional Quantities". This will allow the price to be typed in (see example 1.2).

Example 1

Example 1: Configuring the Custom Pricing/"Name Your Price" model. Since each unit represents $1 and you accept fractional quantities, you can allocate any amount down to the penny. This is ideal for Sales teams who define custom offers, non-profits who accept donations, and any other scenario where your pricing may have a large (or infinite) number of possibilities.  

 

Example 1.1 (Line item from Statement)

Example 1.1: The Statement line item is structured based on the following: Component Name: Number of units, Plural Unit Name, Price.

 

Example 1.2 (Typing the Price)

Example 1.2: Typing the price in the Chargify app. This price can also be optionally typed in a payment page or the Billing Portal.

  

 

Quantity Based Recurring Billing

  1. Create A Product
     - If you only bill for the quantity of some unit and not a base product, create a $0 product.
  2. Create A Quantity Component

 

 

Bundled (Rolled Up) Pricing

This pricing model is accomplished by creating one base product and adding multiple components that represent your add-ons. Based on your needs, you may need to include multiple component types.

  1. Create A Product
    - If you only bill for the quantity of some unit and not a base product, create a $0 product.
  2. Create Each of Your Components AND...
  3. Focus on the "Display on Public Signup Pages" step when creating your components (the final step when creating your components, the directions are included in the link from step 2). This will control which add-ons are available in the bundle for a particular product on the signup page. If you are using the API, simply reference the component IDs you want to allow in the bundle for your particular product.

Example 

Example: This example would be accomplished using 3 On/Off Components. Other examples of bundled packages include a SaaS company charges $100/month, plus $10/month per user, and offers a high priority support option for an additional $50/month or a communications company allows customers to select any combination of TV, internet, and phone services

 

 

Multiple Subscriptions

The subscriptions will have the same billing cycle.

  1. Create A $0 Product
  2. Create Components (In this use case, each component represents a subscription).

Example 2a - Multiple Subscriptions Using On/Off Components

Example 2a: This image demonstrates a Public Hosted Page with 3 On/Off Components. The complete product is $20/mo + the option of adding any of 3 extra subscriptions. See the payment page here. If you do not want "extra" subscriptions that do not include a base price, simply make the base product $0/mo (or any billing duration such as $0/yr).

Example 2b - Multiple Subscriptions Using Quantity Components

Example 2b: This image demonstrates a Public Hosted Page with 2 Quantity Components. The complete product is $0/mo + the option of adding a quantity of extra subscriptions. See the payment page here. 

 

 

Multiple subscriptions with different Billing Cycles

Since a billing cycle is defined at the product level, multiple billing cycles can only be achieved by creating more than one Product. Multiple Products means your customer will have a subscription to each, and will therefore receive two separate charges to their card. Depending on your use case, this may or may not fit.

  1. Create more than 1 Product
  2. Create Component(s) (if necessary)
  3. The Customer Subscribes to Both Products through one of the following methods:
  • 2 Payment Pages
    Your customer signs up on the public payment pages twice. They will need to enter their credit card twice.

  • 1 Payment Page + Manual Second Subscription
    Your customer signs up on the public payment page and then you subscribe them to the second product manually in the app. Go to Subscriptions Tab -> Create New Subscription -> Choose Existing Customer -> Choose Existing Payment Method.

  • 1 Payment Page + Webhooks + API
    Your customer signs up on the public payment page. When you receive a signup_success webhook, you use the subscriptions API to immediately create their second subscription by referencing their customer_id or customer_reference.
    - Webhooks
    - Subscriptions API

  • Chargify Direct + API
    Your customer signs up via your Chargify Direct signup form and you use the Subscriptions API to immediately create their second subscription.
    - Chargify Direct and API v2 - Signups
    Subscriptions API

 

 

Contract Billing

  1. Create A Product that Expires 

Example 

Example: An example pricing model that bills $100/mo for a 12 month contract.

Optional Steps:

1. Require Cancellation Fees (Disabling self-cancellation if you use the Billing Portal) 

  • Go to Settings Tab -> Billing Portal
  • Make sure allow cancellation options are unchecked (there are 2)
  • Through a method you prefer, require that your customer contacts you to cancel. When they do contact you, follow step 2 below:

2. Add a One time Charge and Cancel Your Customer in the Chargify app

  • Go to Subscriptions Tab -> Click Customer's Name
  • Click "Actions"
  • Click "Add Charge" See example
  • Fill out the details, add a descriptive memo such as "Cancellation Fee"
  • Save
  • Click "Actions"
  • Click "Initiate Cancellation"
  • Cancel the customer

 

 

Charge Customers on the Same Day Each Month (Calendar Billing)
Customers are charged a prorated amount if they signup mid-period and then the full amount of the product will be charged on the date your specify.

  1. Create A Product
    • The product period must be 1 month
    • The product cannot have a trial
    • The product cannot have an expiration

  2. Change Calendar Billing Date

Documentation: https://docs.chargify.com/billing-dates#calendar-billing

 

 

One Time Charges
There are various types of one time charges. Choose the one that best suits your pricing model.

One Time Charge for a New Customer - This is most applicable if you just want someone to sign up, they pay you a set amount of money, and then the relationship is pretty much over.

  1. Create A Product AND...
  2. Set the Product's Billing Cycle and Expiration for 1 Day AND...
  3. Remove the expires in 1 day message (optional)

One Time Charge for an Existing Customer - Charge a one time additional fee for a current subscriber.

Adding a one time charge in the Chargify UI:

  • Go to the Subscriptions Tab
  • Click the Customer's Subscription
  • Click "Actions" in the top right
  • Click "Add Charge"
  • Add your charge and save

More details: https://docs.chargify.com/one-time-charges

One Time Charge that happens more often for the same customer - You do not charge your customer on a recurring basis, however you want to store the credit card to apply one time charges when applicable.

  1. Create a $0 Product (most likely monthly, but you can choose)
  2. Apply one time charges in the UI when applicable (see steps above)
  3. Remove renewal message (optional) (note: the steps outlined in this link are for removing the "expires message", however the same steps apply to remove the renewal message)

Additional One Time Charge Resources: 
One time charge article by Chargify's CTO

 

 

Gifts
There several types of gifts.

One Time Gift - A "gifter" buys a gift for a recipient. It is a one time payment, the gift is sent once, and that's it.

  1. Create A Product AND...
  2. Set the Product's Billing Cycle and Expiration for 1 Day AND...
  3. Remove the expires in 1 day message (optional)

Recurring Gift with Expiration - A "gifter" buys a gift for a recipient such as a monthly box subscription. The "gifter" pays once, but the box is sent out on a recurring basis for for the duration of the gift. For example, a $120 gift for a 6 month subscription, would be $120 every 6 months and expires after 6 months.

  1. Create A Product that Expires AND...
  2. Set the Product's Billing Cycle and Expiration to the duration of the gift AND...
  3. Remove the expires message (optional)

Recurring Gift with Expiration Using a Setup Fee (Alternative) 

  1. Create A $0 Product that Expires AND...
  2. Make the Product's setup represent the cost of the gift
  3. Set the Product's Billing Cycle and Expiration to the duration of the gift AND...
  4. Remove the expires message (optional)

Recurring Gift with Expiration (when you want the recipient to extend their subscription) - Since the credit card on file belongs to the "gifter", the recipient will need to create their own subscription.

  1. Create A Product AND...
  2. Communicate with your customers that they need to subscribe in order to have a subscription of their own.




Reseller Model
You want to offer your clients a billing service. Chargify allows you to create a Site for each of your resellers to have their own product catalog, customers, and settings. Most importantly, each Site can connect to its own payment gateway, so payments can be sent to your reseller's bank account.

  1. Create Your First Site - You will have a Master Site. This is the Site where you bill your actual Resellers.
  2. Create A Site for Each Reseller


  3. Create the Reseller's Products and/or Create the Reseller's Components inside each Site. If you want to allow the Reseller to have full access to the Chargify admin section but you only want them to have access to their individual Site, you'll need User Permissions (available on the Pro Plan and higher).


  4. Define the Settings inside each Site.
  5. If necessary, connect each Site to its own payment gateway. This ensures that your resellers get paid directly to their bank account.

 

 

Percentage Based Billing

  1. Create A Product
  2. Create A Metered Component AND...
  3. When defining your Metered Component's Pricing, set the per unit cost to the decimal value that represents the percentage you want to charge. You may need to include Fractional Quantities as well (eg: you will be allocating revenue that contains cents).

    Example



  4. Allocate your customer's revenue via API or record it manually in the UI

Alternative Method

Follow all the steps above, but with the exception that you create a $1/unit component instead. See Example 1 image here. Using this strategy, you would calculate the 1% charge on your side and simply allocate the amount to charge. For example, if your customer makes $10,000 in a month, you calculate 10000 * .01, and report a quantity of 100 to Chargify. Since each unit is $1, we charge your customer $100.



 

Referrals (Track Salesmen for Commission)
This setup has a quite a few steps, but it will be well worth it. The final result is a Public Signup Page where your Salesman's unique code is submitted along with the signup. You can then track which Salesmen should get commission.

  1. Create A Product
  2. Create Component(s) (if necessary)
  3. Create A Custom Field - This will collect the unique ID that represents the Salesman. You will most likely want a Text Input and to display on Subscription Exports.
  4. Enable the Custom Field on Your Payment Page (Go to Setup Tab -> Public Signup Pages -> Edit (on your Product) -> Checkmark the Custom Field to Display).
  5. Find the Custom Field ID. 
    a) Go to the Setup Tab -> Custom Fields, click the name of your Custom Field, and then your Custom Field ID will appear in the URL.



    In this example, our Custom Field ID is 10463.

  6. Add your Custom Field as a parameter in your Payment Page URL

    a) Get your Public Signup Page URL (eg: https://chargify-sandbox.chargify.com/subscribe/ztn8pwg2/monthly-plan-2)

    b) Add "?sales=mysalesmanID" to the end of the URL (eg: https://chargify-sandbox.chargify.com/subscribe/ztn8pwg2/monthly-plan-2?sales=mysalesmanID). Your syntax may vary. "sales" is the name of your Custom Field and "mysalesmanID" is your unique code that represents your Salesman.

  7. Prepopulate the Custom Field text input with your Salesman's unique ID.

    a) On the same page from step 4, add the following Javascript. Replace "sales" with your Custom Field name and replace "10463" with your Custom Field ID.
    function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
    vars[key] = value;
    });
    return vars;
    }
    
    var sales = getUrlVars()["sales"];
    $("#metafield_10463").val(sales);
  8. Hide the Custom Field (Add this code in the same section as step 7 above).
  9. //this will hide the entire Custom Field section
    $('.metafield_configuration').hide();
    $('#contact_info+ h2').hide();

 

 

Refer-a-Friend

  1. Create A Product
  2. Create Component(s) (if necessary)
  3. Set up your Referral Discounts - follow steps 1 and 2 in the Configuration Section
  4. Put Referral Code in Email Templates so your customers can refer a friend
    a) Give a link
    b) Give a referral code - In your email template, you can include "Refer a friend with the code {{subscription.referral_code}}"
  5. Social Media (optional) - Spread the word by allowing your customers to link their referral codes on social media. You can put the contents of step 4a or 4b in your email templates. If you want to display these links on your website, you can get the unique ref ID for each customer using the Subscriptions API.

    Here is a demo Twitter button. It brings the customer to a page where they can submit their tweet.

           


Recurring with Flat Recurring Shipping Fee

  1. Create A Product
  2. Create an On/Off Component
  3. Prepopulate the Component on the Public Signup Page
    a) Find your component ID under the Setup Tab -> Your Components

        b) Get your Public Signup Page URL
        c) Add the following parameter to your URL (replace x with your Component ID)

        ?components[][component_id]=x&components[][allocated_quantity]=1
Example payment page with prepopulated On/Off Component

 

 

Recurring with a Setup Fee

Fixed Setup Fee

  1. Create A Product AND...
  2. Define your Setup Fee

Variable Setup Fee

  1. Create A Product
  2. Create A Metered Component as your Variable Setup Fee AND...
  3. When defining your Metered Component, set the Name to "Setup Fee" (or something similar), set the Unit Name to a singular version of your currency, and define your pricing similar to example 1 ($1/unit with fractional quantities). This will allow for a custom setup fee down to the penny.

Setup Fee and Trial

  1. Create A Product AND...
  2. Define your Setup Fee (using a Fixed setup fee) AND...
  3. Choose When to Charge Setup Fee - The "When to Charge the Setup Fee" option only applies to the setup fee cost defined in the Initial/Setup Fee field.

Example: This is a free trial for 7 days with a $15 setup fee that charges before the trial begins. Alternatively, you can charge the setup fee after the trial period.

 

 

Invoice your Customers
Available on the Plus Plan and higher

In the UI

  1. Create A Product AND...
  2. Create Component(s) (if necessary)
  3. Configure your Invoice Settings (if necessary)
  4. Subscribe your Customer to an Invoice Style Billing
  • Go to the Subscriptions Tab
  • Click "Create New Subscription"
  • Enter the Information
  • Choose "Invoice Billing" and click "Create Subscription"

 

 

Free Trial

Credit Card Required

  1. Create A Product AND...
  2. When defining your Product, set Price to $0, and set Recurring Period to the length of your free trial. Keep Payment Method Settings enabled to require your customer to enter their credit card.
  3. Create Component(s) (if necessary). Any components you create will not be billed until the end of the free trial.

Example

Example: 29.99/mo with a 30 day free trial. Credit Card Required.

 

No Credit Card Required

  1. Create A Product AND...
  2. When defining your Product, set Price to $0, and set Recurring Period to the length of your free trial. Disable Payment Method Settings so your customer is not required to enter a credit card. AND...
  3. Choose what happens after the trial ends when there is no card on file. (see Trial Type)
  4. Create Component(s) (if necessary). Any components you create will not be billed until the end of the free trial.


Example: Disabling the payment method requirement is the key step

 

 

Recurring with a Coupon

  1. Create A Product
  2. Create Component(s) (if necessary)
  3. Create Coupon(s)
    • Go to Setup Tab
    • Click "Create Coupon"
    • Define your coupon (see image below)
  4. Enable your coupon
    • If using the public payment pages, enable the coupon by going to Setup Tab -> Public Signup Pages -> Edit (for a given Product) -> Checkmark "Display coupon?"
    • If using Chargify Direct, you can pass `coupon_code` in your form. https://docs.chargify.com/api-signups

Parameters when defining your coupon

Tip: Use the "Recurring Discount?" to define how often the coupon will be used for your customer

 

 

Recurring Product on Shopify

  1. Follow all the steps in the Shopify Integration Documentation AND...
  2. Create A Product - When creating your product, be sure to require shipping and billing address.
  3. Include Zip Code Validation (optional) - This will validate valid zip codes for US and Canada. Copy/paste the Javascript into your Javascript settings in Chargify (Settings Tab -> Public Page Default Settings -> Javascript). If you would like to test this functionality, go to this example payment page and type an invalid zip code such as '1234' and click out of the zip code box. 

 

 

Each Component has A Setup Fee
This example assumes you need to charge a setup fee for each quantity component.

  1. Create A Product
  2. Create A Quantity Based Component
  3. Create A Metered Component - This is your one time setup fee for each quantity component
  4. Find the component ID for both of your components

    Example showing your component ID



  5. In the following Javascript snippet, replace XXXXX with your Component IDs. The first one will be your quantity component ID, the second one will be your metered component ID. Place this code in Settings Tab -> Public Page Default Settings -> Javascript to show on all payment pages, or place this code in Setup Tab -> Public Signup Pages -> Edit (on the product of your choice) -> Javascript for individual pages.
    //sets two component values equal to each other
    $(function () { var component1 = $("#component_allocated_quantity_XXXXX"); var component2 = $("#component_allocated_quantity_XXXXX"); component1.change(function(){ component2.val($(this).val()); }); });
  6. Go to your payment page, type a value for the quantity component, and click update totals. Verify the metered component matches. 
  7. If Step 6 is successful, add one more line of Javascript to hide the metered component from view. Make sure XXXXX is your metered component ID.
    //hide a component on the payment page
    $("#component_allocated_quantity_XXXXX").hide(); 
Was this article helpful?
1 out of 1 found this helpful
Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk