Skip to content

Listing Create API

Creating a listing for a product that exists in Pincode’s global catalog

Authentication:
As explained in the Authentication section, this API requires the Authentication token as a header.

Coordinates
Staging: seller-network-testing.pincode.com
Production: shopping-network.phonepe.com

Resource: POST /tsp/catalog/v1/listing

curl --request POST \
--url 'https://seller-network-testing.pincode.com/tsp/catalog/v1/listing' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: O-Bearer <token>' \ 
--data ' {
  "requestContext": {
    "requestId": "R232938928391",
    "transactionId": "R232938928391"
  },
  "messages": [
    {
      "messageId": "M382382938999",
      "serviceProviderId": "72387283",
      "operationType": "CREATE",
      "serviceProviderItemId": "27787237873827",
      "data": {
        "psin": "U1234567890123456789012",
        "identifiers": [
          {
            "identifierType": "SELLER_CODE",
            "value": "d1ddsadf8a9df"
          },
          {
            "identifierType": "EAN",
            "value": "8901719123795"
          }
        ],
        "price": {
          "mrp": 202.32,
          "sellingPrice": 189,
          "currency": "INR"
        },
        "maxOrderQuantity": 4,
        "inventory": {
          "type": "COUNT",
          "count": 10
        },
        "status": "ACTIVE"
      }
    }
  ]
}'
import requests

url = 'https://seller-network-testing.pincode.com/tsp/catalog/v1/listing'
headers = {
    'Accept': 'application/json',
    'Content-Type': 'application/json',
    'Authorization': f'O-Bearer {token}'
}
data = {
      "requestContext": {
        "requestId": "R232938928391",
        "transactionId": "R232938928391"
      },
      "messages": [
        {
          "messageId": "M382382938999",
          "serviceProviderId": "72387283",
          "operationType": "CREATE",
          "serviceProviderItemId": "27787237873827",
          "data": {
            "psin": "U1234567890123456789012",
            "identifiers": [
              {
                "identifierType": "SELLER_CODE",
                "value": "d1ddsadf8a9df"
              },
              {
                "identifierType": "EAN",
                "value": "8901719123795"
              }
            ],
            "price": {
              "mrp": 202.32,
              "sellingPrice": 189,
              "currency": "INR"
            },
            "maxOrderQuantity": 4,
            "inventory": {
              "type": "COUNT",
              "count": 10
            },
            "status": "ACTIVE"
          }
        }
      ]
    }
response = requests.post(url, headers=headers, json=data)

Response:

{
  "requestContext": {
    "requestId": "R232938928391",
    "transactionId": "R232938928391"
  },
  "response": {
    "submissionId": "2832739827392739"
  }
}

Field Explanation:

Parameter Type Description
requestContext Object This object represents the context of the order in which the update is being given
requestContext.requestId String The unique ID for every request made will be the same in callbacks and identify every new request
requestContext.transactionId String For catalog related APIs, the transactionId will be same as requestId
messages[0].messageId String Identifier for the message that is unique within this request. Response messages are correlated to this message id
messages[0].serviceProviderId String Represents the store identification ID that the receiver platform understands
messages[0].operationType Enum Represent type of operation. This value would be CREATE for creation
messages[0].serviceProviderItemId String Represent the item identification ID for a store that the receiver platform understands
messages[0].data.psin String Pincode Standard Identification Number
messages[0].data.identifiers[0].identifierType Enum SELLER_CODE: type indicates seller identification code
EAN: European Article number
messages[0].data.identifiers[0].value String Value of identifier type
messages[0].data.price.mrp Int MRP (Maximum Retail Price) of the item
messages[0].data.price.sellingPrice Int Selling Price of the item
messages[0].data.price.currency Enum INR: Indian Rupees
messages[0].data.inventory.type Enum COUNT: represents inventory is countable
messages[0].data.inventory.count Int Number of item units available for sale
messages[0].data.maxOrderQuantity Int Maximum number of units in an order for a item
messages[0].data.status Enum ACTIVE: The item is visible on the Pincode platform
INACTIVE: The item is invisible on the Pincode platform

DELETED: The item is deleted on pincode platform . This status is only valid for update api