← Back to EcomCentral
FLIPKART SELLER API v3

Flipkart Seller Setup Guide

Connect your Flipkart Marketplace seller account to EcomCentral using the Flipkart Seller API v3 with OAuth2 client-credentials authentication.

What Is This Integration?

ℹ️ EcomCentral uses the Flipkart Marketplace Seller API (v3) — the REST interface provided by Flipkart for sellers operating on the Indian Flipkart marketplace. It exposes shipment management, order fulfilment, and self-ship dispatch. Used by Indian marketplace sellers to manage orders, view shipment details, and push tracking for self-fulfilled shipments.

Authentication uses OAuth2 client_credentials — no browser login is required. A fresh bearer token is fetched per session using your application credentials. The token is not stored between requests; EcomCentral re-fetches it automatically on every operation.

Prerequisites

✅ OAuth2 client_credentials — no user login required. The access token is auto-fetched per session using your app_id and app_secret. EcomCentral handles token acquisition transparently.

Getting Your API Credentials

  1. Log in to the Flipkart Seller Hub and navigate to Developer Portal
  2. Click Create Application — enter your application name and description
  3. Submit for Flipkart's review; once approved, your application status changes to Active
  4. Copy your Application ID and Application Secret from the application detail page
  5. In EcomCentral, add a new Flipkart connection and fill in both credential fields below
  6. Click ⚡ Test — EcomCentral will attempt to obtain a token using your credentials

Credentials Reference

KeyRequiredDescriptionExample
app_id Required Application ID from the Flipkart Developer Portal. Used as the OAuth2 client_id in Basic auth to the token endpoint. seller-app-12345
app_secret Required Application Secret from the Flipkart Developer Portal. Used as the OAuth2 client_secret. a1b2c3d4e5f6…
sandbox Optional Set to true to use the Flipkart sandbox environment (sandbox-api.flipkart.net) for testing. Omit or set to false for production. true
✅ Alternative key names accepted: appId or client_id for app_id; appSecret or client_secret for app_secret.

API Endpoints Used

OperationMethodPathNotes
OAuth token GET /oauth-service/oauth/token?grant_type=client_credentials&scope=Seller_Api Basic auth with app_id:app_secret; returns access_token
Search shipments (orders) POST /v3/shipments/filter/ Filter by state (APPROVED, PACKED, READY_TO_DISPATCH); cursor-paged, no total count
Shipment detail GET /v3/shipments?shipmentIds={id} Returns full shipment including address, order items, and fulfilment info
Self-ship dispatch POST /v3/shipments/selfShip/dispatch Submit tracking ID and delivery partner code for self-fulfilled shipments
ℹ️ All Seller API calls use Authorization: Bearer {token}. The base URL is https://api.flipkart.net/sellers (production) or https://sandbox-api.flipkart.net/sellers (sandbox).

Flipkart Order Statuses

StatusMeaning
APPROVEDOrder confirmed by Flipkart; seller action required
PACKEDSeller has packed the item
READY_TO_DISPATCHReady for pickup by Flipkart logistics or self-ship dispatch
DISPATCHEDShipment picked up / dispatched
DELIVEREDItem delivered to the buyer
CANCELLEDOrder cancelled (by buyer or Flipkart)
RETURNEDItem returned by the buyer

Supported Features

FeatureSupportedNotes
View orders (shipments)Pre-dispatch shipments via POST /v3/shipments/filter/; cursor-paged, no total count
View order detailFull shipment: address, order items, prices, SKUs, fulfilment info via GET /v3/shipments?shipmentIds=
Add tracking (self-ship)Dispatch via POST /v3/shipments/selfShip/dispatch — carrier + tracking number required
Test connectionVerifies OAuth token can be obtained; confirms API connectivity
View products (catalogue)No pageable catalogue endpoint — requires caller-supplied SKU IDs
Update stock quantityRequires a Flipkart locationId not available in the generic contract

Limitations — Unsupported Operations

Product listing (getProducts) is not supported. The Flipkart Seller API v3 does not expose a pageable catalogue endpoint. The only listings endpoint is GET /listings/v3/{sku-ids}, which requires the caller to supply up to 10 SKU IDs. There is no way to enumerate an unknown catalogue. Product access must come from a caller-supplied SKU source (e.g. your own database or the Flipkart Seller Hub export).
Stock update (updateStock) is not supported. Inventory updates via POST /listings/v3/update/inventory require a Flipkart locationId to target a specific fulfilment location. This location ID is not part of the generic EcomCentral (sku, quantity) contract, so the operation is blocked rather than risking an update to an unintended or blank location. If you need to update inventory, use FlipkartClient::updateInventory($sku, $qty, $locationId) directly with a known location ID.
Self-ship tracking: order_id must be the Flipkart shipmentId. The self-ship dispatch endpoint operates on shipments, not order item IDs. When submitting tracking via EcomCentral, supply the Flipkart shipmentId (e.g. OD1234567890) as the order_id field. The shipmentId is visible in the order list and order detail panel.

Troubleshooting

✕ OAuth failure — "Auth failed (HTTP 401)" or "Auth connection error"

The app_id or app_secret is incorrect or has been rotated. Verify both values in the Flipkart Developer Portal and update the credential in EcomCentral.

✕ 403 Forbidden on API calls

Your Flipkart application has not been approved for Seller API access, or the scope Seller_Api has not been granted. Check application status in the Developer Portal. Flipkart manually reviews and approves Seller API applications — contact Flipkart support if approval is pending.

✕ Test connection passes but orders return empty

The shipment filter returns only APPROVED, PACKED, and READY_TO_DISPATCH pre-dispatch shipments. If there are no active shipments in those states, the result will be empty. This is expected behavior.

✕ Sandbox mode — unexpected errors

Set sandbox: true in your credentials to route requests to sandbox-api.flipkart.net. Sandbox credentials are separate from production credentials and must be obtained from the Flipkart Developer Portal sandbox environment. Remove or set sandbox: false when going live.