Pricing Pages
Wingback.js pricing module dynamically renders pricing pages to let new customers choose the plan to buy and sign up with your services.
1. Creating a Pricing Page
Before displaying a pricing page you have to create it from the pricing pages option of Wingback’s app portal.
To create a pricing page you’ll have to enter a name, a slug and select at least one plan.
In the pricing pages editor you will be able to select the plans to offer, edit the name of the pricing page, specify a custom callback url, and set more options that will determine how the pricing page will be displayed.
The pricing page slug si composed of your wb_customer slug and the pricing page slug, separated by a forward slash, e.g. MY_COMPANY/BASIC_PRICING
. It uniquely identifies the pricing page, and you will need it to tell the pricing module which pricing page to display.
If you don’t remember it you can go to the pricing editor and click on the slug to copy it:
The Callback url is where the customer will be redirected after he chooses to buy a plan. If not specified, customer will be redirected to Wingback’s signup page.
2. Adding a dynamic Pricing Page to your website
To integrate the pricing page into your own website you need to include the Wingback.js library and call the Wingback.pricing.render
function, passing as parameter either a CSS selector (e.g. #pricing
) or a DOM element where the pricing page should be rendered, and the pricing page slug.
A minimal example would look like this:
3. Sharing a link to your dynamic Pricing Page
You can also display a pricing page without any integration task on your part by just navigating to https://billing.wingback.com/pricing/[wb_customer_slug]/[pricing_page_slug]
For example, if you navigate to https://billing.demo.wingback.com/pricing/BETTERBUTTONS/BB_PRICING you’ll see the following:
Take into account that this it not just a preview, it’s a valid and live pricing page. You can share it with any potential customer and he’ll be able to chose the plan, enter the units he wants to buy, his payment method and billing information, and he’ll sign up to your services.
If you need a quick way to let someone buy your services, this is an easy and valid alternative.
4. Signing up a New Customer
After the customer clicks on the “Choose plan” button he’ll be redirected to the signup form. There he’ll be able to select the units to buy, enter the payment method and billing information, and buy the plan.
You can specify a different callback in the pricing page editor to redirect the user to your own signup page.
After the customer completes the information and clicks the Buy
button, he’ll be redirected to the Billing Portal, where he’ll be able to manage his contract.
5. Wingback.pricing.render parameters
The Wingback.pricing.render method accepts the following parameters:
The dom element or the id of the container where the pricing table will be rendered.
The slug of the pricing table you created in the Wingback application (e.g. ‘COMPANY_SLUG/PRICING_SLUG’).
A set of options to customize the rendering of the pricing page.
6. Customizing the Pricing Page appearance
The generated pricing page provides the following style classes structure to let you customize the appearance of the pricing page using css selectors:
This detailed CSS selector structure gives you unprecedented level of control to completely customize each pricing page component to your needs, just by applying custom CSS rules targeting the specific element you want to customize.
Wingback.js pricing also generates specific class names for plans (using the plan slug and the plan name) and features (using the plan feature) to let you target a specific plan.
For example, given a plan named ‘Enterprise Cloud-Hosted Edition’ with a slug ‘PP123456789’ you would get the following clases:
Which will allow you to target that specific plan and the elements within it by slug or by name.
Accordingly, if you have a feature with the slug ‘SUPPORT_CALL’ you would get the following clases: