Manual Server-Side Integration
If you do not use the Google Tag Manager integration, you can integrate sales tracking directly on your server. The manual integration of server-side tracking should always be preferred over client-side integration for reliability reasons.
| The manual integration requires your shop to identify traffic from us and report direct & post-sales. See Identify Traffic From Us and Report Direct and Post-Sales at the bottom of this page. |
How does it work?
When a user clicks on one of your products on moebel.de, meubles.fr, meubelo.nl, moebel24.at, moebel24.ch, mobi24.es, mobi24.it, living24.pl or living24.uk, our server generates a unique ID (moeclid) which is appended as a query parameter to your landing page URL. Your store shall remember this user by creating a first-party cookie with a lifetime of 90 days that stores the ID that is submitted as the value of the request parameter (moeclid). The ID is required for submitting sales information to us later in the process.
| Set the cookie on your server with a lifetime of 90 days, so that you can recognize a returning visitor within that timeframe. |
If the user makes a purchase on your site and has the cookie you created when they came to your shop, a conversion event shall be sent to our server including the ID of the moeclid query parameter and further purchase-related data.
| Please note that we are requesting unattributed sales data from you. As we utilize this data to promote your products through our algorithm, attributing sales to specific customers or sources may negatively impact the scoring of your products, leading to poorer performance. |
Prerequisites
Before you proceed with this integration, make sure the following conditions are met:
-
You have received your Partner ID or dedicated Sales Tracking Key.
-
You have told your account manager whether you report gross values (including tax) or net values, so that we can handle the tax correctly.
Submitting Sales Information
Each of our portals provides a single HTTP endpoint to which sales information should be sent.
The request format is the same for all portals. Use the endpoint and the partner key for your market.
Endpoint URL per Portal
| Portal | Endpoint URL |
|---|---|
moebel.de |
|
meubles.fr |
|
meubelo.nl |
|
moebel24.at |
|
moebel24.ch |
|
mobi24.es |
|
mobi24.it |
|
living24.pl |
|
living24.uk |
|
Endpoint Communication
Communicating with our tracking service using the endpoint URL requires a few parameters to be added to the endpoint call.
Query Parameter
URL-encode the supplied key.
| Parameter | Description | Mandatory | Data type | Example | Comment |
|---|---|---|---|---|---|
key |
your sales tracking key or partner id |
yes |
string |
0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75 |
provided by your account manager |
Body Parameter
| Parameter | Description | Mandatory Field | Data type | Example | Comment |
|---|---|---|---|---|---|
moeclid |
unique clickout id from moebel.de |
yes |
string |
0f81f6c0-bee9-420f-8f1f-e9f7f79f5424 |
|
value |
total basket value, without shipping costs, gross or net as agreed with your account manager |
yes |
string |
1499.97 |
2 digits, "." as decimal delimiter, no thousand delimiters |
shipping |
shipping costs |
yes |
string |
29.99 |
2 digits, "." as decimal delimiter, no thousand delimiters |
type |
sales tracking type (s2s, c2s) |
yes |
string |
s2s |
for this integration it is always s2s (server-to-server) |
items |
array of unique items in order |
yes |
array |
[{ "item_id": "sp47886359", "quantity": 1, "price": 899.99, "item_category": "Möbel" }, { "item_id": "sp31118801", "quantity": 2, "price": 299.99, "item_category": "Couches" }] |
|
- item_id |
your sku ID |
yes |
string |
sp47886359 |
|
- quantity |
product quantity |
yes |
integer |
1 |
integer, no delimiter |
- price |
product price, gross or net like |
yes |
float |
299.99 |
2 digits, "." as decimal delimiter, no thousand delimiters |
- item_category |
your category name of the item |
yes |
string |
Couches |
|
currency |
currency of the amounts |
yes |
string |
EUR |
ISO 4217 code of the currency your amounts are in, e.g. EUR, CHF, PLN or GBP |
order_id |
your identifier for the order |
no |
string |
1172210481407 |
recommended, unique per order, see Order ID |
When a Sale Counts
A sale only counts if all of the following apply:
-
The body carries
moeclid,value,shipping,type,itemsandcurrency. -
moeclidis the value we appended to your landing page URL, unchanged. It identifies a click on one of your products. -
The key is the one you received for the market of the endpoint you call.
-
Your sales tracking is active on our side. Your account manager activates it.
-
valueis greater than zero. -
The order has not already been counted. Send each order once, and send it again only to correct a report that was incomplete or used the wrong key.
CURL Examples
moebel.de
curl -X 'POST' \
'https://redirect.moebel.de/api/1.0/moebel/de/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "EUR",
"order_id": "1172210481407"
}'
meubles.fr
curl -X 'POST' \
'https://redirect.meubles.fr/api/1.0/moebel/fr/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "EUR",
"order_id": "1172210481407"
}'
meubelo.nl
curl -X 'POST' \
'https://redirect.meubelo.nl/api/1.0/moebel/nl/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "EUR",
"order_id": "1172210481407"
}'
moebel24.at
curl -X 'POST' \
'https://redirect.moebel24.at/api/1.0/moebel/at/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "EUR",
"order_id": "1172210481407"
}'
moebel24.ch
curl -X 'POST' \
'https://redirect.moebel24.ch/api/1.0/moebel/ch/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "CHF",
"order_id": "1172210481407"
}'
mobi24.es
curl -X 'POST' \
'https://redirect.mobi24.es/api/1.0/moebel/es/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "EUR",
"order_id": "1172210481407"
}'
mobi24.it
curl -X 'POST' \
'https://redirect.mobi24.it/api/1.0/moebel/it/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "EUR",
"order_id": "1172210481407"
}'
living24.pl
curl -X 'POST' \
'https://redirect.living24.pl/api/1.0/moebel/pl/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "PLN",
"order_id": "1172210481407"
}'
living24.uk
curl -X 'POST' \
'https://redirect.living24.uk/api/1.0/moebel/gb/sales?key=0a7b3e5a-3748-4f2c-9874-9cb05e9a2c75' \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{
"moeclid": "0f81f6c0-bee9-420f-8f1f-e9f7f79f5424",
"value": "1499.97",
"shipping": "29.99",
"type": "s2s",
"items": [
{
"item_id": "sp47886359",
"quantity": 1,
"price": 1499.97,
"item_category": "Couches"
}
],
"currency": "GBP",
"order_id": "1172210481407"
}'
Identify Traffic From Us
| Communicate only sales and turnover based on traffic from one of our portals (moebel.de, meubles.fr, meubelo.nl, moebel24.at, moebel24.ch, mobi24.es, mobi24.it, living24.pl or living24.uk). |
Through an Existing Query Parameter
Each user who comes to your shop from one of our portals will have an additional query parameter called moeclid attached to the URL. You can check for the existence of this query parameter to identify that this user was sent to you by us.
Through Your Own Query Parameter
When submitting your product catalog to us, you have the option to add parameters to the product deep links leading to each product’s detail page. This will enable you to determine if the user accessed the page through one of our portals.
-
Option 1: When submitting your product catalog, add a query parameter to each product url / deep link.
-
Option 2: Where available, configure the parameter in your Partner Portal, which then adds it to each link to your products. Otherwise, contact your account manager.
Your own parameter only identifies the traffic; it does not replace moeclid. Store and report the original moeclid in any case.
Report Direct and Post-Sales
We require that any purchase made within 90 days by a visitor who was referred to your store through one of our portals be reported to us using sales tracking.
By identifying traffic originating from one of our portals, you can create a cookie for those visitors that is valid for 90 days. During the checkout process of your store, you can check for the presence of the cookie and report the sales data accordingly. This allows you to track sales generated by visitors we referred to your store within the past 90 days.
| If you have a mobile version of your store that is optimized for smartphones, it is important to ensure that it behaves in the same way as the desktop version. |