> For the complete documentation index, see [llms.txt](https://help.citrusad.com/retail-media-interface/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.citrusad.com/retail-media-interface/integration/data-api/api-overview/integration-workflow-options-1.md).

# Ad Integration Workflow Options for Retailers

Epsilon's Retail Media standard integration ensures your website delivers a seamless user experience by quickly presenting relevant ads to customers. As a retailer, you simply need to synchronize your product catalog and customer data with Epsilon's Retail Media. It's important to note that Epsilon Retail Media is integrated via the retailer’s backend. The integration ensures that relevant ads are displayed on your website, enhancing the user's shopping experience by merging ad listings with organic content. Here are some of the major advantages:

1. **Enhanced User Experience**: Ads are integrated seamlessly with organic content, providing a smooth browsing experience.
2. **Relevance**: Ads are contextually relevant, increasing user engagement.
3. **Efficiency**: Quick delivery of ad content improves page load times.
4. **Reporting**: Gain detailed insights into ad impressions, clicks, and orders.

## Standard Integration

The standard integration workflow involves the following steps:

1. Synchronize data
2. Serve Ads
3. Report actions

{% hint style="info" %}
Customers do not see listings until they are merged into a final list. This ensures they get complete and accurate information.
{% endhint %}

<figure><img src="/files/1K3uMH9NCa9vmUVGfhZp" alt="" width="100%"><figcaption></figcaption></figure>

### Workflow

Here is the series of events:

#### Before Ads are Served

**Synchronize Product Data**: Sync your product catalog with Epsilon Retail Media using the [API](https://developers.citrusad.com/integration/docs/use-apis) or a daily [file sync](https://developers.citrusad.com/integration/docs/use-apis). Optionally synchronize your customer data with Epsilon Retail Media using the API or a daily file sync.

#### When Ads are Served

1. **Customer Visits Your Website**: A customer opens your website and navigates to a specific page where Epsilon’s Retail Media is integrated.
2. **Website Requests Data**: Your website requests data from your backend server based on the page context (for example, `customerId`, `sessionId`, `dtmCookieID`, `productFilters`).
3. **Backend Requests Ads from Epsilon Retail Media**: Your backend server calls the Epsilon Retail Media API, requesting ads relevant to the customer's page context.
4. **Epsilon Retail Media Returns Relevant Ads**: Epsilon Retail Media returns the most relevant ads for the request, including product codes and URLs for banner ads.
5. **Merge Ads with Organic Content**: Your backend server merges the ad response from Epsilon Retail Media with your website's organic content.
6. **Serve All Content to Customer**: Your server sends the combined ads and organic content to the customer's browser in one response.

#### After Ads are Served

1. **Report Impressions**: When the customer views an ad, an impression is reported to Epsilon Retail Media for the individual adId.
2. **Report Clicks**: When the customer clicks on an ad, a click is reported to Epsilon Retail Media for the individual `adId`.
3. **Report Orders**: When the customer completes a purchase, the order details (items, prices, quantities) along with `customerId`, `sessionId`, `dtmCookieId` are reported to Epsilon Retail Media.

## Flexible Integration Options

Epsilon Retail Media also offers two additional integration methods tailored to meet different retailer needs and preferences. Each method has its unique advantages and trade-offs, allowing retailers to choose the most suitable approach based on their specific requirements and technical capabilities.

### Approach 1: Individual Browser Requests

This approach involves separate backend calls for organic products and ads, reducing backend modifications and ensuring users always see the most up-to-date listings. Here are some of the benefits to the retailers of using this approach:

* **Reduced Development Time**: Easier to implement with minimal backend changes, saving development time and resources.
* **Up-to-Date Listings**: Ensures that the most current ad content is displayed, potentially increasing ad relevance and user engagement.

#### Workflow

Here is the series of events:

<figure><img src="/files/RDWlLOHE55aijvM35NOQ" alt="" width="100%"><figcaption></figcaption></figure>

#### When Ads are Served

In the case of browser requests, ad serving differs from the standard integration in the following way:

**Request Handling**

* The product listings are hidden from the user until the organic listings are merged with the Epsilon Retail Media listings.
* Instead of having your existing backend service directly request data from Epsilon Retail Media, you now use a new retailer service.
* The retailer service makes the backend call to Epsilon Retail Media with the relevant placement information.
* Even though you contact your backend server and Epsilon Retail Media separately before merging, you still need to gather all the necessary product details for the product codes provided in the Epsilon Retail Media response.

**Merging and Serving Content**

* The browser merges the organic listings and the Epsilon Retail Media listings.
* After merging, the browser serves the combined content to the customer.

### Approach 2: Merging After Displaying to the Customer

This approach shows organic content first and merges ads afterward, requiring minimal backend changes and ensuring that users receive uninterrupted access to organic listings.

#### Workflow

In this approach, you follow a similar workflow as before; however, you serve the organic product results to the customer as soon as they are available. After the organic results are shown, you merge and reorder the results once you receive the content from Epsilon Retail Media. This integration method is likely to take the least time to implement, as it requires minimal development resources.

<figure><img src="/files/mCDGH2yIpwRaF2jaDQvm" alt="" width="100%"><figcaption></figcaption></figure>

#### When Ads are Served

Organic listings are shown initially, and the Epsilon Retail Media response is merged in once the browser receives it. Occasionally, organic listings are shown to the user before merging and reordering the product ads. When Epsilon Retail Media provides you with a list of product codes, you are still required to fetch all relevant detailed information for each of those products.

## Comparison of Integration Methods

Here is a quick comparison of all different integration methods that you can use:

|                           | Standard Integration                                           | Individual Browser Requests                           | Merging After Displaying to the Customer                          |
| ------------------------- | -------------------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------------------- |
| **Workflow**              | Single request to backend, merge before displaying             | Separate requests for organic products and ads        | Organic content shown first, ads merged afterward                 |
| **Backend Modifications** | Existing backend service handles Epsilon Retail Media requests | New backend service for Epsilon Retail Media requests | Minimal changes to existing backend services                      |
| **Development Effort**    | Moderate                                                       | Lower                                                 | Lowest                                                            |
| **Ad Merging**            | Backend merges ads with organic content                        | Browser merges ads with organic content               | Browser merges ads with organic content                           |
| **Ad Display**            | Ads displayed with organic content                             | Ads displayed with organic content                    | Ads displayed with organic content                                |
| **Advantages**            | - Seamless integration - Unified backend processing            | - Less backend modification - Separate ad logic       | - Quick integration - Minimal backend changes                     |
| **Disadvantages**         | - Moderate development effort - Unified ad logic               | - Additional backend service - Separate ad logic      | - Potential delay in ad display - Ads merge after organic content |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.citrusad.com/retail-media-interface/integration/data-api/api-overview/integration-workflow-options-1.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
