Flipkart Commerce Cloud Ads Manager
Product Documentation v1.0 Built By Retailers, For Retailers
Confidential — For Publisher and Partner Use Only © 2026 Flipkart Commerce Cloud
About This Document
This document is the complete product reference for Flipkart Commerce Cloud (FCC) Ads Manager. It covers platform architecture, ad products, campaign management, measurement, and technical integration guidance for publishers, advertisers, and engineering teams.
Audience: Network publishers, advertiser account managers, and integration engineers.
Prerequisites: Familiarity with digital advertising concepts (impressions, clicks, CPM, CPC) is recommended but not required.
Table of Contents
- Introduction
- Platform Architecture and Key Concepts
- Account Structure and User Roles
- Display Ads
- Sponsored Product Ads
- Product Contextual Ads
- Audience Manager
- Keyword Targeting Suite
- Wallet and Payments
- Catalog Ingestion
- Attribution
- Reporting and Analytics
- Forecasting
- API Reference Overview
- Tracking Events
- Onboarding Checklist
1. Introduction
Overview
Flipkart Commerce Cloud (FCC) is a retail media advertising technology platform purpose-built for e-commerce publishers. Originally developed as Flipkart's internal ad stack — powering one of India's largest ad revenue ecosystems — FCC has been externalized as a SaaS product available to retailers, marketplaces, and commerce platforms globally.
FCC is a non-programmatic, closed-loop retail media platform. Unlike programmatic ad networks (DSPs and SSPs), FCC gives publishers full control over demand and supply, ensuring ad experiences that integrate seamlessly with organic commerce results and maximize both advertiser ROI and publisher revenue.
Who This Platform Is For
| Persona | Description |
|---|---|
| Network Publishers | Retailers and marketplaces wanting to monetize owned digital real estate through a fully managed ad platform |
| Brand Advertisers | Brands seeking awareness and conversion among high-intent shoppers |
| Sellers | Individual vendors wanting to boost product visibility in search and browse results |
| Integration Engineers | Technical teams integrating FCC APIs into publisher apps, websites, and data pipelines |
Why Retail Media
Users on e-commerce platforms are high-intent buyers — significantly more likely to convert than users on social or search platforms. This makes retail media inventory uniquely valuable:
- Higher ROAS. Ad spend converts more efficiently when shown at the point of purchase intent.
- Closed-loop measurement. The entire customer journey from impression to order lives on one platform.
- First-party data advantage. Publishers own rich behavioral and transactional signals for precise targeting.
- Native ad experience. Ads blend with organic results, improving engagement without disrupting the user journey.
Ad Products at a Glance
| Product | Type | Funnel Stage | Pricing Models | Best For |
|---|---|---|---|---|
| Display Ads | Banner / Rich Media | Awareness | CPM, vCPM, CPT, BPVS | Brand visibility, new product launches |
| Sponsored Product Ads (SPA) | Performance / Listing | Conversion | CPC | Sales uplift, product discovery |
| Product Contextual Ads (PCA) | Hybrid Rich Media | Consideration | CPC | Category engagement, product collection promotion |
2. Platform Architecture and Key Concepts
Overview
FCC operates on a server-to-server (S2S) integration model. The publisher's app or website calls FCC's ad serving API in real time for every page load, and FCC returns the most relevant, highest-value ad to fill each slot.
Note: FCC does not use client-side JavaScript tags or ad pixels for serving. All serving is handled through server-to-server API calls, giving publishers maximum control over ad rendering and user experience.
Supply Side: Real Estate Structure
Supply refers to the ad inventory — the physical locations where ads appear on a publisher's digital properties. FCC organizes supply in the following hierarchy:
Network
└── Publisher Group
└── Publisher
└── Page
└── Slot
| Level | Description |
|---|---|
| Network | Top-level entity. Defines currency, timezone, country, and global configurations. All networks are fully isolated from each other. |
| Publisher Group | Logical grouping of publishers. Used for reporting segregation, access control, and shared user IDs across properties. |
| Publisher | A distinct digital property (for example, walmart.ca). Has its own catalog, rate card, and KVP configuration. |
| Page | A page type on the publisher site (for example, Homepage, Search, Category, PDP). |
| Slot | A specific ad placement on a page (for example, Top Banner, Fold-2 Banner, Carousel Slot 1). |
Demand Side: Campaign Structure
Demand refers to ad campaigns created by advertisers. FCC organizes demand in the following hierarchy:
Network Account
└── Business Account
└── Ad Account
└── Campaign
└── Ad Group
└── Creative / Banner
| Level | Description |
|---|---|
| Network Account | The publisher's top-level admin account. |
| Business Account | Umbrella entity for an advertiser organization (for example, HUL or P&G). |
| Ad Account | Sub-account per brand or seller. Has its own wallet, users, and campaigns. |
| Campaign | Defines objective, budget, duration, and publisher. Contains one or more ad groups. |
| Ad Group | Defines targeting, placement, bidding, pacing, and creatives or products. |
| Creative / Banner | The actual ad unit served to the user. |
Ad Serving Flow
The following steps describe how an ad is served for every page load:
- User loads a page on the publisher's app or website.
- Publisher's backend sends a GetBids API request to FCC, including slot IDs, user ID, device info, query (for search pages), and KVP signals.
- FCC retrieves candidate ads from the Solr index.
- FCC applies relevance scoring and ranking.
- FCC returns the top-ranked ad response with tracking URLs.
- Publisher renders the creative in the appropriate slot.
- Publisher fires impression, view, and click tracking events as user interactions occur.
3. Account Structure and User Roles
User Roles
| Role | Access Level | Key Capabilities |
|---|---|---|
| Network Admin | Full network | User management, network configuration, PO approval, free credits, campaign management on behalf of advertisers |
| Business Account Admin | Business account and all child ad accounts | Campaign creation and editing, reporting, user management across all ad accounts in the business |
| Business Account Analyst | Business account and all child ad accounts (read-only) | View campaigns and reporting across all ad accounts |
| Ad Account Admin | Single ad account | Campaign creation and editing, reporting, user management within their ad account |
| Ad Account Analyst | Single ad account (read-only) | View campaigns and reporting |
| FCC Ops | Extended support | Permissions granted by Network Admin on a request basis |
Ad Account Types
| Type | Who Uses It | Key Difference |
|---|---|---|
| Brand Account | Brand advertisers (for example, Nike, P&G) | Requires brand selection per publisher. Can run Display Ads and SPA. Supports preferred seller targeting. |
| Seller Account | Individual sellers or vendors | Requires Seller ID per publisher. Can run SPA only. One Seller ID per publisher per ad account. |
Network-Level Configuration
Network Admins configure the following parameters, which apply to all advertisers within the network:
| Configuration | Description |
|---|---|
| CPC Range | Minimum and maximum CPC per publisher, defined in publisher currency with daily conversion to advertiser currency |
| Minimum Budget | Minimum campaign and ad group budget per publisher |
| Blacklist Queries | Search queries on which no ads are shown. Uses exact match, case-insensitive logic. Maximum 2,000 queries per publisher. |
| Free Credits | Promotional credits assigned to specific ad accounts with mandatory expiry dates |
| Monthly PO Limit | Maximum PO upload amount per ad account per calendar month |
4. Display Ads
Overview
Display Ads are rich media banner campaigns designed for brand awareness and audience engagement. They appear across high-traffic pages — homepage, category pages, search pages, and product pages — and are priced on impression or view-based models.
Image placeholder: Display Ad format examples — homepage carousel, category banner, search page banner.
Supported Pricing Models
| Model | Full Name | Description | Best For |
|---|---|---|---|
| CPM | Cost Per Mille | Charged per 1,000 impressions (ad loaded on page) | Maximum reach campaigns |
| vCPM | Viewable CPM | Charged per 1,000 views (at least 50% visible for at least 1 second, IAB standard) | Viewability-guaranteed campaigns |
| CPT | Cost Per Time | Reserved slot for a fixed time period — no other ad serves in that slot for any user | High-impact takeovers, launch events |
| BPVS | Budget Per View Share | Proportional view share model | Balanced delivery across multiple advertisers |
Note: When multiple ads compete for the same slot, FCC ranks them in the following priority order: CPT > BPVS > BPVSi > vCPM > CPM. Within each pricing model, the highest bid wins.
Campaign Creation
Display Ad campaigns are created through the following steps:
- Campaign details. Enter campaign name, select ad format, choose publisher, set campaign budget, and define campaign duration.
- Ad group details. Select slot (page, placement, and device), configure targeting, set ad group budget, define bid, and select pacing type.
- Creative upload. Upload banner images or configure rich media templates. All creatives require Network Admin approval before serving.
- Review and submit. Campaign moves to Scheduled or Live state depending on the start date.
Targeting Options
| Targeting Type | Description |
|---|---|
| Key-Value Pairs (KVP) | Target users based on publisher-defined attributes passed in the GetBids request, such as gender, age group, location, and device type |
| Audience Segments | Target or exclude users belonging to segments defined in the Audience Manager |
| Device | Target by device type: Android, iOS, Msite, Website, or Tablet |
| Keyword | Target display ads against specific search keywords (exact match) |
| Geo | IP-based country and state targeting, plus region-code based city targeting |
| Frequency Cap | Limit ad exposure per user within a defined time period (hours, days, weeks, or months) |
| Custom Scheduling | Define specific days and time windows for ad delivery |
Note: KVP targeting uses AND logic between different keys and OR logic between values within the same key. Campaigns with no KVP targeting are eligible for all users (open targeted).
Budget Pacing
| Pacing Type | Behavior |
|---|---|
| Fast Burn | Deliver impressions as quickly as possible. Available at daily or hourly level. |
| Even Pacing | Distribute budget evenly across campaign duration. Daily cap auto-adjusts based on remaining budget and remaining days. Requires a campaign end date. |
Creative Approval Workflow
All Display Ad creatives go through the following approval process before serving:
- Advertiser uploads creative.
- Creative status changes to Pending Approval.
- Network Admin reviews creative for compliance.
- Network Admin approves or rejects the creative.
- Approved creatives are ingested and begin serving (approximately 5–10 minutes).
Important: Creative approval typically takes up to 10 minutes for status to change. Dashboard data may take up to 1 hour to reflect after a campaign goes live. For time-sensitive campaigns, submit creatives well in advance.
5. Sponsored Product Ads
Overview
Sponsored Product Ads (SPA) — also referred to as Product Listing Ads (PLA) — are performance-based ads that blend with organic product listings on search, browse, and other commerce pages. They are designed to drive direct sales by connecting high-intent shoppers with the most relevant sponsored products.
Image placeholder: SPA in search results — sponsored product cards blended with organic listings.
How SPA Works
When a user searches for a product, the SPA serving engine performs the following steps:
- Receives the user's search query via the GetBids API.
- Finds relevant products from the advertiser's catalog using text-based relevance (Solr inverted index).
- Applies keyword targeting filters if configured.
- Ranks eligible products using the following formula:
Ranking Score = α × CPC + β × Relevance Score - Returns the top-ranked sponsored products with tracking URLs.
Supported Placements
| Placement | Description |
|---|---|
| Search Page | Sponsored products in search results (TOP_OF_SEARCH, REST_OF_SEARCH) |
| Browse / Category Page | Sponsored products on category listing pages |
| Product Detail Page (PDP) | Similar sponsored products shown as recommendations on product pages |
| Homepage | Sponsored product widgets on the homepage |
Campaign Setup
| Setting | Options and Details |
|---|---|
| Pricing Model | CPC only — pay per click |
| Product Selection | Manual selection, bulk CSV upload (Product ID or SKU ID, maximum 2,000 per file), or rule-based (future release) |
| Keyword Targeting | Optional. Supports exact match, phrase match, and broad match. Up to 50 keywords per match type per ad group. |
| Negative Keywords | Up to 50 negative exact match keywords per ad group |
| Bid | Set at ad group level. Keyword-level bidding is available in a future release. |
| Seller Selection | Brand accounts can restrict ads to preferred sellers only |
Keyword Match Types
| Match Type | Definition | Example Keyword | Matches | Does Not Match |
|---|---|---|---|---|
| Exact | Query must match keyword exactly, including close variants (plurals, misspellings, filler words) | "shoes for men" | "shoes men", "shoe for men" | "men's running shoes" |
| Phrase | Query must contain all keyword tokens in any order, including synonyms and close variants | "blue jeans" | "buy blue jeans", "jeans blue", "denim trousers" | "blue pants" |
| Broad | Widest reach — matches synonyms, related variations, and any word order | "running shoes" | "jogging sneakers", "athletic footwear" | "dress shoes" |
| Negative Exact | Prevents serving when query matches the negative keyword. Takes priority over all positive matches. | "cheap" | Blocks: "cheap running shoes" | N/A |
Important: Negative match takes priority over positive match. If the same keyword appears in both positive and negative lists, it is treated as negative.
Fill Rate Protection
FCC's SPA serving uses a soft intersection approach rather than hard filtering. Products from keyword-matched ad groups receive a 1.2× relevance score boost, but non-keyword-targeted relevant products also remain eligible to serve. This approach protects fill rate for clients with smaller demand pools.
6. Product Contextual Ads
Overview
Product Contextual Ads (PCA) is FCC's hybrid ad format that bridges the gap between Display Ads (awareness) and SPA (conversion). A PCA creative consists of two components: a banner section for brand messaging and a product cards section for direct product promotion.
PCA Creative Structure
| Component | Function | Click Destination |
|---|---|---|
| Banner Section | Brand logo, headline, CTA, background image | Product collection page or custom URL |
| Product Cards Section | Selected product images, names, and prices | Individual product detail pages |
Relevance and Ranking
PCA serving uses a two-stage scoring process:
- L1 Score (Relevance). Combines Category Match Score, Brand Score, Product Score, and Position Score based on the user's search intent or browse context.
- L2 Score (Ranking). Combines the L1 relevance score with normalized CPC to determine the final winning creative.
Supported Placements
The following placements are supported in the current release:
- Search page
- Browse / category page
Additional placements — homepage, category landing pages, and product detail pages — are planned for future releases.
Campaign Setup
| Setting | Details |
|---|---|
| Pricing Model | CPC (current release). CPM and vCPM planned for future releases. |
| Product Collection | Manual selection or bulk upload. Advertiser selects top product cards to display. Rule-based selection planned for future release. |
| Landing Page | Custom URL (current release). Dynamic product collection page planned for future release. |
| Creative Template | Network-configured templates only. Advertisers can only select from templates enabled by the network. |
| Attribution | Banner-level attribution (not individual product card level). Last-touch model with click priority over view. |
Important: All PCA creatives require Network Admin approval before serving. Last-mile checks confirm that product cards are in-stock and active before the creative is returned in the ad response.
7. Audience Manager
Overview
The Audience Manager enables publishers and advertisers to create targeted user segments based on behavioral, demographic, and transactional data. Segments can be used for inclusion or exclusion targeting in any ad campaign.
Audience Types
| Type | Visibility | Use Case |
|---|---|---|
| Universal | Available to all ad accounts in the network | Common segments such as "all users", "mobile users", or demographic groups |
| Local | Restricted to a specific ad account | Brand-specific retargeting, custom cohorts, CRM audiences |
Audience Creation Methods
| Method | How It Works |
|---|---|
| User-Defined Logic | Define conditions using AND or OR logic. Example: "Users who viewed category X in the last 30 days AND have not purchased in the last 7 days." Requires publisher to pass event data continuously to FCC. |
| File Upload (CSV) | Upload a list of user IDs directly. Useful for CRM audiences, loyalty program members, and lapsed users. |
Audience Refresh Types
| Refresh Type | Description |
|---|---|
| Ad Hoc | One-time audience, not refreshed. Short validity. Used for single campaigns or one-time targeting. |
| Recurring | Automatically refreshed at a defined frequency (daily, weekly, or a specific day of the week). Requires a continuous event data feed from the publisher. |
Audience Lifecycle
An audience segment moves through the following states:
Creation → Draft → In Approval → Approved → Processing → Live → Expired / Archived
Note: If an audience is edited, the lifecycle restarts from the beginning. When a new version of an audience goes live, the previous version is automatically archived.
Targeting Logic
The following logic applies when using audiences in campaign targeting:
- Multiple segments selected. OR logic — the union of all selected audiences is targeted.
- Exclude segments. Users in excluded segments will not see the ad even if they qualify on other targeting criteria.
- User consent. If the consent flag in the GetBids request is false, only open-targeted campaigns (no audience targeting) are eligible to serve.
8. Keyword Targeting Suite
Overview
The Keyword Targeting Suite gives advertisers precise control over which search queries their Sponsored Product Ads appear on. The suite consists of three components: Keyword Targeting, Keyword Suggestions, and Keyword Bidding.
Keyword Limits
| Match Type | Limit Per Ad Group |
|---|---|
| Exact Match (Positive) | 50 keywords |
| Phrase Match (Positive) | 50 keywords |
| Negative Exact Match | 50 keywords |
| Maximum keyword length | 40 characters |
Keyword Suggestions
The platform provides keyword recommendations during campaign creation. Suggestions are:
- Derived from actual search query volume on the publisher platform (7-day trailing volume)
- Mapped to L3 product categories for relevance
- Sorted by descending search volume
- Tagged as branded or unbranded
- Limited to approximately 30 suggestions per ad group
When an advertiser selects a keyword suggestion, it is added to the positive keyword list with a default match type of phrase. The advertiser can change the match type to exact.
Keyword Reports
| Report | Description | Applicable To |
|---|---|---|
| Search Term Report | Performance metrics on actual search queries that triggered ads. Shows the top 2,000 terms by view count. | All campaigns (keyword and non-keyword) |
| Keyword Performance Report | Performance metrics per targeted keyword, including attributed keyword and match type used. | Keyword-targeted campaigns only |
| Adoption Metrics Report | Summary of which ad groups are using which match types and which keywords. | Network-level |
9. Wallet and Payments
Overview
Every ad account has a dedicated Wallet. The Wallet holds funds from Purchase Orders and Free Credits, which are used to power ad campaigns. Funds are consumed based on actual ad spend, with redemption occurring on a T-2 day basis.
Wallet Operations
| Operation | Trigger | Description |
|---|---|---|
| Add (Top-up) | PO approved or Free Credits granted | Funds credited to available wallet balance |
| Block | Campaign created | Campaign budget amount reserved from available balance. Reserved funds cannot be used for other campaigns. |
| Redeem | Daily on T-2 basis | Actual spend deducted from the blocked amount |
| Release | Campaign ends or is aborted, plus T+2 days | Unspent blocked funds returned to available balance |
| Expire | PO or Free Credit past end date | Unused funds marked as expired. Refunds are not supported. |
Funding Sources
| Source | Who Adds It | Approval Required | Expiry |
|---|---|---|---|
| Purchase Order (PO) | Advertiser Admin, Business Admin, or Network Admin | Yes — Network Admin must approve (unless added directly by Network Admin, which auto-approves) | Optional end date. Funds expire if end date is passed. |
| Free Credits | Network Admin only | No — credited immediately upon grant | Mandatory expiry date set at time of grant |
Fund Consumption Priority
When campaign spend occurs, funds are consumed in order of earliest expiry date across both POs and Free Credits. This is managed automatically by the platform. Advertisers can also select manual allocation if they require granular control over which funding source is used.
Monthly PO Limit
Each ad account has a network-defined monthly cap on total PO uploads. If the monthly limit is ₹50,000 and ₹10,000 has already been approved for the month, the next PO cannot exceed ₹40,000 for that calendar month. The Network Admin can adjust the monthly limit, and the updated limit applies to all future months.
PO Approval Workflow
- Advertiser or Business Admin uploads PO document with PO number, amount, and duration.
- PO status is set to Pending.
- Network Admin reviews the PO document and validates each field against the submitted document.
- Network Admin approves or rejects the PO with a reason.
- If approved, funds are credited to the advertiser wallet immediately.
Wallet Transaction Summary
The Wallet screen shows all transactions, including:
- Money added (PO or Free Credits)
- Money blocked (per campaign)
- Money redeemed (per campaign, per day)
- Money released (from ended campaigns)
- Money expired (from lapsed POs or credits)
10. Catalog Ingestion
Overview
The FCC catalog is the foundation for Sponsored Product Ads and PCA. Advertisers can only run ads on products that exist in the catalog. Publishers are responsible for keeping the catalog current and accurate.
Catalog Entities
| Entity | Description | Key Fields |
|---|---|---|
| Brand | Brand identity associated with products | id, name (multi-lingual), isActive |
| Category | Hierarchical product taxonomy (supports up to L5 depth) | id, name, child categories (nested) |
| Seller / Vendor | Entity that sells products on the platform | id, name, isActive |
| Product | Core catalog entity. One product can have multiple SKUs. | id, title, brandId, categoryId, imageLink, searchFilters, isActive |
| SKU / Listing | A specific seller's listing of a product at a defined price | id, sellerId, price, availability, inventory, isActive |
Ingestion Methods
| Method | Endpoint / Location | Latency | Use Case |
|---|---|---|---|
| Real-Time API | POST /v2/catalogs/products/{id} | Near real-time | Individual product updates, price changes, inventory updates |
| Batch (Azure Blob) | Publisher-specific Azure Storage directory | Approximately 3 hours (cron schedule) | Full catalog loads, bulk updates |
Search Filters
Search filters are custom product attributes stored as typed key-value pairs that improve ad targeting and relevance. The following filter types are supported:
| Type | Description |
|---|---|
BOOL | Boolean value (true/false) |
INT | Integer value |
FLOAT | Floating-point value |
STRING | Text string value |
INT_ARRAY | Array of integers |
FLOAT_ARRAY | Array of floats |
STRING_ARRAY | Array of strings |
Important Behaviors
- Soft deletes. To remove an entity, set
isActive: false. Setting a field to null or empty does not delete the entity. - Duplicate IDs. If duplicate IDs exist in a batch file, the last entry wins.
- Attribute updates. The
attributesobject does not support partial updates — any attribute not included in an update request will be overwritten with empty values. - Filter deletion. To delete a search filter, send the filter with
value: "DELETED"andtype: "STRING".
11. Attribution
Overview
Attribution is the process of crediting an ad interaction (impression, view, or click) for driving a downstream conversion (purchase, add-to-cart, product page view, or add-to-wishlist). FCC uses a last-touch attribution model.
Attribution Model
| Parameter | Value |
|---|---|
| Model | Last Touch — 100% credit goes to the most recent ad interaction before the conversion |
| Priority | Click > View — if both occurred within the attribution window, only the click is attributed |
| View Window | Configurable per client and per ad product (benchmark: 7 days) |
| Click Window | Configurable per client and per ad product (benchmark: 30 days) |
Attribution Types
| Type | Definition | Example |
|---|---|---|
| Direct | Conversion is for the same brand AND same category as the ad | Nike shoe ad → user purchases Nike shoes |
| Indirect (Halo) | Conversion is for the same brand but a different category | Nike shoe ad → user purchases a Nike t-shirt |
Supported Conversion Events
| Event | Display Ads | SPA | PCA |
|---|---|---|---|
| Purchase / Order | Supported | Supported | Supported |
| Add to Cart (ATC) | Supported | In pipeline | Supported |
| Product Page View (PPV) | Supported | In pipeline | Supported |
| Add to Wishlist (ATW) | Supported | In pipeline | Supported |
Attribution Ingestion
Publishers send conversion events to FCC using one of the following methods:
| Method | Endpoint | Frequency |
|---|---|---|
| Real-Time API | POST /v1/event/conversion | Event by event, as they occur |
| Bulk Ingestion | Azure Cloud Storage directory | Processed every 15 minutes |
Important: Attribution data takes up to 6 hours to fully process and reflect in reporting dashboards after ingestion.
12. Reporting and Analytics
Overview
FCC provides full-funnel performance reporting for all ad products. Reports are available through the UI dashboard for near-real-time campaign monitoring, and through offline delivery for detailed analysis and billing.
Key Metrics
| Metric | Definition |
|---|---|
| Impressions | Ad loaded on the page |
| Views | Ad was at least 50% visible for at least 1 second (IAB standard) |
| Clicks | User clicked on the ad |
| CTR | Click-Through Rate = Clicks ÷ Views |
| PPV | Product page views attributed to the ad |
| ATC | Add-to-cart events attributed to the ad |
| Orders / Units | Purchases attributed to the ad |
| Revenue | Revenue from attributed purchases |
| Ad Spend | Total amount spent running the campaign |
| ROAS | Return on Ad Spend = Revenue ÷ Ad Spend |
| Direct Revenue | Revenue from same brand + same category attributions |
| Indirect Revenue | Revenue from same brand + different category (halo) attributions |
Report Types
| Report | Granularity | Access Method |
|---|---|---|
| Campaign Summary | Campaign, Ad Group, Creative | UI Dashboard |
| Search Term Report | Search query level for all search campaigns | Downloadable CSV from UI |
| Keyword Performance Report | Per targeted keyword for keyword-targeted campaigns | Downloadable CSV from UI |
| Billing / Explainability Report | Transaction-level wallet activity | Offline — SFTP or Azure Blob |
| Network-Level Report | Across all ad accounts, filterable by business account | Offline — SFTP or Azure Blob |
| Unique Reach Report | De-duplicated user count per campaign | Offline — raw data |
Offline Report Delivery
Offline reports are delivered via SFTP or Azure Blob container at a configurable frequency (daily, weekly, or custom schedule). Report schema and format are configurable per client requirements.
13. Forecasting
Overview
The Forecasting feature helps publishers and advertisers understand available ad inventory before committing campaign budgets. Forecasting is currently available for CPM Display Ad campaigns only.
Forecast Metrics
When creating or editing a Display Ad group, the platform displays the following:
| Metric | Description |
|---|---|
| Total Available Impressions | Predicted impressions for the selected targeting criteria over the campaign period |
| Exact Matching Ad Groups | Count of live ad groups targeting the exact same dimensions (slot, language, channel, KVPs, custom audiences) |
| Partial Matching Ad Groups | Count of live ad groups with overlapping targeting on at least one dimension |
| Win Rate | Probability this ad group will win impressions given current competition (expressed as 0–1) |
| Available for Booking | Total Available Impressions × Win Rate |
| Impressions You Are Booking | Calculated from the campaign budget entered by the advertiser |
| Delivered So Far | Impressions already consumed (shown when editing a live campaign) |
Forecast Model
The platform uses machine learning to forecast available impressions:
- Trains on 120 days of historical impression data
- Evaluates two models in parallel — ARIMA and ETS — and selects the model with the lower MAPE (Mean Absolute Percentage Error) on a holdout validation set
- Forecast dimensions: slot, language, channel, KVPs, and custom audiences
Note: Forecast accuracy improves with longer historical data. For new clients or newly configured inventory, forecasts may be less reliable until sufficient traffic data has been collected.
14. API Reference Overview
Overview
FCC's APIs use HTTPS POST with JSON request and response bodies. All API calls require an authentication token (X-AUTH-TOKEN) provided during onboarding.
Ad Serving APIs
| API | Method | Endpoint | Purpose |
|---|---|---|---|
| SPA GetBids | POST | /v1/spa/getBids?client={id} | Request Sponsored Product Ads for a search or browse page |
| PCA GetBids | POST | /v1/sba/getBids?client={id} | Request Product Contextual Ads |
GetBids Request: Key Parameters
| Parameter | Required | Description |
|---|---|---|
id | Yes | Unique request ID generated by the publisher for each ad request |
type / page | Yes | Page type: SEARCH, BROWSE, HOMEPAGE, or PDP |
user.id | Yes | Stable unique user identifier. Used for audience targeting and attribution. Must be consistent across ad requests and conversion events. |
device | Yes | User agent string, IP address, OS, OS version, and device advertising ID (IFA / AAID) |
query | Required for search pages | Raw search query as entered by the user |
placement_requests | Yes | Array of placements requested, each with a placement ID and requested ad count |
filters | Optional | Product attribute filters (for example, brand_id, category_id) |
data.userTargeting | Optional | KVP segments array. Pass key ID and comma-separated value IDs. Omit keys with no applicable value — do not pass empty strings. |
app or site | Yes | App object for mobile applications; Site object for websites. Include only one per request. |
GetBids Response: Key Fields
| Field | Description |
|---|---|
placement_responses[].ads[].sku | SKU or Listing ID of the winning sponsored product |
placement_responses[].ads[].product_id | Product ID of the winning ad |
placement_responses[].ads[].tracking.impressionUrl | URL to fire when the ad loads |
placement_responses[].ads[].tracking.viewUrl | URL to fire when the ad meets viewability criteria |
placement_responses[].ads[].tracking.clickUrl | URL to fire when the user clicks the ad |
last_offset | Solr document index for pagination. Client must increment by 1 and pass in the next request's offset field. |
Pagination
The last_offset field in the response enables result pagination for search pages with multiple ad slots or infinite scroll:
- A value of
-1indicates the first page returned no ads. - For subsequent pages, pass
last_offset + 1as theoffsetinplacement_requests. - If no new ads are found on a subsequent page,
last_offsetretains its previous value, indicating the end of available inventory.
Data Ingestion APIs
| API | Method | Endpoint | Purpose |
|---|---|---|---|
| Catalog Ingestion | POST | /v2/catalogs/products/{id} | Create or update product catalog entries |
| Conversion Event | POST | /v1/event/conversion | Send purchase or order events for attribution |
| Add to Cart | POST | /v1/event/add_to_cart | Send add-to-cart events for attribution |
| Product Page View | POST | /v1/event/product_page_view | Send product page view events for attribution |
| Add to Wishlist | POST | /v1/event/add_to_wishlist | Send add-to-wishlist events for attribution |
Authentication Headers
| Header | Required | Description |
|---|---|---|
X-AUTH-TOKEN | Yes | Authentication token provided by FCC during onboarding |
Content-Type | Yes | Must be application/json |
X-PERF-TEST | Optional | Set to true for performance testing. Test events are not processed for billing or attribution. |
X-Device | Optional | Override the device type detected from the user agent. Accepted values: ANDROID, IOS, MSITE, WEBSITE, TABLET. |
15. Tracking Events
Overview
Tracking events must be fired in real time. They power FCC's budget capping system — late or missing events will cause budget overruns or underspend. Publishers are responsible for firing all three tracking events correctly.
Three Tracking Events
| Event | When to Fire | Macro to Replace Before Firing |
|---|---|---|
| Impression | When the ad creative loads on the client | [EVENTTIME] → Unix epoch timestamp in milliseconds |
| View | When the ad meets IAB viewability criteria (at least 50% visible for at least 1 second) | [STARTTIME] → epoch ms when ad enters viewport; [ENDTIME] → epoch ms when ad leaves viewport |
| Click | When the user clicks the ad | [EVENTTIME] → Unix epoch timestamp in milliseconds |
Firing Methods
| Method | How | Use Case |
|---|---|---|
| Single | HTTP GET to each tracking URL | Standard real-time event firing |
| Batch | POST /v3/tr/batch with up to 50 URLs | Sending multiple events in one call |
Retry Logic
Implement the following retry behavior on tracking failures:
- Maximum 5 retry attempts
- Use exponential backoff starting at 1 second, doubling on each failure
- Formula:
retryTime × Uniform[0,1]
Third-Party Tracker Support
FCC supports passing third-party tracker URLs in creative configurations. Observe the following requirements:
- Tracker URLs must be passed through exactly as provided — do not re-encode or modify special characters such as
%pi. - Multiple tracker URLs are supported per event type.
- Current field length limit is 500 characters.
16. Onboarding Checklist
Overview
This checklist covers the steps required to go live on Flipkart Commerce Cloud. Standard onboarding takes approximately 4 to 6 weeks from contract finalization to first live campaign, depending on integration complexity and catalog size.
Phase 1: Network Setup
| Task | Owner |
|---|---|
| Finalize network details: legal name, currency, timezone, country | Publisher + FCC |
| Define publisher group and publisher hierarchy | FCC |
| Configure pages and slots per publisher | Publisher + FCC |
| Set network configurations: CPC range, minimum budget, blacklist queries | Network Admin |
| Define KVPs: finalize key names, IDs, and value lists (required within 3 days of kickoff) | Publisher + FCC |
| Configure creative templates and ad formats per device and channel | FCC + Publisher |
| Whitelist CDN URLs for creative asset delivery | FCC |
| Configure rate card: set floor prices per placement | Network Admin |
| Set up white-label configuration: domain, favicon, invitation email display name | Publisher + FCC |
Phase 2: Technical Integration
| Task | Owner |
|---|---|
| Integrate GetBids API for each page type (Search, Browse, Homepage, PDP) | Publisher Engineering |
| Implement impression, view, and click tracking event firing with correct macros | Publisher Engineering |
| Set up catalog ingestion pipeline (real-time API or Azure batch) | Publisher Engineering |
| Set up attribution ingestion pipeline (conversion events) | Publisher Engineering |
| Test API calls using FCC-provided Postman collection | Publisher Engineering + FCC |
| Validate KVP passing in GetBids request body | Publisher Engineering + FCC |
| Verify ad serving across all device types (Android, iOS, Msite, Desktop) | Publisher Engineering + FCC |
| Confirm CDN is whitelisted for creative delivery | Publisher Engineering |
Phase 3: Advertiser Onboarding
| Task | Owner |
|---|---|
| Create Business Accounts and Ad Accounts for advertisers | Network Admin |
| Invite advertiser users with appropriate roles | Network Admin |
| Process first Purchase Orders and credit advertiser wallets | Network Admin (Finance) |
| Create and approve test campaigns | Network Admin + Advertiser |
| Upload and approve test creatives | Network Admin |
| Validate end-to-end serving, tracking, and attribution | Publisher + FCC |
| Set up offline report delivery (SFTP or Azure) with agreed frequency | Publisher + FCC Data Team |
| Establish SLAs and schedule quarterly business review | Publisher + FCC |
Glossary
| Term | Definition |
|---|---|
| Ad Group | A sub-unit of a campaign that contains targeting, bidding, pacing, and creative or product configuration |
| Attribution | The process of crediting an ad interaction for a downstream conversion |
| Banner Group | A group of ad banners associated with an ad group in the serving system |
| BCAP | Budget Capping System — manages real-time budget enforcement for all campaign types |
| CPC | Cost Per Click — advertiser pays each time a user clicks the ad |
| CPM | Cost Per Mille — advertiser pays per 1,000 impressions |
| CPT | Cost Per Time — advertiser reserves a slot for a fixed time period |
| CTR | Click-Through Rate = Clicks ÷ Views |
| Direct Attribution | Conversion matches the same brand and same category as the ad |
| Endemic Ad | An ad for a brand or product that is native to the publisher's platform |
| FCC | Flipkart Commerce Cloud |
| Fill Rate | Percentage of ad requests that result in a served ad |
| Frequency Cap | Maximum number of times an ad is shown to a unique user within a defined period |
| GetBids API | FCC's core ad serving API — called by publishers to request ads for each page load |
| Halo Attribution | Indirect attribution — conversion is for the same brand but a different category |
| Impression | Counted when an ad loads on the page |
| KVP | Key-Value Pair — publisher-defined targeting attribute passed in the GetBids request |
| Last Touch | Attribution model where 100% credit goes to the most recent ad interaction |
| Non-Endemic Ad | An ad for a brand or product that does not sell on the publisher's platform |
| Open Targeted | An ad group or banner group with no keyword or KVP targeting restrictions — serves for all eligible requests |
| PCA | Product Contextual Ads — FCC's hybrid banner + product card ad format |
| PLA | Product Listing Ads — alternative name for Sponsored Product Ads (SPA) |
| PO | Purchase Order — the primary funding mechanism for advertiser wallets |
| ROAS | Return on Ad Spend = Attributed Revenue ÷ Ad Spend |
| SKU | Stock Keeping Unit — a specific seller listing of a product |
| Slot | A specific ad placement position on a publisher page |
| SPA | Sponsored Product Ads — performance-based product listing ads |
| vCPM | Viewable CPM — charged per 1,000 viewable impressions (IAB standard) |
| View | Counted when at least 50% of the ad is visible on screen for at least 1 second (IAB standard) |
| Wallet | The funding account associated with each ad account, used to power campaigns |
| Win Rate | The probability that an ad group will win impressions given competing demand |