Rakuten - Conversions

📘

This integration is currently in beta. Contact your MetaRouter support team to get started.

What Is Rakuten?

Rakuten Advertising is a global digital marketing company that specializes in performance-based marketing solutions. It connects advertisers with publishers to drive targeted traffic and conversions through affiliate marketing, display advertising, and search marketing. The platform offers a comprehensive suite of tools for tracking, analyzing, and optimizing marketing campaigns, enabling businesses to reach their target audiences more effectively. By leveraging its extensive network and advanced technology, Rakuten Advertising helps brands increase their online presence and maximize their return on investment.


Product Type: Affiliate
Integration Type: Starter Kit & Sync
Event Source Type: Web and Mobile Browser
Event Scope: Conversion


Capabilities

  • Enables affiliate conversion tracking for Rakuten publishers
  • Supports discount handling via SKU representation
  • Captures and passes Rakuten-specific identifiers (ranSiteID)
  • Allows tracking of canceled orders with inverted values
  • Provides optional enrichment fields for site name, product details, and customer info

Considerations

  • Discounts should be reported as a SKU (“Discount”) per Rakuten’s specifications.
  • Fields must follow Rakuten’s importance order: mid, ord, tr, land, date, cur, skulist, amtlist, qlist, coupon, disamt, custid.
  • Customers with multiple websites should include the sitename field without query parameters.
  • shipcountry must follow the ISO 3-character country code format.
  • amtlist should be multiplied by 100 for most currencies, but not for Japanese Yen.
  • Large payloads may impact performance. Remove namelist if product payloads are too rich.
  • Rakuten sync must be used to capture ranSiteID and generate land timestamp.
  • Rakuten accepts order_canceled events with negative product prices and positive discounts.
  • Lua-based transformations are used heavily, which may increase CPU utilization.
  • In our testing, requests above ~20,000 characters in the URL began to fail. While this isn’t a formally documented limit, it may be a practical constraint to consider when using this integration.
  • All values must be URL-encoded and arrays pipe-delimited.
  • Complex lists (e.g., products) must be pipe-delimited.

Limitations

  • Creative widgets and display ad tracking are not supported.
  • GET method constraints mean payload size is limited, and structured/nested data cannot be sent.
  • No batching support; each event requires its own request.

Identity Sync

  • Sync Available: Yes
  • Required for Starter Kit: Yes
  • Prerequisites: Requires Rakuten affiliate links with ranSiteID
  • Documentation: See Additional Rakuten Sync Documentation here.

Sync Details

  • Captures the ranSiteID from Rakuten affiliate links.
  • Stores a timestamp (land) when the user first arrives.
  • Enriches all server-side events with these identifiers.
  • Required for linking conversions back to Rakuten publishers.

Starter Kit Setup Guide

1. Deploy the Rakuten Sync

  • To collect Rakuten identifiers, you must implement the Rakuten ID sync. Refer to the Rakuten Sync Guide.

2. Gather Credentials

  • Ask Rakuten representatives for the following credential:
    • Merchant ID (MERCHANT_ID)

3. Add a Rakuten - Conversions Integration

  • From the integration library, add a Rakuten - Conversions integration. Then, fill out the Connection Parameters:
Connection ParameterDescription
MERCHANT_IDNumeric ID provided by Rakuten to identify your account.

4. Configure Event Mapping

  • MetaRouter provides all of the event mappings that Rakuten integrations typically require. You may add custom events, parameters, or mappings in accordance with Rakuten’s API documentation.

5. Deploy to Pipeline

  • In the Pipelines tab, add your Rakuten - Conversions integration.
  • Select the correct integration revision.
  • Click Add Integration to finalize deployment.

Event Mappings

Global

Output KeyDescriptionExpected Input
mid RequiredString: Merchant ID provided by Rakuten$$MERCHANT_ID$$
tr RequiredString: Rakuten ranSiteID valuecontext.providers.rakuten.ranSiteID
land RequiredString: Timestamp of landing (yyyymmdd_hhmm GMT)context.providers.rakuten.landTimestamp
custidString: Anonymous user IDanonymousId
didString: Mobile device advertising IDcontext.device.advertisingId
date RequiredString: Event timestamp (yyyymmdd_hhmm GMT)Expression – format from input.timestamp
shipcountryString: Shipping country (ISO Alpha-3)traits.address.country
sitenameString: Page URL without queryExpression – strip query from context.page.url

Event Specific

Order Completed

Output KeyDescriptionExpected Input
ord RequiredString: Order IDproperties.order_id
amtlist RequiredArray: Product amounts in cents (×100, except JPY)Expression – build from properties.products
skulist RequiredArray: Product SKUs, plus “Discount” if presentExpression – build from properties.products
qlist RequiredArray: Quantities, with 0 for discountsExpression – build from properties.products
cur RequiredString: 3-char currency code (uppercase)properties.currency
altordString: Alternate order IDproperties.checkout_id
namelistArray: Product names, plus “Discount” if presentExpression – build from properties.products
brandlistArray: Product brands (if available)Expression – build from properties.products
catlistArray: Product categories (if available)Expression – build from properties.products
couponString: Order-level coupon codeproperties.coupon
couponlistArray: Product-level coupons (if available)Expression – build from properties.products
disamtInteger: Discount amount in centsproperties.discount

Order Canceled

Output KeyDescriptionExpected Input
ord RequiredString: Order IDproperties.order_id
amtlist RequiredArray: Negative product amounts, positive discountExpression – build from properties.products
skulist RequiredArray: Product SKUs, plus “Discount” if presentExpression – build from properties.products
qlist RequiredArray: Quantities, with 0 for discountsExpression – build from properties.products
cur RequiredString: 3-char currency code (uppercase)properties.currency
altordString: Alternate order IDproperties.checkout_id
namelistArray: Product names, plus “Discount” if presentExpression – build from properties.products
brandlistArray: Product brands (if available)Expression – build from properties.products
catlistArray: Product categories (if available)Expression – build from properties.products
couponString: Order-level coupon codeproperties.coupon
couponlistArray: Product-level coupons (if available)Expression – build from properties.products
disamtInteger: Discount amountproperties.discount

Required & Recommended Identifiers

These identifiers must be mapped to Rakuten in order for successful user matching to occur. Without these IDs, any events sent to Rakuten may not be accurately reflected in reporting.

AttributeExampleSync Injector Required?
ranSiteID Requiredabc-123Yes
landTimestampRequired20250627_1025Yes
anonymousIdRecommendeda1b2c3d4No

Integration Validation

Please reach out to your Rakuten representative to validate incoming data.