List of Checkout Process Parameters
Cleverbridge offers many parameters to control the checkout process, including the following:
Warning
Cleverbridge URLs must not exceed 2,000 characters. Certain browsers may not be able to process URLs that exceed this length.
Products
Checkout process URLs contain parameters that determine the products that appear in the shopping cart.
&cart=<product list>
Parameter | Data Type | Description |
---|---|---|
<product list>
|
string
|
Cleverbridge product ID or internal product ID of the selected product(s). Separate multiple product IDs with a comma. If the internal product ID is used, it should be preceded by the capital letter I. Example
|
&allowmultiple=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool>
|
boolean
|
By default, if a product is added more than once to the shopping cart, the quantity of the existing line item is increased. Set this parameter to true to allow multiple occurrences of the same product. Example
|
Dynamic Products
Using the parameter dp
, you can create customized checkout process URLs that include a unique product price, discount price, and product name, see Configure Dynamic Products.
Note
Use UTF-8 encoding when generating dynamic links.
Example
Here is an example of a dynamic product in a checkout process URL. The product price is dynamically set to 34.95 EUR and 39.95 USD, then a 10 EUR or 10 USD discount is subtracted, so the new total price is 24.95 EUR or 29.95 USD:
&dp_123456=__DISCOUNT:10:EUR,10:USD;G__PRICE:34.95:EUR,39.95:USD;G __CHECKSUM:7f09d0bdd7236e5553d58e76735122769f6eec70c74713c97ce601e7641c8be7
You can use the dp
parameter as follows:
&dp_<product ID>=
__PRICE:<amount1>:<currency1>,<amount2>:<currency2>,…;<price type>
__DISCOUNT:<amount1>:<currency1>,…;<price type>
__NAME:<dynamic product name url encoded>
__INTERNALPRODUCTID:<internal ID>
__ADDITIONALNAME:<additional name information>
__CHECKSUM:<SHA256 checksum>
Parameter | Data Type | Description |
---|---|---|
<amount1>
|
number
|
Price of the product. |
<currency1>
|
string
|
Currency related to the price, according to ISO 4217. |
<amount2>
|
number
|
Price of the product in an additional currency. |
<currency2>
|
string
|
Currency related to the price, according to ISO 4217. |
... |
Value group NoteThe special currency type PCT can be used to define a percentage value for the |
|
<price type>
|
string
|
Defines whether or not the defined price includes VAT:
|
<internal ID>
|
string
|
Your internal unique product ID for this purchase An order made by a customer and the records associated with it. (optional). This overwrites any defined internal product ID for the product. |
<additional name information>
|
string
|
Use for additional product information. This is set in the Commerce Assistant, and it is displayed to customers in an additional line within the shopping cart and checkout process. |
<SHA256 checksum>
|
string
|
Calculated SHA256 checksum. For more information, see Dynamic Product Protection Logic (SHA256 Checksum). |
Additional (optional) parameters for recurring billing products include:
__PRICE_INTERVAL:<last period to apply>
__DISCOUNT_INTERVAL:<last period to apply>
__RENEWALDATE:<date>
__TIMETOFIRSTREBILLING:<count>;<unit>
Parameter | Data Type | Description |
---|---|---|
<last period to apply>
|
integer
|
Number of the last period (interval) for which the dynamically submitted price should be applied. 0 means that the special price ( The
ExampleA company sets up a dynamic product with a default price of 12€. The company then provides the following link to a customer An individual or business purchasing your product or service by placing an order through Cleverbridge. The customer is the end user of this product, as they are not allowed to resell the purchased products or services. A customer is unique per client. If a customer purchases products or services from two different clients, there are 2 separate records of said customer.:
Based on the highlighted
ImportantRead the following logic considerations before using the
|
<date>
|
date (yyyymmdd)
|
Sets up the Warning
As a result, any subsequent renewal dates will be calculated based on the following formula: ExampleShieldware decides to move its existing customers from another subscription management solution to Cleverbridge. One of their current customers has a one-month subscription that is up for automatic renewal on July 1, 2019. To migrate this subscription to Cleverbridge, Shieldware sends the customer a link with the following dynamic parameter:
Once the customer clicks this link, agrees to the terms and conditions, and submits a successful payment Exchange of money for goods and services in an acceptable amount to the customer where the payment amount has been agreed upon in advance. The customer can only pay with an accepted payment method. Each payment has an individual payment cost., the subscription will be up for renewal within the Cleverbridge platform on July 1, 2019 (the same renewal date found in the previous platform). After that, Cleverbridge will automatically renew the customer's subscription on the 1st of the month ( To learn more about migrating existing customers to Cleverbridge, see Migrate Existing Customers. Tips
|
<count>;<unit>
|
integer;string
|
Time until the first recurring billing event occurs. ImportantThe maximum allowed length for ExampleThe first recurring billing event should occur after 100 days. __TIMETOFIRSTREBILLING:100;D |
Using the parameter dp_s<selection ID>
, you can also create customized checkout process URLs including a dynamic discount price for the <selection ID>
product selection. For example, this parameter is useful for applying a percentage discount to all items within a product selection.
You can use the dp_s<selection ID>
parameter as follows:
&dp_s<selection ID>= __PRICE:<amount1>:<currency1>,<amount2>:<currency2>,…;<price type> __DISCOUNT:<amount1>:<currency1>,…;<price type> __CHECKSUM:
<SHA256 checksum>
Example
A company sets up a dynamic product selection (dp_s
) price to 100 EUR/USD gross, and on top of that a 20% discount is applied to all items within the product selection, so a customer sees the 80 EUR/USD gross price in the checkout:
https://www.cleverbridge.com/1584/?scope=checkout&cart=s1234&dp_s1234=__PRICE:100:EUR,100:USD;G__DISCOUNT:20:PCT__CHECKSUM:<SHA256 CHECKSUM>
You can submit more than one dynamic product in one URL. The product ID must be unique in the URL. Therefore, the rules for constructing the URL differ, depending on whether or not you want to submit different products or multiple instances of the same product:
If you want to submit different dynamic products in one URL, add the parameter dp_<product ID>
for every product in the cart.
Example
…&cart=111111,123456&dp_111111=__PRICE:49.95:USD;N__NAME:Basic Package__CHECKSUM:<SHA256 CHECKSUM>&dp_123456=__PRICE:29.95:USD;N__NAME:Premium Package__CHECKSUM:<SHA256 CHECKSUM>
If you want to submit the same product multiple times in one URL, add the parameter dprno_<RunningNo>
for every instance of the product in the cart. In addition, add &allowmultiple=true
to the URL, which enables you to add multiple occurrences of the same product.
Example
…&cart=111111,111111&dprno_1=__PRICE:49.95:USD;N__NAME:Basic Package__CHECKSUM:<SHA256 CHECKSUM>&dprno_2=__PRICE:29.95:USD;N__NAME:Premium Package__CHECKSUM:<SHA256 CHECKSUM>&allowmultiple=true
If you are building a cart containing multiple dynamic products and requiring the data to be encapsulated behind a session URL, add the parameter cartreset=true
. This is to ensure that your cart will contain the exact same dynamic products even if the page is refreshed.
The checksum for dynamic product protection is an SHA256 hash key based on the following string:
SHA256(dp_<productId>=__PRICE:<amount1>:<currency1>,…;<price type>__DISCOUNT:<amount1>:<currency1>,…;<price type>__NAME:<name>#<seedfordynamicproducts>)
To calculate the checksum, you must insert the hash key (#) at the end of the dynamic parameter string, followed by the Seed for Dynamic Products that you defined in Commerce Assistant.
Parameter | Data Type | Description |
---|---|---|
Dynamic parameter | string
|
__PRICE:29.95:USD,24.95:EUR;N__NAME:My Product Name |
Seed for dynamic products | string
|
TEST |
String based on SHA256 hashing | string
|
dp_product ID=__PRICE:29.95:USD,24.95:EUR;N__NAME:My Product Name#TEST |
SHA256 hash | string
|
7f09d0bdd7236e5553d58e76735122769f6eec70c74713c97ce601e7641c8be7 |
Parameter | string
|
dp=__PRICE:29.95:EUR,24.95:USD;N__NAME:My Product Name__CHECKSUM:7f09d0bdd7236e5553d58e76735122769f6eec70c74713c97ce601e7641c8be7 |
Warning
The product name must not be URL encoded when the SHA256 hash key is generated. For example, a space should be a ' ' and not '%20'.
Note
The sequence of the dynamic product parameters (__PRICE, __DISCOUNT, __NAME)
is not important. However, you must use the same order An agreement between a seller and a buyer to exchange goods and/or services for money. An order can: - contain multiple products and quantities; - have multiple financial transactions. A preorder authorization is considered an order. for the dp
parameter and the SHA256 hash key generation.
Note
To find your Seed for Dynamic Products in Commerce Assistant, go to Account Setup > General > Additional Details. For more information, see Account Setup ✱.
The fictional company, Shieldware, offers two software security products:
- Internet Security Basic (215225)
- Mobile Internet Security (215186)
Normally, when a customer adds these products to the cart and starts the checkout process, the URL appears as follows:
Example
https://www.shieldware.com/864/?scope=checkout&cart=215225,215186
However, on January 1, 2019, Shieldware decides to offer a New Years Day promotion. Instead of creating new products or promotions in the Cleverbridge platform, they decide to overwrite some of the properties of these products, including the name and price, using the dynamic product parameter.
To do so, Shieldware completed the following steps:
They added the following parameter to Internet Security Basic (215225):
Example
&dp_215225=__NAME:Internet%20Security%20Basic%20Special%20Offer__ADDITIONALNAME:
New%20Years%20Edition__DISCOUNT:5:EUR;G__PRICE:50:USD,45:EUR;G
They added the following parameter to Mobile Internet Security (215186):
Example
&dp_215186=__NAME:Mobile%20Internet%20Security%20One%20Time%20Offer__PRICE:95:USD;G
They calculated the checksum for both dynamic product parameters. The following was the result:
Example
SHA256(dp_215225=__NAME:Internet Security Basic Special Offer__ADDITIONALNAME:New Years Edition__DISCOUNT:5:EUR;G__PRICE:50:USD,45:EUR;G#SeedforDynamicProducts) = cdcb6fe13087b22afb69345c7feb412a3637bf14a09c41f9b3b950b81c585b38
SHA256(dp_215186=__NAME:Mobile Internet Security One Time Offer__PRICE:95:USD;G#SeedforDynamicProducts) = 7cfc913bc1712395b88369acc9130c396d69897e2d01e4fcecf3edcfcdbaf6b6
They added the dynamic parameters and
__CHECKSUM:value
to the original URL. For the New Years Day promotion, the URL appeared as follows:
Example
https://www.shieldware.com/864/?scope=checkout&cart=215225,215186&dp_215225=__NAME:Internet%20Security%20Basic%20
Special%20Offer__ADDITIONALNAME:New%20Years%20Edition__DISCOUNT:5:EUR;G__PRICE:50:
USD,45:EUR;G__CHECKSUM:cdcb6fe13087b22afb69345c7feb412a3637bf14a09c41f9b3b950b81c585b38&&dp_215186=
__NAME:Mobile%20Internet%20Security%20One%20Time%20Offer__PRICE:95:USD;G__
CHECKSUM:7cfc913bc1712395b88369acc9130c396d69897e2d01e4fcecf3edcfcdbaf6b6
Quantity Settings
Checkout process URLs can contain parameters that control product quantities.
&quantity=<quantity>
Parameter | Data Type | Description |
---|---|---|
<quantity>
|
integer
|
Set the quantity of the product or product list. The customer can change the quantity of the products in the checkout process. If no quantity parameter is set, a single quantity is used as default. Example
|
&quantities=<quantity>,<quantity>,<quantity>
Parameter | Data Type | Description |
---|---|---|
<quantities>
|
integer
|
Enables you to limit the quantity values available in the quantity selector drop-down for the customer in the checkout process. Pass the number list separated by commas in the quantities parameter in the URL. Example
The quantity selector drop-down can only be enabled when package pricing is configured. To enable package pricing, choose Top-Down Discount (Packages) in your product pricing setup and define the price for each available quantity. NoteTo enable the drop-down selection of available quantities in your checkout, contact Client Experience. |
&quantity_<product id>=<quantity>
Parameter | Data Type | Description |
---|---|---|
<product id>
|
integer
|
ID of the product you want to set the quantity for. The ID must be part of the product list that is submitted in the cart parameter. |
<quantity>
|
integer
|
Use a numeric value for the quantity of the product. Example
|
&quantityrno_<running cart no>=<quantity>
Parameter | Data Type | Description |
---|---|---|
<running cart no>
|
integer
|
Specifies the position of the product in the comma-separated list used in the cart parameter. |
<quantity>
|
integer
|
Use a numeric value for the quantity of the product. Example
|
&minquantity=<quantity>&maxquantity=<quantity>
&minquantity_<productId>=<quantity>&maxquantity_<productId>=<quantity>
&minquantityrno_<runningNo>=<quantity>&maxquantityrno_<runningNo>=<quantity>
Parameter | Data Type | Description |
---|---|---|
<quantity>
|
integer
|
Overrides the minimum and maximum quantity of the product. If these values are the same, the user cannot change the quantity in the cart. Example
|
&allowzeroquantity=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool>
|
boolean
|
By default, items with a quantity of zero are automatically removed from the cart. Set this parameter to true to allow items with zero quantity. This feature can be useful if you want to offer the customer a product selection. Example
|
Coupon Settings
Coupons can be added to the checkout process. Use the following parameters to add coupon codes, and to enable or disable coupons.
&coupon=<coupon code>
Parameter | Data Type | Description |
---|---|---|
<coupon code>
|
string
|
One of your entered coupon codes from within our database. This coupon code will be used for all products it is valid for. The customer automatically receives the discount and doesn’t have to enter the code during the checkout process. Example
|
&enablecoupon=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool>
|
boolean
|
By default, coupons are enabled if at least one product in the cart has an active coupon. By setting this parameter to By setting this parameter to Example
|
&enablecoupon=<force>
Parameter | Data Type | Description |
---|---|---|
<force>
|
string
|
By default, coupons are enabled if at least one product in the cart has an active coupon. By setting this parameter to ExampleA coupon of 30% is already passed on in a URL. If an additional coupon is sent in an email, no coupon entry field will be in the checkout. Use the |
Cart Settings
This section describes miscellaneous parameters used in acart.&lockcart=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | string | Prevent customers from changing cart items. Example
|
&cartreset=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Set this parameter to true to reset the entire cart information in the current session; for example, coupon codes and recommendations submitted by a parameter. Example
|
&cartitemreset=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Set this parameter to true to remove all items from the cart. Coupon codes and recommendations will still be active for new items added to the cart. Example
|
Cookie Settings
By default, Cleverbridge uses a checkout process that avoids setting cookies in the customer’s browser. However, in order to offer a persistent shopping cart hosted by Cleverbridge, cookie support must be activated. Otherwise, previous selections will be removed from the cart when the customer goes back to your website to select additional items.
&cookie=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | By default, a cookie is not set in the customer’s browser. Set this parameter to true to enable a cookie for a persistent cart. Example
NoteConsider the following information when deciding on whether or not to use the cookie parameter:
For more information about how Cleverbridge uses cookies, see Enhance User Tracking and Security. |
&resetMvtCandidate=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Submit this parameter with a display URL (PURL) to reset any pre-existing MVT Multivariate testing (MVT) is a technique for testing two or more different variables in the checkout process to determine which variable creates more revenue or a higher conversion rate. candidate cookies on the customer's browser. As a result, Cleverbridge will re-evaluate all MVT criteria for this customer. Example
|
If this parameter is submitted to the shopping cart, the customer will see a Continue Shopping link.
&continueurl=<url>
Parameter | Data Type | Description |
---|---|---|
<url> | string | Use this parameter with cookies turned on to offer an Add to Cart option on your product listing pages. The Continue Shopping URL should then link back to your product catalog. The value of the parameter should be URL encoded. Example
|
&continuehash=<string>
Parameter | Data Type | Description |
---|---|---|
<string> | string | Use this parameter to protect continue shopping links from phishing attacks and prevent unauthorized redirect links being created. It contains a hash string calculated using the seed for continue url protection. The hash will be appended automatically to the Continue Shopping URL when a URL is entered into the Continue URL textbox in the Link Generator (Advanced) under Cart settings. Example
|
Currency Settings
This section describes the currency parameters used in checkout process URLs.
¤cy=<currency id>
Parameter | Data Type | Description |
---|---|---|
<currency id> | string | Pre-assigned currency codes, based on ISO 4217. Example
|
¤cies=<currency id list>
Parameter | Data Type | Description |
---|---|---|
<currency id list> | string | Pre-assigned currency codes, based on ISO 4217. Use commas to separate items in the list. Example
|
Language Settings
This section describes the language parameters used in checkout process URLs.
&language=<language id>
Parameter | Data Type | Description |
---|---|---|
<language id> | string | Pre-assigned language codes, based on ISO 639-1. Example
|
&languages=<language id list>
Parameter | Data Type | Description |
---|---|---|
<language id> | string | Reduces the language selection to those specified in the parameter. Use commas to separate items in the list. The codes are based on ISO 639-1. Example
|
&disablelselection=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Set this to true to remove the language selection option from the cart. Example
|
Volume Discount Settings
You can add volume discount information to the checkout process. The discount information can be masked or turned off with the following parameters.
&showpricescale=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Set this parameter to This might be useful in targeted marketing, where you would usually expect your customers to only purchase a quantity of one. Example
NoteThe volume discount is still applied. |
&usepricescale=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Set this parameter to false to completely deactivate volume discounts for this transaction. Example
|
&basequantity=<base quantity>
Parameter | Data Type | Description |
---|---|---|
<base quantity> | integer | This parameter triggers a higher price scale for a purchase, which allows a higher volume discount for purchasing additional licenses. For example, if a customer has already purchased 15 licenses and later purchases 10 more, where the next discount level is set to 20+, this parameter qualifies the new purchase for the higher discount. This parameter must be protected to prevent customer misuse. For more information, contact Client Experience. Example
Additional quantity options:
|
Configurations
The configuration parameter allows you to select one of the configurations set up in your account. You can use different configurations in order to provide different checkout flow designs and different feature sets.
Note
You can determine and set your own individual configuration in collaboration with your Client Success Manager during onboarding. For more information about the available options, see Checkout Flow > Flow Design or contact Client Experience.
&cfg=<configuration>
Parameter | Data Type | Description |
---|---|---|
<configuration> | string | Use this parameter to override the default Cleverbridge configuration. You are limited to the configurations set up for your account. Example
|
License Keys
You can add license keys to the checkout process with the following parameter.
&previouslicense_<productId>=<string>
&previouslicenserno_<runningNo>=<string>
Parameter | Data Type | Description |
---|---|---|
<string> | string | License code of a previously purchased license required for key generation. The code is available in the notification XML. Example
|
Price Rules
You can add or change price rules in the checkout process with the following parameters.
&pricerule=<pricerule>
Parameter | Data Type | Description |
---|---|---|
<pricerule> | string | Use this parameter to override a price configuration set up in the Applicable Price Configurator in the Commerce Assistant. This parameter controls which prices are used. Example
|
&addpricerule=<value>
Parameter | Data Type | Description |
---|---|---|
<value> | string | Add new price rules each time you link to cleverbridge, instead of providing an exclusive list of price rules. Example
|
Recommendations
Cross-sells, sub-sells, and up-sells are campaigns known as recommendations. When defining a campaign, you can select a recommendation parameter value that triggers the campaign.
&recommendation=<list of recommendations>
Parameter | Data Type | Description |
---|---|---|
<list of recommendations> | string | Parameter for the recommendation. Add a comma at the end of the values to include all campaigns that would usually be applied when no parameters are submitted in addition to the submitted campaigns. The example below includes the campaigns To deactivate all recommendations, use the parameter Example
|
&addrecommendation=<value>
Parameter | Data Type | Description |
---|---|---|
<value> | string | Add new recommendations each time you link to cleverbridge, instead of providing an exclusive list of recommendations. Example
|
Release of Order
You can ensure that an order has to be approved by you with the following parameter.
&requirerelease=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Use this parameter to enable customers to place orders that are initially given an Awaiting Release by Client status and must be approved by you before being processed. To approve or reject these orders, do the following:
You can use this feature for instance in the upgrade process, where the entitlement of the customer needs to be manually verified. You can also use this feature to validate that specific checkout processes are available to special entities only, such as schools, universities, or government organizations. Example
|
Tracking
You can add or disable tracking information in the checkout process using the following parameters.
You can add tracking or conversion rate campaign applications to your checkout process. Examples of these applications are web analytics or third-party affiliate An individual or a company that markets a product to potential customers. The Affiliate receives a commission on a specific action (also called event: e.g., sale, lead, click, visit etc.) previously agreed upon with you, the advertiser. Each action is tracked via a unique tracking link from Partnerize. An affiliate is also called a publisher. management systems.
In some cases, you might want to trigger the inclusion of a specific pixel application only for a specific campaign. This parameter allows you to specify a particular tracking or conversion campaign.
&tracking=<tracking pixel id>
Parameter | Data Type | Description |
---|---|---|
<tracking pixel id> | string | Internal parameter provided by Cleverbridge for the tracking campaign. Example
|
Cleverbridge offers an affiliate management system to track revenue through affiliates and collect and pay commissions.
Sometimes, no affiliate tracking or payment should be done, even if the customer browser has been tagged with an affiliate tracking cookie.
&affiliatetracking=<bool>
Parameter | Data Type | Description |
---|---|---|
<bool> | boolean | Set this parameter to Example
|
&addtracking=<value>
Parameter | Data Type | Description |
---|---|---|
<value> | string | Add new tracking codes each time you link to cleverbridge, instead of providing an exclusive list of tracking codes Example
|
Dynamic Protected URLs
Use the following parameters to create dynamic protected URLs.
&urlident=<id>
Parameter | Data Type | Description |
---|---|---|
<id> | string | The unique identifier issued for every URL. By using this unique identifier, Cleverbridge can decide if an order should be accepted for a given URL. The client is responsible for choosing a unique identifier for each URL not used by the client before. Letters, numbers, and characters are allowed as part of this unique ID. Example
ImportantThis parameter is mandatory in dynamic protected URLs. |
&urlvaliduntil=<date>
Parameter | Data Type | Description |
---|---|---|
<date> | date | Defines the expiration date of the dynamic protected URL. Dynamic protected URLs are valid for a maximum of twelve months, starting on the day the client sends the URL to the customer. If a customer uses this URL after the expiration date, the customer is redirected to an error page stating that the URL is no longer valid. The date should be specified based on ISO 8601. Example
ImportantThis parameter is mandatory in dynamic protected URLs. |
&urlusage=<quantity>
Parameter | Data Type | Max. Length | Description |
---|---|---|---|
<quantity> | integer | Defines the number of times the dynamic protected URL can be used for a purchase. If customers use an unexpired URL with the number of uses already reached, customers are directed to an error page stating that the URL is no longer available. Example
NoteThis parameter is not mandatory. The default value is |
&queryhash=<MD5 hash>
Parameter | Data Type | Description |
---|---|---|
<MD5 hash> | string | Checksum of the entire query string. The hash is calculated using the complete query string and the Seed for query protection. For more information, see Create a Dynamic Protected URL (Dynamic UURL). |
Example
Shieldware wants to add a queryhash
to the following URL so that it cannot be manipulated by a customer:
https://www.cleverbridge.com/847/?
scope=checkout&cart=s4014&dp_89858=__PRICE:666:USD,666:
EUR;N&dp_89859=__PRICE:999:USD,999:EUR;N
To do so, they complete the following steps:
- They extract the query part of the string (namely everything after the question mark):
scope=checkout&cart=s4014& dp_89858=__PRICE:666:USD,666:EUR;N&dp_89859=__PRICE:999:USD,999:EUR;N
- They add their Seed for Query Protection to the end of the string:
scope=checkout&cart=s4014& dp_89858=__PRICE:666:USD,666:EUR;N&dp_89859=__PRICE:999:USD,999:EUR;N <protection seed for hashing>
- They calculate the hash using the following formula:
MD5(<URLQueryString><SeedforQueryProtection>)
- They add the MD5 hash to the original URL with the
queryhash
parameter:https://www.cleverbridge.com/847/? scope=checkout&cart=s4014&dp_89858=__PRICE:666:USD,666:EUR;N &dp_89859=__PRICE:999:USD,999:EUR;N& queryhash=aadf15917d308de98594d9d4ec236ece
Note
To find your Seed for Query Protection in the Commerce Assistant, go to Account Setup > General > Additional Details. For more information, see Account Setup ✱.
Customer Data
You can add specific customer information to the checkout process using the following parameters.
Note
Some input fields, such as CompanyTypeId
or Street2
, are optional in the Cleverbridge checkout process. Make sure you only pass customer data for fields that actually are on the checkout page.
When linking to the Cleverbridge checkout process, you can pre-fill the order form with customer data already available in your database or on your web server. That way, your customers do not have to enter the information manually. To pass the customer data, use the following parameter:
&<contact type><input field>=<string>
Parameter | Data Type | Description |
---|---|---|
<contact type> | enum | Your checkout pages can contain fields for different types of contact information. The default contact type is delivery, which means all checkout pages ask the customer to enter contact information for product delivery. In addition, your checkout pages can contain fields for billing and licensing contact information. Therefore, possible values for Example
|
<input field> | string | The form for entering contact information can contain the following input fields:
Example
|
<string> | string | The specification for URLs limits the types of characters allowed. If you submit customer data as parameters in the URL, be aware that most special characters must be submitted in a URL-encoded form. Further information about URL encoding and a content-encoding tool are available at https://www.ietf.org/rfc/rfc1738.txt. Example
|
Example
Open the following link in a browser for a checkout page that uses the customer data below:
Order Form Prefilled with Customer Data
&deliveryCompany=Fondement%20de%20Legerete
&deliverySalutationId=MR_
&deliveryFirstname=Jerome
&deliveryLastname=LeBlanc
&deliveryStreet1=8%20NE%20rue%20Chambiges
&deliveryCity=Paris
&deliveryPostalcode=75008
&deliveryCountryId=FR
&deliveryPhone1=01-11%2011%2011%2011
&deliveryFax=01-22%2022%2022%2022
&deliveryEmail=nobody@cleverbridge.com
&deliveryEmailRetype=nobody@cleverbridge.com
The internal customer parameter allows you to pass your own IDs through the checkout process.
&internalcustomer=<string>
Parameter | Data Type | Description |
---|---|---|
<string> | string | Unique ID for a customer in your database. Example
|
X-Parameters (Additional Information)
You can use self-defined additional parameters, called x-parameters, to mark the origin of orders or to submit your own transaction IDs to cleverbridge, see Set Up X-Parameters. The additional parameter is saved in our checkout process. You will be able to view any order that has additional information in the Cleverbridge platform reports and notifications. The special x-parameter The x-parameter is a variable appended to a URL that allows grouping and tracking orders for later reporting purposes. It also enables you to pass through data that you want to capture in the order process. X-parameters can also be used to control design elements based on the value of the x-parameter. x-at
submits a tracking parameter that will also be visible for your affiliates in the Cleverbridge Affiliate Center.
&x-<name>=<value>
Parameter | Data Type | Description |
---|---|---|
<name> | string | Select a name for the additional parameter. Alphanumeric characters and hyphens are allowed. This value is case sensitive. NoteAll additional parameters must begin with |
<value> | string | Actual value of the additional parameter you want to pass to the Cleverbridge system. |
Example
&x-tracking=ABC&x-userid=12345
This x-parameter will appear on the item level within the Cleverbridge notifications.
&x-cbcitem<runningno>-<name>=<value>
Parameter | Data Type | Description |
---|---|---|
<runningno> | string | Running number that corresponds to the item you are tracking with the x-parameter. |
<name> | string | Select a name for the additional parameter. Alphanumeric characters and hyphens are allowed. This value is case sensitive. |
<value> | string | Actual value of the x-parameter you want to pass to the Cleverbridge system. |
Example
x-cbcitem1-license=as2-89das9-89sa81h
Note
If you use the following notation, the x-parameters will be reported in the lower-level item object of your notifications.
&x-cbcitem<runningno>-<name>=<value>
However, the x-parameters will appear in the notifications as follows:
&x-<name>=<value>
For more information, see PurchaseItem Model.
Note
If you adhere to the following notation, the x-parameters will appear on the item level of your notifications.
&x-cbcitem<runningno>-<name>=<value>
The fact that they appear on the item level could result in data mapping issues if items are removed from a shopping cart (or in case of another change that affects an item running number, such as a deactivation).
To prevent potential data mapping issues, use the following x-parameter notation to track individual items:
&x-item-<productID>-<name>=<value>
In this case, the x-parameters will be reported in the top-level object of your notifications. See Purchase Model.
However, if you use this notation, you yourself will have to do the mapping between the purchase item, the product ID, and the x-parameter.
Fallback URL
A fallback URL is a URL your customers are redirected to if they try to use an expired SURL, open an inactive MVT, or delete all products in their cart. The expired URL is recorded in the following parameters:
&prevUrl=<url>
Parameter | Data Type | Description |
---|---|---|
<url> | string | A URL that a customer tried to call and that was either an expired SURL, an inactive MVT, or an empty cart. This URL is always URL-encoded. |
Example
&prevUrl=https%3a%2f%2fwww.cleverbridge.com%2f864%2f%3fscope%3dcheckout%26cart%3d214aaa
Tip
- You can set up the fallback URL under Setup > Account Setup in the Commerce Assistant.
- If the fallback URL is used, it is recorded in the Entry URL field of the Purchase Viewer.