Chargebee provides HTTP based API which follows the essence of REST*. The HTTP protocol's rules are followed thereby enabling simple HTTP client tools like "curl" to be used.
The following client libraries provide a "easy to use" wrapper around the raw HTTP based API.
Please do mail us at support if you need any other language bindings.
The top language bar allows you to see samples in your preferred language.
Want us to generate ready-to-test snippets?
Login to Chargebee and open the API docs from there and you'll find ready-to-test sample codes based on your Chargebee test site's api key and data.Checkout our collection of sample applications with tutorials on integrating with Chargebee.
Refer to our documentation for a detailed definition & description of all the components in Chargebee.
r a detailed definition & description of all the components in Chargebee.Chargebee follows the REST model of exposing resources as urls. For example, subscriptions are exposed as
The PHP client library provide a corresponding class representation of the resource. For example, subscriptions are represented by
Subscription
All operations specific to that resource are exposed as class methods in the corresponding resource class. The methods accepts the input params as hash. You could also pass the environment configuration specific to that request as an additional parameter.
The response is in JSON format. Currently Chargebee does not support any other response format. The Result class wraps the response sent by the server. It has methods that allow you to fetch the specific resource from the result. The ListResult class is used to wrap list responses.
Note: Sometimes, while working with Chargebee APIs, you may see undocumented attributes returned in the response. Such attributes should be ignored.
/* creates a subscription with customer information and billing details. */ require_once('vendor/autoload.php'); use ChargeBee\ChargeBee\Environment; use ChargeBee\ChargeBee\Models\Subscription; Environment::configure("{site}","{site_api_key}"); $result = Subscription::create(array( "planId" => "no_trial", "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" => "john@user.com", "autoCollection" => "off" ) )); $subscription = $result->subscription(); $customer = $result->customer(); $card = $result->card(); $invoice = $result->invoice();
/* creates a subscription with customer information and billing details. */ require_once('vendor/autoload.php'); use ChargeBee\ChargeBee\Environment; use ChargeBee\ChargeBee\Models\Subscription; Environment::configure("{site}","{site_api_key}"); $result = Subscription::create(array( "planId" => "no_trial", "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" => "john@user.com", "autoCollection" => "off" ) )); $subscription = $result->subscription(); $customer = $result->customer(); $card = $result->card(); $invoice = $result->invoice();
composer require chargebee/chargebee-php:'<2'
The source code for the client library is available as a public repository at github. The code is provided with MIT license. So in case you need any modifications please feel free to do so. If you think it would be useful for other users please do let us know.
Newer versions of client library are released whenever there are new additions to the API. The version
numbering format is major-version.minor-version(s). All
minor releases are backward compatible. Please check the
change notes
for more details.
The latest version details for API V1 are:
Version: 1.7.5
Released On: 2019-08-27