What Is The EPA?
Our Personalisation apps provide the ability to show pricing as well as allowing the user to input a purchase quantity. This information is than pulled from an external URL and is then know as the External Pricing API (Or EPA for short). There are 2 types of EPA which work with new pricing and that is either "Single Product Mode" or "Multi Product mode". This works in conjunction with "Pricing" set up against products.
EPA has been documented in the following video article - CLICK HERE
What is the "Single Product Mode"?
In single product mode, the URL specified by the EPA Parameter is called by the personalisation app. Meaning it is possible to use a different URL for each individual product you want to use from platform by changing the parameter.
What is the "Multi Product Mode"?
The Multi Product mode (which is when a product menu is visible) is when the app will take the EPA URL and append a SKU parameter to the end of it before retrieving information. The value of the SKU parameters likely t be the SKU of the product that is selected by the user. This SKU comes from the KornitX Platform and is typically in this case the fulfiller SKU.
How Do These Work?
This works with both single and multi options, the product information is retrieved via a JSONP API, the URL of this is passed to the app via the EPA URL parameter. The EPA API must return a JSONP encoded object with the following fields:
How Can I set An EPA With New Pricing?
Well, to begin with you need to ensure the product you are updating has pricing set up within the "Pricing" menu as shown below. In this example we can see the cost, trade and RRP pricing has been set against the product which means we can use the EPA based on the products pricing setup. If your products are missing pricing, the actual EPA setup will fail so this needs to be set up.
Below is a breakdown of this app link, please take this into account with the above link
- The `s` parameter is for the seller company ID (this is set at the example 6 digit ID)
- The `b` parameter is for the buyer company ID (set as "any" for our example)
- The `c` parameter is for the currency code (Set as "GBP" for our example)
- The `pt` parameter is for the price type (In our example this is 2 which is RRP.)
Regarding the pricing type, each type of pricing has a numerical value as detailed below.
- Cost - 0
- Trade - 1
- RRP - 2
- Retail - 3
- Carriage - 4
The pricing EPA set up has been shown in the following video, please watch this to visually see how to set pricing EPA against an app - Video Link
What Apps Does This Work On?
This pricing works on the following apps. Please note, these are all standard apps that all of our customers can access.
We are continuing to test this on our apps so you can expect the above list to grow!
Updated Pricing EPA Features
At KornitX we have continued to develop updates for variants and this is due to the fact we pride ourselves on constant evolution and the release of new features and enhancements every week. We have detailed each new variant enhancement below. If you are interested in knowing what features arrive, they will be continually updated within the "Core Platform Feature Updates" Article - CLICK HERE This will continue to be updated below whenever a new enhancement is rolled out to improve variants, a time stamp will be labelled with each feature
Pulling Of Virtual Pricing From A Blank
This was added on 12-01-2022
Pricing EPA has been updated to ensure that for any Virtual products that do not have any pricing information set, the use of the Pricing EPA in a smartlink will ensure a price is gathered from the Blank product of which the virtual is made from. This has reduced the need to set virtual pricing on products as with the use of the Pricing EPA, a price will always be set as long as a blank contains this data.
To set this, simply set add the following "i" paremeter, standing for "Inherit pricing from base product". This will appear at the end of the smartlink like the following example - "i/1"
This a huge change to Pricing EPA tand they key change is the fact products can pull pricing from their blank which from a workflow production vastly speeds up the process.