HomeGuidesChangelog
Log In
Guides

Order confirmation page

Definition

The order confirmation page is the page where the user is taken right after completing a purchase.


Parameters

event-type

Value: trackTransaction

Description: Indicates to the API that this is an order confirmation event.

Required: Yes


page-id

Description: An identifier that tells Criteo which placements (if any) to return for the ad request. Placements are instantiated by your Technical Account Manager depending on your desired ad configuration. Below are the standard page-ids for this page type:

  • In Americas: Typically follows the structure [event-type]_API_[environment], e.g., trackTransaction_API_desktop, trackTransaction_API_mobile, trackTransaction_API_iOS, trackTransaction_API_android.
  • In EMEA: Typically follows the structure [event-type]Api[environment], e.g., trackTransactionApiDesktop, trackTransactionApiMobile, trackTransactionApiAios, trackTransactionApiAa.

Required: Yes


item

Description: The list of SKUs ordered. Must match the parameter ID in the feed. Multiple items should be separated by a pipe | or %7C (URL encoded). Include all items in the order, regardless of whether they are sponsored or not.

Examples:

  • 123|456|789
  • 123%7C456%7C789

Required: Yes


price

Description: The list of prices in the same order as the items. Prices should be separated by a pipe | or %7C (URL encoded). These need to be the unitary prices (price of an individual item). Criteo will multiply these prices by the quantity parameter to compute the total order value.

Examples:

  • 29.99|15.49|9.99
  • 29.99%7C15.49%7C9.99

Required: Yes


quantity

Description: The pipe-separated quantities of each SKU within the user’s order.

Examples:

  • 4|1|2
  • 4%7C1%7C2

Required: Yes


transaction-id

Description: The unique order ID of the purchase.

Example: 1841xva0ha8

Required: Yes


currency

Description: Currency code of the transaction. Only needed if the purchase can be done in different currencies; otherwise, it will fall back to the retailer's standard currency. Should be a valid ISO 4217 3-letter currency code.

Examples::

  • USD
  • EUR

Required: Mandatory only if multiple currencies are allowed


Sample calls

📘

The header values in the sample calls are illustrative. Make sure to replace them with the appropriate values for your implementation.


AMER

curl -X GET "https://d.us.criteo.com/delivery/retailmedia" \
--data-urlencode "criteo-partner-id=12345" \
--data-urlencode "environment=d" \
--data-urlencode "retailer-visitor-id=a1b2c3d4e5" \
--data-urlencode "customer-id=123456789" \
--data-urlencode "page-id=trackTransaction_API_desktop" \
--data-urlencode "event-type=trackTransaction" \
--data-urlencode "transaction-id=1841xva0ha8" \
--data-urlencode "item=123|456|789" \
--data-urlencode "price=29.99|15.49|9.99" \
--data-urlencode "quantity=4|1|2" \
--data-urlencode "currency=USD" \
-H "Referer: https://www.criteo.com" \
-H "X-Forwarded-For: 123.456.789.012" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"

EMEA

curl -X GET "https://d.eu.criteo.com/delivery/retailmedia" \
--data-urlencode "criteo-partner-id=12345" \
--data-urlencode "environment=d" \
--data-urlencode "retailer-visitor-id=a1b2c3d4e5" \
--data-urlencode "customer-id=123456789" \
--data-urlencode "page-id=trackTransactionApiAios" \
--data-urlencode "event-type=trackTransaction" \
--data-urlencode "transaction-id=1841xva0ha8" \
--data-urlencode "item=123|456|789" \
--data-urlencode "price=29.99|15.49|9.99" \
--data-urlencode "quantity=4|1|2" \
--data-urlencode "currency=EUR" \
-H "Referer: https://www.criteo.com" \
-H "X-Forwarded-For: 123.456.789.012" \
-H "User-Agent: app_ios 1.2.3"

Order cancellations/modifications

To ensure accurate tracking, trackTransaction calls must be re-fired under the following scenarios:

Cancellations

  • When an order is canceled, initiate a new trackTransaction call using the same transaction-id as the original order.
  • The API call should include all products from the original order, keeping the original prices but setting the quantity to 0.

Modifications

  • When a user modifies their order (e.g., changes the quantity or adds/removes products), a new trackTransaction call must be triggered with the same transaction-id as the original order.
  • The following product details must be managed within the new call:
    • Unchanged products: Include these products in the new API call with their original quantity and price.
    • Modified products: Include these products with updated quantities and/or prices.
    • New products: Add these products to the API call with their respective prices/quantities.
    • Deleted products: Include these products in the new API call with their quantities set to 0