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

Servers

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

Possible values:

  • "all-disabled"
chargebee-event-actions String No

skip all actions to be done on the events

Possible values:

  • "all-disabled"
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

Possible values:

  • "all-disabled"

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 redirect_url after successful checkout, we do not recommend relying on it for completing critical post-checkout actions. This is because redirection may not happen due to unforeseen reasons. Chargebee recommends listening to appropriate webhooks such as subscription_created or invoice_generated to verify a successful checkout.

Note :

  • Redirect URL configured in Settings > Hosted Pages Settings would be overriden by this redirect URL.
    Eg : http://yoursite.com?id=<hosted_page_id>&state=succeeded
  • This parameter is not applicable for iframe messaging.
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 future subscription. Applicable only for future subscriptions.

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: #, the API returns an error. Make sure that you encode the coupon ID in the path parameter before making an API call.

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 status is future, in_trial, or cancelled. Also, the value must not be earlier than changes_scheduled_at or start_date. Note : This parameter can be backdated (set to a value in the past) only when the subscription is in cancelled or in_trial status. Do this to keep a record of when the trial ended in case it ended at some point in the past. When trial_end is backdated, the subscription immediately goes into active or non_renewing status.

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.

Note :

  • Cancel URL configured in Settings > Hosted Pages Settings would be overriden by this cancel URL.
    Eg : http://yoursite.com?id=<hosted_page_id>&state=cancelled
  • This parameter is not applicable for iframe messaging and in-app checkout.
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. * 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.

Possible values:

  • "balanced_payments"
  • "first_data_global"
  • "paymill"
  • "bluepay"
  • "paypal_payflow_pro"
  • "wirecard"
  • "nmi"
  • "hdfc"
  • "ogone"
  • "stripe"
  • "migs"
  • "eway_rapid"
  • "worldpay"
  • "sage_pay"
  • "beanstream"
  • "tco"
  • "paypal_pro"
  • "braintree"
  • "elavon"
  • "chargebee"
  • "pin"
  • "eway"
  • "authorize_net"
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.

Note : For in-app checkout, default is false.

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.

Note : This parameter is not applicable for in-app checkout.

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 pricing_model other than flat_fee.

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

  1. Add HTTP Task to your workflow definition.
  2. 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.
  3. Click Test request to test run your request to the API and see the API's response.