Adjusting your products’ pricing based on where your customers are located can help in providing a tailored check-out experience for your customers.
The first step in achieving this is to display your products’ price in your customer's local currency. You can do this easily using Zoho Subscription's automatic exchange rate feeds and
API hosted payment pages, that is, the price that you've set for a product will be shown to your customers in their local currency with the latest exchange rates.
However, to truly localize your prices, you will want to set country-specific rates for your products. That's what we will look into in this week's post.
This post is part of a series of tips and tricks for Zoho Subscriptions. Go ahead and check out our previous post about using custom schedulers, in case you missed it.
How will this help your business?
Having country-specific rates for your products can help you win over more customers by appealing to their price sensitivity, since every country has its own purchasing power. You can even price your products a little higher in some countries depending on the demand and market saturation of your product.
Pricing is a delicate game, but if done correctly, it can lead to a substantial increase in your revenue.
A few points to note about setting the right prices for your product:
- Understanding the local market condition is critical. If possible, try to perform localized pricing studies to know how much a potential customer is willing to pay for your product.
- It's always a good idea to take your competitor's pricing into consideration before deciding your own product prices.
- Ensure that your country-specific prices are displayed on your website and on any other medium where you showcase product prices to your customers.
How does it work?
We'll use our powerful Pricebooks API to handle this. It lets you set different plan prices for every currency and applies them when a customer with any of these currencies buys a subscription.
Note: The country-specific prices which you set for your plans will be applied only on API Hosted Payment Pages. Also, they will not be visible within Zoho Subscriptions' web or mobile apps and are API-only, i.e. they will not be applicable for non-API hosted payment pages, for now at least.
How do you set it up?
Prerequisite: A REST API client, such as
Postman, to make and receive API calls.
Once you've decided your country-specific prices, it's time to start creating Pricebooks.
A Pricebook will contain information about a plan's pricing for a particular currency. Pricebooks can contain only one currency. For example, if your base currency is USD and if you sell in both Australia (AUD) and Canada (CAD), you'll have to create two separate Pricebooks for each currency.
Note: The domain (".com") of the API endpoints mentioned in the section may have to be changed, depending on which data center you're accessing Zoho Subscriptions from.
Learn more.
You can specify the currency of a Pricebook using the currency's ID. To obtain a list of all currency IDs in your Zoho Subscriptions organization, make a GET call to the following API endpoint:
Next, you will have to create the Pricebook. Here's how:
JSON body for this request:
- {
- "name":"PB 1",
- "description":"Pricebook 1",
- "currency_id":"{{currency_id}}",
- "type":2
- }
Replace the highlighted parts with your actual values in the JSON body. The "type":2 key-value pair should remain the same for every Pricebook that you create.
You'll receive a Pricebook ID in response to this POST call. Copy this ID to your clipboard, as you'll need it for the next step.
Now, your Pricebook has been created with the currency and all that's left is to fill it up with your plans and their prices. You can do this by downloading this
sample CSV file and replacing the dummy values for the Plan Code, Pricebook Name and Price with the actual values from your organization. Once you've made these changes to the CSV file, update it in your Pricebook. To do this, import the file into your REST API client and make a POST call to the following endpoint:
You'll receive an Import ID in the response of this call, which you'll need later.
The last step to import your CSV file requires a PUT request to the following endpoint:
Note: Replace the highlighted part of this endpoint with the Import ID from the previous step.
You're all set! Your Pricebook has been configured and you can now use it generate
hosted payment pages via the API by passing the
pricebook_id node in the JSON. You can also pass this node while
creating a customer via API. For such customers, Pricebooks will be applied on API-based hosted payment pages without needing to pass the
pricebook_id node.
Note: If you want to change the prices in a Pricebook, you need to create a new Pricebook with the updated prices and use the new Pricebook's ID.
Try it out and let us know how this helped your business. Feel free to write to us at
support@zohosubscriptions.com or simply leave a comment below if you need any help in regard to this tip.
Cheers,
Varun Steven
The Zoho Subscriptions Team