POST /hosted_pages/checkout_existing
You can checkout an existing subscription(typically in the trial state) by passing in the plan, quantity and addon details(like Update a Subscription)
When the redirect URL is notified of the result, we would advise you to retrieve the subscription and verify the details.
Related Tutorial
- Upgrade existing subscription using Chargebee's hosted page
As mentioned before this behavior is very similar to the update subscription API call. All the web hook events will be fired only after the submission of payment details by the customer and successful checkout of subscription. Any errors related to the payment form that is submitted is handled as a response within the form so that the user is kept informed about the reason for failure to take corrective action.
Servers
- {protocol}://{site}.{environment}:{port}/api/v1
- {protocol}://{site}-test.{environment}:{port}/api/v1
Request headers
| Name | Type | Required | Description |
|---|---|---|---|
chargebee-request-origin-device |
String | No |
The device from which the customer has made the request |
Content-Type |
String | Yes |
The media type of the request body.
Default value: "application/x-www-form-urlencoded" |
chargebee-event-webhook |
String | No |
skip only webhooks Valid values:
|
chargebee-event-actions |
String | No |
skip all actions to be done on the events Valid values:
|
chargebee-request-origin-user |
String | No |
The email address of your customer/user. Use this when the email address has only ASCII characters. |
chargebee-request-origin-ip |
String | No |
The IP address of the customer where the request originated |
chargebee-request-origin-user-encoded |
String | No |
The Base64-encoded email address of your customer/user. Use this if the email address has UTF-8 characters. When this header is provided, the header chargebee-request-origin-user is ignored. |
chargebee-event-email |
String | No |
skip only emails Valid values:
|
Request body fields
| Name | Type | Required | Description |
|---|---|---|---|
redirect_url |
String | No |
The customers will be redirected to this URL upon successful checkout. The hosted page id and state will be passed as parameters to this URL.
Although the customer will be redirected to the or Note : - Redirect URL configured in Settings > Hosted Pages Settings would be overriden by this redirect URL. Eg : http://yoursite.com?id=&state=succeeded
|
subscription |
Object | No |
Parameters for subscription |
subscription.id |
String | Yes |
A unique and immutable identifier for the subscription. If not provided, it is autogenerated. |
subscription.start_date |
Integer | No |
The new start date of a |
subscription.plan_id |
String | No |
Identifier of the plan for this subscription |
subscription.coupon |
String | No |
Used to uniquely identify the coupon in your website/application and to integrate with Chargebee. Note: When the coupon ID contains a special character; for example: |
subscription.trial_end |
Integer | No |
The time at which the trial has ended or will end for the subscription. This is only allowed when the subscription |
subscription.plan_quantity |
Integer | No |
Represents the plan quantity for this subscription. Default value: 1 |
pass_thru_content |
String | No |
You can pass through any content specific to the hosted page request and get it back after user had submitted the hosted page. |
cancel_url |
String | No |
The customers will be redirected to this URL upon canceling checkout. The hosted page id and state will be passed as parameters to this URL.
|
card |
Object | No |
Parameters for card |
card.gateway |
String | No |
Name of the gateway this payment source is stored with. * sage_pay - Sage Pay is a payment gateway. * wirecard - WireCard Account is a payment service provider. * balanced_payments - Balanced is a payment gateway * elavon - Elavon Virtual Merchant is a payment solution. * migs - MasterCard Internet Gateway Service payment gateway. * not_applicable - Indicates that payment gateway is not applicable for this resource. * paymill - PAYMILL is a payment gateway. * first_data_global - First Data Global Gateway Virtual Terminal Account * ogone - Ingenico ePayments (formerly known as Ogone) is a payment gateway. * eway_rapid - eWAY Rapid is a payment gateway. * chargebee - Chargebee test gateway. * twikey - Twikey is a payment service provider that specializes in processing direct debit payments across the EU. * beanstream - Bambora(formerly known as Beanstream) is a payment gateway. * braintree - Braintree is a payment gateway. * tco - 2Checkout is a payment gateway. * bluepay - BluePay is a payment gateway. * paypal_payflow_pro - PayPal Payflow Pro is a payment gateway. * eway - eWAY Account is a payment gateway. * pin - Pin is a payment gateway * paypal_pro - PayPal Pro Account is a payment gateway. * authorize_net - Authorize.net is a payment gateway * stripe - Stripe is a payment gateway. * worldpay - WorldPay is a payment gateway * nmi - NMI is a payment gateway. * hdfc - HDFC Account is a payment gateway. Valid values:
|
replace_addon_list |
Boolean | No |
Should be true if the existing addons should be replaced with the ones that are being passed. Default value: false |
embed |
Boolean | No |
If true then hosted page formatted to be shown in iframe. If false, it is formatted to be shown as a separate page.
Default value: true |
iframe_messaging |
Boolean | No |
If true then iframe will communicate with the parent window. Applicable only for embedded(iframe) hosted pages. If you're using iframe_messaging you need to implement onSuccess & onCancel callbacks.
Default value: false |
addons |
Object | No |
Parameters for addons |
addons.id[] |
Array | No |
Identifier of the addon. Multiple addons can be passed. |
addons.quantity[] |
Array | No |
Quantity of the addon. Applicable for addons with |
billing_cycles |
Integer | No |
The number of billing cycles the subscription runs before canceling. If not provided, then the billing cycles set for the plan is used. |
How to start integrating
- Add HTTP Task to your workflow definition.
- Search for the API you want to integrate with and click on the name.
- This loads the API reference documentation and prepares the Http request settings.
- Click Test request to test run your request to the API and see the API's response.