Billing challenges are usually hidden. Starting up, you will need to set up checkout pages, activate customers, send invoices, and collect payments from the very first customer.
But as you grow, you will need to handle billing complexities such as accounting and taxes, revenue recovery, localization, customization, reporting and much more. Chargebee’s APIs are best designed to support all that and more.
A Complete Subscription Billing Stack
You don't have to dedicate full-time engineers to handle billing complexities, do you?
Subscription management
- Plan and Addons
- Trial and freemium
- Upgrades & Downgrades
- Discounts and coupons
- Hosted checkout page
- Customer portal
Reporting and Analytics
- Net revenue
- Net payments received
- MRR & ARPU
- Plans report card
- Activations and cancellations
- RevRec & Deferred revenue
Recurring Invoices
- Flexible pricing models
- Customizable invoices
- Configure global taxes
- Credit notes and refunds
- Customer lifecycle emails
- Handle prorations
Integrations
- QuickBooks Online
- Xero
- Zendesk
- Avalara
- Salesforce
- HubSpot
Payments
- 23+ payment gateways
- Multiple payment methods
- Multiple currencies
- Credit Cards and Digital Wallets
- Direct debit payments
- Offline payments
Chargebee is all about solving billing edge cases for you
Chargebee’s APIs Are Intuitive and Efficient
Chargebee helps you solve all the complexities involved in recurring billing effortlessly.
Work with our robust set of APIs to build recurring genius, and remarkable experiences, right inside your app.
/*
creates a subscription with customer information and billing details.
*/
require 'chargebee'
ChargeBee.configure(:site => "{site}",
:api_key => "{site_api_key}")
result = ChargeBee::Subscription.create({
:plan_id => "no_trial",
:auto_collection => "off",
:billing_address => {
:first_name => "John",
:last_name => "Doe",
:line1 => "PO Box 9999",
:city => "Walnut",
:state => "California",
:zip => "91789",
:country => "US"
},
:customer => {
:first_name => "John",
:last_name => "Doe",
:email => "[email protected]"
}
})
subscription = result.subscription
customer = result.customer
card = result.card
invoice = result.invoice
unbilled_charges = result.unbilled_charges
# creates a subscription with customer information and billing details.
curl https://{site}.chargebee.com/api/v2/subscriptions \
-u {site_api_key}:\
-d plan_id="no_trial" \
-d auto_collection="off" \
-d customer[first_name]="John" \
-d customer[last_name]="Doe" \
-d customer[email]="[email protected]" \
-d billing_address[first_name]="John" \
-d billing_address[last_name]="Doe" \
-d billing_address[line1]="PO Box 9999" \
-d billing_address[city]="Walnut" \
-d billing_address[state]="California" \
-d billing_address[zip]="91789" \
-d billing_address[country]="US"
/*
creates a subscription with customer information and billing details.
*/
Environment.configure("{site}","{site_api_key}");
Result result = Subscription.create()
.planId("no_trial")
.autoCollection(AutoCollection.OFF)
.customerFirstName("John")
.customerLastName("Doe")
.customerEmail("[email protected]")
.billingAddressFirstName("John")
.billingAddressLastName("Doe")
.billingAddressLine1("PO Box 9999")
.billingAddressCity("Walnut")
.billingAddressState("California")
.billingAddressZip("91789")
.billingAddressCountry("US")
.request();
Subscription subscription = result.subscription();
Customer customer = result.customer();
Card card = result.card();
Invoice invoice = result.invoice();
UnbilledCharge unbilledCharges = result.unbilledCharges();
/*
creates a subscription with customer information and billing details.
*/
require 'ChargeBee.php';
ChargeBee_Environment::configure("{site}","{site_api_key}");
$result = ChargeBee_Subscription::create(array(
"planId" => "no_trial",
"autoCollection" => "off",
"billingAddress" => array(
"firstName" => "John",
"lastName" => "Doe",
"line1" => "PO Box 9999",
"city" => "Walnut",
"state" => "California",
"zip" => "91789",
"country" => "US"
),
"customer" => array(
"firstName" => "John",
"lastName" => "Doe",
"email" => "[email protected]"
)
));
$subscription = $result->subscription();
$customer = $result->customer();
$card = $result->card();
$invoice = $result->invoice();
$unbilledCharges = $result->unbilledCharges();
Freedom improved conversions by 33% with a stellar billing experience, using Chargebee with Stripe.
- Supported for global payment methods.
- Provided a self-service portal to customers.
- Tracked growth and risk factors using RevenueStory.
- Created and managed coupons effortlessly.
