To integrate with our system, you need to implement our scripts in your shop. They are used to correctly register transactions and charge commissions to relevant partners.
Transaction registration concern only transactions executed from the redirection of the 100shoppers plugin.
1. Data Loader script
This script should be placed in the header of each webpage of the shop. It is responsible for recognizing the parameters transmitted as part of the widget redirection and for setting a cookie that later allows for linking the transaction with the service from which the user was redirected.
Script for foreign markets
<script type="text/javascript">
"use strict";(function(scriptUrl,campaignId){if(!window.bb){window.bb=function(){
for(var _len=arguments.length,params=Array(_len),_key=0;_key<_len;_key++){
params[_key]=arguments[_key]}return window.bb.q.push(params)};window.bb.q=[]
;window.bb.campaignId=campaignId;var script=document.createElement("script")
;var firstScript=document.getElementsByTagName("script")[0];script.async=true
;script.src=scriptUrl;firstScript.parentNode.insertBefore(script,firstScript)}
})("https://shop-{sufix-country}.100shoppers.com/js/bb-shop.min.js", {your-shop-ID},1);
</script>
Script for Polish markets
<script type="text/javascript">
"use strict";(function(scriptUrl,campaignId){if(!window.bb){window.bb=function(){
for(var _len=arguments.length,params=Array(_len),_key=0;_key<_len;_key++){
params[_key]=arguments[_key]}return window.bb.q.push(params)};window.bb.q=[]
;window.bb.campaignId=campaignId;var script=document.createElement("script")
;var firstScript=document.getElementsByTagName("script")[0];script.async=true
;script.src=scriptUrl;firstScript.parentNode.insertBefore(script,firstScript)}
})("https://shop-js.buybox.click/js/bb-shop.min.js", {your-shop-ID},1);
</script>
Cookies
After placing it on the shop’s website and switching from 100Shoppers.com to the shop, among the cookies in the browser, there should appear the ones with the name:
- bbuuid, bb_session_track i bb_track.
Parameters:
- {your-shop-ID} it is a unique shop identifier that you receive from 100SHOPPERS manager
- {sufix-country} it is your country sufix, eg. de, lt, fr.
2. Product display reporting script
This is a script that reports to us the display of a specific product webpage. The script should be placed on every product webpage.
<script type="text/javascript">
bb("productView", { "productId": "{your-product-id}" })
</script>
Parameters:
- {your-product-ID} is the product identifier that matches the offer ID passed to us in the XML file.
3. Order / transaction reporting script
This is the script notifying us about the order / transaction, along with the information about the products ordered and the settlement details (commissions). It should be placed on the order confirmation page (the last page of the purchasing process).
<script type="text/javascript">
bb("order", { "orderId": "{your-order-id}", "products": [
{ "productId": "{your-product-id}", "quantity": {item-quantity}, "commissionId": {your-commission-id}, "gross": {item-gross-price}},
...
{ "productId": "{your-product-id}", "quantity": {item-quantity}, "commissionId": {your-commission-id}, "gross": {item-gross-price}}
]});
</script>
Parameters:
- {your-order-ID} is the order / transaction ID in the shop
- {your-product-ID} is the product ID that matches the offer ID passed to us in the XML file
- {item-quantity} is the amount of products ordered
- {item-gross-price} is the gross price at which the given product was ordered
- {your-commission-id} is the identifier of the commission to be charged on the sale of a given product; commission identifiers are generated in the panel.
Your commission Id will be sent to you by our representative. The commission is “0” for stores displayed on a manufacturers’ websites.
Important!
- All scripts must work on webpages within the same domain.
- The script can be safely added to any transaction – before registering an order, the script checks if the user came from our widget (checks if the right cookies are set).
- We use a method of asynchronous JavaScript loading that does not in any way affect the loading length of your page.
Note! In the case of settlements according to net amounts, the appropriate flag should set in the shop settings the panel, and in the order an additional parameter ‘net’ should be added, for example:
<script type="text/javascript">
bb("order", { "orderId": "{your-order-id}", "products": [
{ "productId": "{your-product-id}", "quantity": {item-quantity}, "commissionId": {your-commission-id}, "gross": {item-gross-price}, "net": {item-net-price}},
...
{ "productId": "{your-product-id}", "quantity": {item-quantity}, "commissionId": {your-commission-id}, "gross": {item-gross-price}, "net": {item-net-price}}
]});
</script>
Cookie files used
- bb_session_track is a cookie used to identify a particular user in a single session from the transition from our widget to the end of a visit to the shop (lifetime – current session)
- bb_track is a cookie used to identify a user moving throughout our network (lifetime – as long as possible, by default- one year)
- bbuuid is a cookie used to identify the last redirection from the widget to the shop; it is used to record transactions and correctly calculate commissions to the appropriate partner (lifetime – as agreed).
Cookie policy adjustment
All you have to do is add us to the section of trusted partners (where as a store you inform to whom the data is transferred).
Other options:
- API integration
- PrestaShop modul
- Shoper plugin
- Google Tag Manager