This guide will walk you through how to implement your catalog. When you're finished, your catalog will be ready.
Summary
- Feature
- Catalog
- You Need
- Complete Design Your Catalog; have your price-book/price-list; if using Events-based billing know your data structure
- Code
- No
- Difficulty
- ◉◎◎◎◎
Configure The Basics
All catalog building starts with the same basic building blocks. We’ll walk you through these first.
Component Type |
Best for |
Metered |
for any usage-based items that are basic, and billed in arrears |
Events-based |
for any usage-based items that are advanced, and/or have a multi-attribute rating system, and/or you have big data, and billed in arrears |
Prepaid-usage |
for any usage-based items that are advanced, and billed upfront |
Quantity-based |
for any recurring items with a quantity of 0, 1, 2+ |
Quantity-based One-time |
for any non-recurring items with a quantity of 0, 1, 2+ |
On-off |
for any recurring items with a quantity of 0 or 1 |
- Add a Currency Help
1. Go to Config > Settings > Multi-Currency.
2. Click Add a Currency.
3. Select which currency, and choose the Conversion type. - Save
Your currency is added. Repeat steps for any additional currencies.
For Developers
- Enable EBB
1. Go to Config > Settings > Events-Based Billing. *If you do not see the Events-Based Billing menu option, Maxio Customer Support needs to enable it for you.
2. Toggle to On, and click Save Settings.
3. Refresh the page, and the left hand menu will now contain an Events section. - Create Stream Help
Go to Events > Streams > New Event Stream. Your stream creates a unique Events API endpoint, so your company can stream data into Advanced Billing.
Stream Name: enter a name that describes your data stream
API Handle: auto-filled
Description: optional
Subscription Identifier: how your event data is mapped to a subscription. Most common is the "Other" option, so you can use an existing field that is already present in your data. In the example image below, we'll use "account_id" to represent a field that is in our data.
All of these fields are internal-facing only. - Create your JSON and stream a sample API call
Your newly created Stream will now show you an API call, similar to the below example (code block 2). In this step, you'll want to populate your real data schema into Advanced Billing. You must know your data structure.
1. Structure your data structure like code block 1
2. Structure the API call like code block 2 (this will now contain your data structure)
3. Copy/paste the curl command into your terminal
4. Refresh your stream page, and your data structure will be populated.
5. Optional - If you need to repeat this, keep in mind it takes ~10 minutes for the structure to refresh within Advanced Billing
Code Block 1
// CREATE YOUR REAL JSON DATA STRUCTURE - EXAMPLE BELOW { "body": "Hi there", "count": 1, "from": "+15017122661", "to": "+15558675310", "from_country": "US", "to_country": "US", "characters": 8, "account_id": "acct_123456" }
Code Block 2
// Replace SUBDOMAIN, APIKEY, and STREAMHANDLE // after replacing, copy/paste into terminal // then, refresh streams page in Chargify curl https://events.chargify.com/SUBDOMAIN/events/STREAMHANDLE \ -u APIKEY:x \ -H 'Content-Type: application/json' \ -d '{ "body": "Hi there", "count": 1, "from": "+15017122661", "to": "+15558675310", "from_country": "US", "to_country": "US", "characters": 8, "account_id": "acct_123456" }'
- Create a Metric Help
1. After you make the call from Step 3, refresh the page in Advanced Billing. You'll now see the Metrics Page.
2. Click Create New Metric.
3. When you're done click Create Metrics.
In the example below, we create a metric called SMS Messages, that uses an analysis type of `sum` on the target property of `count` in our data. In other words, sum up all the messages. We then add segmenting attributes of `from_country`and `to_country` because we want to charge different rates based on the countries. You will define these rates when you create your actual component. - Finished
EBB is now configured. If you need more Streams (less likely), repeat steps 2-3. If you need more Metrics in an existing Stream (more likely), repeat step 4.
If you own a trademark or similar, you may want to denote that on your line item.
Example - trademark symbol on an Advanced Billing invoice.
How it works
Symbols work if you copy paste them directly. The example above uses this:
Line Item Name Here™®
Import Your Catalog Smart templates Docs
If your implementation strategy from Getting Started question 1 is an import, use the resources below.
- Open the Catalog Smart Templates Open Templates
- Clone the Smart Templates into your Google Account
When you open the Catalog Smart Templates in Google, click File > Make a copy.
*Do not fill out your template in Excel. Fill it out in Google Drive.*