Monsoon API and Data Exchange Guide

 

Introduction

The Monsoon API allows developers to build solutions capable of communicating with Monsoon software. Prior knowledge of Microsoft technology stack (Windows, SQL, .NET) and e-Commerce domain objects (such as SKU, ISBN, UPC, Online Marketplace, etc) is highly recommended.

This documentation assumes that you have already used Monsoon, and are familiar with the concepts of multi-marketplace selling and pricing.

Areas such as inventory pricing, listing strategies and import templates will not be covered here as they are fully explained in the end-user documentation.

 

The Monsoon Network

 

Network3.png 

 

The Primary

The primary installation is a single machine hosting —

   The Database (Microsoft SQL 2005, 2007 or 2008)

   The Master Service (Win32, .NET)

   The Worker Service(Win32, .NET)

   The Desktop (.NET, Windows Forms)

There can be only one primary workstation in the organization (store). In the typical small store the primary is the only Monsoon installation.

The Secondary

In a big organization, more than one workstation may be needed. So we allow the desktop application to run on any number of machines, named “secondaries”. Each secondary requires a seat license.

All secondaries connect to the primary, thus forming the Monsoon network. It is important to remember that only the Monsoon Desktop runs on the secondaries –the Monsoon database together with all the Monsoon services are always located on the Primary workstation.

 

The Monsoon Modes

Monsoon is a complex tool. To facilitate development and testing, Monsoon is designed to run in several different modes.

Production Mode

In Production Mode you are live on all configured markets. While running Production Mode all elements of the Monsoon architecture (master, worker, database, etc) are fully functional.

Training Mode

Training Mode offers maximum isolation by using a separate database (“MonsoonTraining”), from which no inventory ever gets listed.

Training Mode allows you to get hands-on experience with its many functions before you go live. We recommend that you use Monsoon in Training Mode until you feel fully confident with all that it has to offer. Nothing you do in Training Mode will ever affect your daily business. So feel free to experiment, and don’t worry… you won’t break anything.

Training Mode License

Production Mode offers different sets of features based on the license type you purchased. However, when you are inTraining Mode, you may choose your license type, giving you the opportunity to experience the features included with different license types.

To change your “training license” type —

 

chooseTrainMode.png 

 

 

   1)   Go to File > Training Mode license in the upper left hand corner of Monsoon

   2)   Select your product form the dropdown menu.

   3)   Monsoon will close itself down and re-launch in your chosen training mode.

 

The above routine has one useful side effect — it completely resets your training database, allowing you to start fresh every time you chose a new license type.

 

 

 

 

API Structure

The API can be split into two major areas – Data Exchange and Reporting.

   Data Exchange allows developers to communicate with the worker service via tab-separated text files.

   Reporting allows developers to communicate with the database using TSQL

Data Exchange

From a very high level perspective, Monsoon resembles a POS system. Inventory comes in and gets sold (orders are placed), resulting in dynamic inventory quantities. For each new order —

 

QuantityOnHand = QuantityOnHand - OrderedQuantity

 

Additionally, inventory may get re-priced or otherwise changed through the UI. To help developers write code for processing all these changes, Monsoon offers a set of Publish-Subscribe interfaces (or channels) which together form the so called Data Exchange Market.

There can be multiple Data Exchanges in the system. Each data exchange —

   Publishes 1 inventory export interface (channel)

   Publishes 1 order export interface (channel)

   Subscribes to 1 inventory import interface (channel)

   Subscribes to 1 order import interface (channel)

Data Exchanges are configured using the Monsoon Desktop.

 

GoToDataExchange.png 

 

 

When you click on the Add Data Exchange button, you are presented with the following dialog —

 

DataExchange_4_clean.png 

 

Field Name

Field Description

Name

Describes the system with which you wish Monsoon to exchange data.

Example:  “My Test System”

 

Export Inventory Directory

This is the location where the Monsoon Worker will publish inventory files.

Note that Initial export will include all active inventories. Subsequent exports will contain only items that have been modified within Monsoon Database since the last export.

 

Export Orders Directory

This is the location where the Monsoon Worker will publish order files.

The channel can be configured to export all orders, or to only export orders for inventory that came from this data exchange source.

 

Import Inventory Directory

This is the location where the Monsoon Worker will look for inventory files (subscribe).

The file format contains operations (such as Add, Modify, Update and Delete) together with the data on which the operation is to be performed.

 

Import Orders Directory

This is the location where the Monsoon Worker will look for order files (subscribe).

Like inventory, the file contains operations and the data.

 

 

Monsoon cannot connect to Mapped Network Drives

Monsoon is only able to access Shared Folders on your network.

 

One of the most basic types of integration is where your code subscribes for Monsoon inventory and order changes. To do this, you will need to —

   Manually set up a Data Exchange. For each new Exchange, a full inventory dump is immediately initiated by the Monsoon Worker.

   Write code that subscribes to the data. This is done by periodically checking the export directories and processing new files as they arrive.

Below is a diagram of what the Monsoon Worker does in production. It will periodically pool the import directories and publish to the export directories.

 

DataEx_Schema.png 

 

 

Inventory Export

Once you open one of the inventory files with a text editor, you will find that it is a TAB-separated ASCII file, with the first row containing column names.

Such inventory export file contains a wide variety of data, and columns may be added and/or removed in the future. Also it is worth mentioning that the data you will see in an export file depends on the type of product being sold. For example — in a book store, one may expect to find ISBNs for most of the items, whereas this is not true for a DVD and Electronics shop.

For complete Inventory Data Definitions, see Appendix A: Inventory Data Definitions

 

Order Export

When Monsoon receives order from an online market, it will look up its available inventory and allocate some of it to fulfill the order. It will then export the combined information (order & inventory properties) as a single record in the order export file.

For example, if an order came for SKU=1, in the order export file you will see the order properties (e.g., order date, ordered quantity, order number, etc) as well as the inventory properties (e.g., remaining quantity, condition, etc) for SKU=1.

For complete Order Data Definitions, see Appendix B: Order Data Definitions

 

Export Data Handling

To ensure no partial or corrupt data is exported, Monsoon creates its export files with read-exclusive access. This prevents other applications (including yours) from accessing the file while Monsoon is still writing it (which may take several seconds or more).  Below is a code snippet (C#) demonstrating fail-safe ways for opening an export file —

 

//Monsoon Example: C#

using System.IO;

using System.Threading;

 

public FileStream Open(FileInfo file)

{

 int count = 0;

 const int MAX_TRY = 100;

 while (count++ < MAX_TRY)

 {

   try

   {

      return new FileStream(file.FullName, FileMode.Open, FileAccess.Read, FileShare.None);

    }             

   catch (IOException)

   {

     Thread.Sleep(TimeSpan.FromSeconds(1));

    }            

 }

 throw new IOException();

}

 

Note that Monsoon allows certain time before giving up on the file with an IO exception. Also bear in mind that it is the responsibility of your code to delete old files you no longer need.

As mentioned before export files are TAB-separated ASCII with a column header on top. Whereas there are many libraries for parsing such files, two techniques may come in handy. To read the file into an ADO.NET DataTable, you may use the Microsoft OLEDB Provider in the following way —

 

//Monsoon Example: C#

using System.IO;

using System.Text;

using System.Data;

using System.Data.OleDb;

 

public DataTable Open(FileInfo file)

{

  using (StringWriter connectionString = new StringWriter())

 {

    connectionString.Write("Provider={0};", "Microsoft.Jet.OLEDB.4.0");

    connectionString.Write("Data Source={0};", file.Directory.FullName);

    connectionString.Write("Extended Properties=\"text;FMT=TabDelimited;HDR=YES;\";");

    using (OleDbConnection connection = new OleDbConnection(connectionString.ToString()))

   {

      OleDbCommand command = new OleDbCommand(string.Format("SELECT * FROM [{0}]", file.Name));

     command.Connection = connection;

      OleDbDataAdapter adapter = new OleDbDataAdapter(command);

     adapter.UpdateCommand = null;

     DataSet dataset = new DataSet();

     connection.Open();

     adapter.Fill(dataset);

     return dataset.Tables[0];

   }

  }          

}

 

The resulting DataTable can be further bulk-loaded into SQL 2005 or 2007 with a statement such as this —

 

//Monsoon Example: C#

using System.Data;

using System.Data.SqlClient;

 

public void BulkCopy(string connectionString, DataTable data)

{

  using (SqlBulkCopy copy = new SqlBulkCopy(connectionString))

 {

   copy.BatchSize = 500;

   copy.DestinationTableName = "MyData";

    copy.WriteToServer(this.Data);            

 }

}

 

 

 

Inventory Import

Importing inventory is a bit more complex than reading exported data, but the idea is the same. This time, however, it is your code that publishes the data and the Monsoon Worker subscribing to it.  Also, the inventory import format is different (although similar) than the inventory export format.

Attempting to import a file using the export format will fail.

For more information, see Appendix A: Inventory Data Definitions.

 

Inventory Identity

When importing inventory, four requirements must be met.

   Local identity.  Monsoon must have something unique for tracking the inventory in the local database. If you omit the SKU column, this requirement will be automatically met as Monsoon will assign a unique SKU number to each new inventory item.

   Global identity.  Monsoon must know something that uniquely identifies the inventory in the universe. This may be an UPC, ISBN, ASIN or an EAN code. Without a product identifier many of Monsoon’s features (such automatic pricing and categorization) will be unusable.

   Categorization. Monsoon must be able to categorize the inventory. For this to work there must either be a category specified in the import file, or the item’s global identity should be discoverable at one of the main markets (e.g., Amazon, eBay).

   Pricing. Monsoon must be able to price the item.  For this to work there must either be a price specified in the import file, or the item’s global identity should be discoverable at one of the main markets (e.g., Amazon, eBay).

Inventory meeting all of the above requirements is called “Standard”

 

Standard vs. Non-Standard  Adds

Adding standard inventory to Monsoon is called a Standard Add. This is the default means of adding inventory. However, it is possible to force non-standard inventory in by flagging it as Non-Standard.

For more information, see Monsoon-Specific Inventory Data.

 

Non-standard inventory cannot be automatically priced & categorized as it owns no Global Identity, so values for “Price” and “Category” must be provided by you.

 

Inventory Listing

Once your inventory imports successfully into Monsoon, it will be fed to the Listing Engine which determines two things —

   Where to sell? To find out, the listing engine looks at various inventory fields like category, condition, price, etc. The final outcome for each market will depend on the actual listing rules specified by the customer. For example you may have just imported a used book, and there may be several enabled markets in Monsoon, however only one may be configured to sell books (say Amazon), and it may not be allowed to accept used items   - so your item goes nowhere …

   For how much? To answer this question the listing engine will try to match inventory items to pricing strategies based on customer’s configuration. For example you may have one pricing strategy for books, another for DVD’s, etc …

 

Whereas you cannot directly control where the inventory will be sold via data exchange, you can specify the pricing strategies on a per market basis. For more information see Appendix A: Inventory Data Definitions.

 

Updating existing items

When updating existing items (MonsoonOP=”m” or “d” if the item already exists, or “u” if you are not sure) you don’t have to supply a full inventory identity – just the SKU would be enough.

For example to delete SKU=123, the following text file will suffice —

 

MonsoonOP    SKU    

d            123

 

Likewise to modify the condition of this item:

 

MonsoonOP    SKU    Condition    

m            123    New

 

For more information, see Appendix A: Inventory Data Definitions.

For Data Samples, see Appendix D: Data Samples and Templates

 

Using Your Own SKU

You may specify the SKU of any item being added to Monsoon in your import file.

Monsoon will then use this SKU to match any subsequent update, add or modify specified for that SKU. Alternatively, your SKU may be added as a locator code, but there are both pros and cons to this option.

If no SKU is provided in the import file, Monsoon will automatically create incremental SKUs for items added via import. Any line-item in an “Add” line which does not have a SKU specified will automatically be assigned a SKU by Monsoon.

 

 

 

Order Import

Importing orders into Monsoon is similar to importing inventory. While doing it, the following rules apply —

   New orders should be imported with an ‘a’ in the MonsoonOP column to indicate that they are new and to be added to the database.

   Existing orders being imported for the purpose of updating or modifying existing entries must include an ‘m’ in the MonsoonOP column.

   Any orders that already exist in the database and which are marked as an Add in an import file will be rejected by Monsoon.

 

For more information, see Appendix B: Order Data Definitions.

 

 

 

Import Data Handling

Here again similar considerations apply as with the export, except that the roles are reversed — it is now your code creating the file and Monsoon worker reading it. To prevent Monsoon from accessing partial or incomplete data, make sure you maintain an exclusive read lock on the file while writing to it. Depending on your actual import scenario certain data validations may be performed by the Monsoon Worker (“standard” vs “non-standard” add).

If errors are found, they will be logged in the “Errors” subdirectory located immediately under the import directory. Also valuable information can be found at the worker’s log file.

You may have overridden defaults with a config ("LogsPath"), but by default, logs are saved in:

Vista, Windows 7, Server 2008 C:\ProgramData\Monsoon\Logs
Windows XP, Server 2003 C:\Documents and Settings\All Users\Application Data\Monsoon\Logs

Also, your inventory and order import files should be named in such a way as to ensure uniqueness. A good inventory import name looks like this:

 

InventoryImport20060919-081601-390.txt

 

Using a time stamp as part of the file name ensures that every file generated has a unique name, and thus will not overwrite a previously generated file (or cause it to be ignored).

Creating files with identical names can cause significant problems resulting in data loss.

 

 

 

Reporting

Monsoon provides a set of database views which can be used to generate reports. Depending on the reporting needs, report developers will have to frame SQL queries to generate the reports. As the views are bound to Monsoon database, they can be consumed by any of the reporting tools such as Crystal Reports or SQL Server Reporting Services.

The initial scope of the reporting views is to match the data elements provided by inventory and order export. Following best practices are recommended when working with the reporting API —

   Be safe! Create a separate read-only login for the Monsoon database (like “monadapter”) and use it to run reporting queries.

   Be stateless!  Sometimes we may drop & recreate our database, so naturally any tables you may have added will be lost.

   Be compatible! Monsoon uses an industry standard ORM (object relational mapper) which makes our tables highly dynamic and prone to changes. To stay compatible with future Monsoon releases, do not query our tables directly – use he views instead.

   Be efficient! Monsoon depends on a fast and responsive database. We cache all our tables in memory and, should the database becomes slow (due to extensive queries), it may break other features such as receiving and pricing.

There are 6 views provided for generating reports on inventory and orders. The following table provides a quick overview of what each view is used for:

 

View

Description

ItemTraitsView

SKU based traits view. Contains inventory item and product traits per SKU

InventoryItemClassificationView

Provides a list of classifications associated to a SKU

InventoryItemLocationView

Provides Item condition, notes and location information for a SKU

InventoryItemMarketView

Provides market view of the SKU. For instance, using this view, we can find out at what markets this SKU has been listed

OrderDetailsView

Contain order and customer information. Order details are repeated per order item

OrderItemAllocationView

Provides information about the item location and the location quantity for a sold item.

 

 

ItemTraitsView

Various properties of an inventory item are referred as “Traits”. This view shows all inventory in the system, together with its traits.

 

InventoryItemClassificationView

This view provides a list of classifications associated with a SKU. A SKU can have zero or many classifications. Hence querying for a specific SKU against this view may result in 0 to many rows. The number of rows returned by this view per SKU is directly proportional to the number of classifications associated to the SKU. The following table describes the columns exposed by the view —

 

InventoryItemClassificationView

Column

Description

InventoryItemId

Unique Key associated to an InventoryItem

SKU

SKU number associated to an inventory item  

Classification

The name of the classification associated to a SKU

ClassificationNotes

Classification Note

 

InventoryItemLocationView

In the Monsoon data model, single SKUs may be kept at various locations (think warehouses). This view allows access to the physical allocation of the inventory.

 

InventoryItemMarketView

This view gives you an idea of which inventory is listed on which market(s).

 

OrderDetailsView

This view provides information about orders. The information includes, order details and shipping details. If the order has more than one order item, then the order details are repeated per order item. The following table describes the columns exposed by the view.

 

OrderDetailsView Data Definitions

Column

Description

OrderNumber

Monsoon Order Number

Status

Order Status. Can be one of 'Unprocessed' ,'New' , 'Shipped' , 'Cancelled' and 'Pending'. Note that Printed is not a status and that information is provided in a separate column

MarketName

Name of the Marketplace from which the order has been generated. Market Names can be any one of 'Ebay', 'AmazonMarketplaceUS', 'AmazonMerchantsAt', 'Alibris', 'Abebooks', 'HalfDotCom', 'AmazonMarketplaceUK', 'AmazonMarketplaceCA', 'EbayMainSite' and market name given for a custom market

MarketOrderId

Order Id provided by the marketplace

MarketTransactionId

Market transaction id provided by the market

OrderDate

 

ShipDate

 

MarketShipMethod

Name of the shipmethod provided by the market

ShipMethod

Monsoon shipmethod. Can be any one of 'Standard', 'Expedited' , 'Standard International'

ShipTrackingNumber

Shipment Tracking Number used to ship the order

PackageWeight

Package weight.  Includes the weight of all items which are shipped as part of the package. Monsoon Currently only support shipping a single package per order

ActualPostage

Actual postage for the shipment

OrderNote

Order Note provided by the marketplace

AtleastPrintedOnce

Can be 0 or 1. 1 indicates it has been printed once

CancellationEmailSent

Can be 0 or 1. 1 Indicates whether cancellation email has been sent

ConfirmationEmailSent

Can be 0 or 1. 1 Indicates whether confirmation email has been sent

UserFeedbackSent

Can be 0 or 1. 1 Indicates whether user feedback has been sent. Only applicable for markets supporting this feature

FeedType

Only applicable for sellercentral. Can be any one of OrderAcknowledgement or OrderFulfillment

FeedStatus

Only applicable for sellercentral. Can be any one of 'Will be Listed', 'Listing', 'Upload Error', 'Listed'

FeedId

Only applicable for sellercentral.  Feed identifier

LastStatusModified

Status Modified time

ShipmentCarrier

Can be one of USPS, UPS and FedEx. Default carrier is USPS

ShipToName

 

BuyerName

 

Address1

 

Address2

 

City

 

State

 

PostalCode

 

Country

 

Email

 

BuyerPhoneNumber

Phone number of the buyer ( if available)

ShippingNote

Shipping instructions( if available)

OrderItemId

Unique Identifier associated to an order item

MarketOrderItemId

Market assigned identifier associated to an order item

InventoryItemId

Unique Identifier of the sold inventory item. Used as a key to link to other Inventory Item Views

OrderedQuantity

Number of pieces/ skus ordered. At the order item level. Can be one or more. For example, if two copies of the harrypotter book is ordered, then ordered quantity would be 2

ShippedQuantity

Number of pieces/skus shipped or can be shipped. At the order item level. For example, the ordered quantity can be 2 and shipped quantity can be 1 because the seller was out of that inventory item or could not find one.

Price

Price of the order item in seller currency. Unit price ( price for 1 quantity) can be obtained by dividing the Price with OrderedQuantity

NativePrice

Same as Price but in native currency

ShippingFee

Shipping fee for the order item in seller currency. Unit shipping fee ( shipping fee for 1 quantity) can be obtained by dividing the shipping fee with !OrderedQuantity. Shipping fee is in seller currency

NativeShippingFee

Same as shipping fee but in the native currency of the market. For example, if the seller is in us, and the order is from amazon uk then shipping fee is in $ and native shipping fee is in pounds

RefundAmount

Actual Refunded amount for the entire order item. It is in seller currency

NativeRefundAmount

Refunded amount for the entire order item in native currency of the market

Tax

Tax for the entire order item in seller currency . Applicable only for seller central only

ShippingTax

Shipping Tax for the entire order item in seller currency. Applicable only for seller central.

UserData1… UserData30

User defined data associated to orderitem

 

OrderItemAllocationView   

This view contains high level details of the order item allocations.

 

 

Reporting Samples

Below are some real-life samples using Monsoon’s advanced reporting API.

 

Get total quantity by SKU

SELECT SUM(LocatorQuantity) AS Quantity

FROM dbo.InventoryItemLocationView

WHERE SKU=’YOUR_SKU_HERE’

 

Get available inventory where SKU starts with a prefix

SELECT

 itv.SKU AS SKU

 ,itv.ISBN AS ISBN

 ,itv.ProductCategoryName AS Category

 ,ilv.Locator AS LocatorCode

 ,itv.Title AS Title

 ,itv.Author AS Author

 ,ilv.Collectible AS Collectible

 ,itv.FirstEdition AS FirstEdition

 ,itv.Signed AS Signed

 ,ilv.LocatorQuantity AS Quantity

 ,ilv.ItemCondition AS Condition

 ,itv.JacketCondition AS JacketCondition

 ,itv.Binding AS Binding

 ,itv.Publisher AS Publisher

 ,itv.PublicationDate AS PublicationDate

FROM [InventoryItemLocationView] ilv

LEFT OUTER JOIN [ItemTraitsView] itv ON itv.InventoryItemId=ilv.InventoryItemId

WHERE ilv.LocatorQuantity > 0

AND ilv.SKU LIKE 'myprefix%'

 

Get all available classifications

SELECT DISTINCT(i.Classification)

FROM OrderDetailsView AS o (NOLOCK)

INNER JOIN InventoryItemClassificationView AS i

ON o.InventoryItemId=i.InventoryItemId

WHERE i.Classification IS NOT NULL

ORDER BY i.Classification ASC

 

 

Processed Files Are Not Archived

When Monsoon imports files, only an error file is created (as needed). The original file is destroyed.

There is no archiving of processed files.

 

 

 

 

Data File Naming Conventions

 

Inventory Naming Conventions

 

Orders Naming Conventions

 

Inventory Naming Conventions

Import

Manual

For manual inventory imports, file naming is irrelevant.

You will manually specify the file to be processed.

 

Data Exchange

Monsoon will process any file that it finds in your designated inventory ‘get’ location. File naming will not matter so far as your import functionality is concerned.

However, file name uniqueness is extremely important from a business operations point of view. Making certain that every file produced for Monsoon has a unique name will help to avoid data loss and facilitate troubleshooting (especially if your naming convention is human readable).

Using an easily generated string for your file names -— such as a standard system time stamp -— is a simple way to ensure unique file names.

E.g., This the time-stamp format YYYYMMDD-HHMMSS-FFF you might get

 

   inventory20070606-121007-324.txt

 

Processing Files

Monsoon imports all files present in the specified import directory when the import job runs. Files are then queued for processing based on the time that they were placed in the directory, oldest to newest.

If there is a timestamp included in the filename this will have no effect on processing; it only makes the files human readable.

 

 

Export

Manual

Monsoon will prompt you to name your file and specify a ‘put’ location when you manually generate an inventory export file.

However, it is always good to make your file names unique & human readable. Time-stamps are extremely handy when trying to determine how recently any given export file may have been created.

 

Data Exchange

Inventory Export files generated by a Monsoon Data Exchange will be given a standard name “Inventory” + YYYYMMDD-HHMMSS-FFF where FFF equals the fraction of the second.

   E.g., Following the time-stamp format YYYYMMDD-HHMMSS-FFF you might get

Inventory20070606-121007-324.txt

 

 

 

Orders Naming Conventions

Import

Manual

It is not possible to manually select an Orders file for import.

 

Data Exchange

Monsoon will process any file that it finds in your designated Orders ‘get’ location. File naming will not matter so far as your import functionality is concerned.

However, file name uniqueness is extremely important from a business operations point of view. Making certain that every file produced for Monsoon has a unique name will help to avoid data loss and facilitate troubleshooting (especially if your naming convention is human readable).

Using an easily generated string for your file names -— such as a standard system time stamp -— is a simple way to ensure unique file names.

E.g., Following the time-stamp format YYYYMMDD-HHMMSS-FFF you might get

Orders20070606-121007-324.txt

 

Processing Files

Monsoon imports all files present in the specified import directory when the import job runs. Files are then queued for processing based on the time that they were placed in the directory, oldest to newest.

 

If there is a timestamp included in the filename this will have no effect on processing; it only makes the files human-readable.

 

Export

Manual

Monsoon will prompt you to name your file and specify a ‘put’ location when you manually generate an Order Export file.

However, it is always good to make your file names unique & human readable. Time-stamps are extremely handy when trying to determine how recently any given export file may have been created.

 

Data Exchange

Order Export files generated by a Monsoon Data Exchange will be given a standard name “Orders” + YYYYMMDD-HHMMSS-FFF where FFF equals the fraction of the second.

   E.g., Following the time-stamp format YYYYMMDD-HHMMSS-FFF you might get

Orders20070606-121007-324.txt

 

 

 

Resources

Additional examples and documentation available at our development portal:

Go to http://portal.appdev.Monsoonworks.com:8082/gf/ 

 

Complete Monsoon Product User Documentation is also available

 

 

Appendix A: Inventory Data Definitions

 

The data described in this table is specific to and necessary for the proper function of Monsoon in tracking and managing your inventory.

All of these data elements relate to Monsoon’s identification and tracking of items, and should be used for all product categories.

 

Monsoon-Specific Inventory Data

Header

Definition

Legal Values

MonsoonOP

Denotes the action to be taken by Monsoon per data row

- add inventory

 

a

- modify inventory

 

m

- delete inventory

 

d

NonStandard

This column must be included for Non-Standard imports to “force” the item to be imported.

 

The “Y” value must appear on each line item that is to be “forced” — a null value will be read as “N”

 

For Standard import files, it is best simply to omit this column.

 

Y or N or null

SKU

Stock Keeping Unit: This field is used as your internal tracking number.   You can either use your own, external SKU or if left blank this will default to a new Monsoon SKU.

 

 

Quantity

The number of like items under this SKU.

 

Maximum value cannot exceed 32000

 

 

 

 

Category

The inventory Category for this item (see below for more Category-related fields)

 

 

Condition

The condition of this item is brand new.

 

new

The condition of this item is Used, but appears to be New.

 

like new

The overall condition of this item is Used.

 

very good

The condition of this item is Used.

 

good

The condition of this item is Used.

 

acceptable

The condition of this item is Used.

 

refurbished

Collectible

Is the item to be listed on Amazon Marketplaces as “collectible”

 

Y or N

Price

The price you wish to assign to this specific item

 

 

Notes

Item notes to be listed online

 

 

Title

Name of the item

 

 

Weight

Physical weight of Inventory Item in pounds

 

 

Height

Physical height of Inventory Item in inches

 

 

Length

Physical length of Inventory Item in inches

 

 

CostOfGoods

The cost to stock this item

 

 

Profit

The fixed amount -— $ or % -— of profit to be made from the sale of this item

 

 

PriceStrategy

Name of the Pricing Strategy you wish to assign to this specific item

 

 

LocatorCode

The designated location of an item

 

 

WarehouseLocator

The designated warehouse location of an item

 

 

Classification

   The Classification you want to assign to your item

   In Edge, Pro & Warehouse you may assign more than one classification to a single item. List all classifications to be assigned in the same cell, separated by a colon

   e.g., Rare:Heavy:Vendor123

 

 

LastReceived

The most recent time at which a given SKU’s quantity was increased.

 

 

PriceOneBay

The current price the item is listed on eBay

 

 

PriceOnHalf

The current price the item is listed on Half.com

 

 

PriceOnAlibris

The current price the item is listed on Alibris.com

 

 

PriceOnAmazon

The current price the item is listed on Amazon.com

 

 

PriceOnAmazonSellerCentral

The current price the item is listed on Amazon Seller Central

 

 

PriceOnAbebooks

The current price the item is listed on AbeBooks.com

 

 

PriceOnAmazonUK

The current price the item is listed on Amazon.co.uk

 

 

AmazonLowestPrice

The lowest price currently being offered for this item on Amazon.

 

Export Only —

This data is only exported; is not supported for import.

 

 

 

For more information, see Supported Item Identifiers.

 

 

Supported Standard Identifiers

The following industry standards are recognized by Monsoon.

   These are the values which define the Monsoon Standard Import functions.

   At least one of these values is required for Dynamic Pricing.2

 

 

Supported Item Identifiers

Header

Definition

Legal Values

ISBN

International Standard Book Numbering 

This is the standard identification number for books published after 1966

 

10 or 13 characters in length

 

 

UPC

Universal Product Code 

Required for some categories. See category specific traits for more information

 

12 or 13 characters in length.

 

 

ASIN

Amazon Standard Identification Number

Amazon.com's identification number that has been created for every item that is bought or sold on Amazon

 

Maximum of 10 characters

 

 

EAN

European Article Number 

- Items with only an EAN and no other Identifier will only be listed on Seller Central.

 

12 or 13 characters in length.

 

 

 

For more information, see Common Inventory Data Elements.

 

 

Data Elements Common to All Categories

Every Category supported by Monsoon have the following data elements available.

 

Common Inventory Data Elements

Header

Definition

Legal Values

AmazonSalesRank

Amazon’s sales ranking for this item

 

This data is only exported; is not supported for import.

Export Only

 

AmazonTotalOffers

# of competitor offers for this item

 

This data is only exported; is not supported for import.

 

Export Only

 

Height

Height of the item in inches

Up to 19 digits with 4 decimals

 

 

Length

Length of the item in inches

Up to 19 digits with 4 decimals

 

 

Weight

Weight of item in pounds.

Up to 19 digits with 4 decimals

 

 

Width

Width of item in inches

Up to 19 digits with 4 decimals

 

 

Keywords

Set of search terms that refer to this item

 

ImageUrl1

Location of image file to be uploaded

 

ImageUrl2

Location of image file to be uploaded

 

ImageUrl3

Location of image file to be uploaded

 

ImageUrl4

Location of image file to be uploaded

 

ImageUrl5

Location of image file to be uploaded

 

ImageUrl6

Location of image file to be uploaded

 

ImageUrl7

Location of image file to be uploaded

 

ImageUrl8

Location of image file to be uploaded

 

ImageUrl9

Location of image file to be uploaded

 

UserData1

UserData2

UserData3

UserData...

UserData25

 

Any alphanumeric data required by non-Monsoon systems for integration and Data Exchange

 

NumericUserData1

NumericUserData2

NumericUserData3

NumericUserData...

NumericUserData25

 

Any numeric data required by non-Monsoon systems for integration and Data Exchange

 

ListPrice

Manufacturer’s Suggested Retail Price of the inventory item in local currency.

Maximum of 32 characters in length.

 

 

MarketPrice

Base Price — listed in local currency.

Maximum of 32 characters in length.

For more information, see Base Price.

 

PriceOneBay

 

The most current listed price of this item on the eBay market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOneBay is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOneBayUK

 

The most current listed price of this item on the eBay.co.uk market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOneBayUK is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAmazon

 

The most current listed price of this item on the Amazon.com marketplace.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAmazon is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAmazonSellerCentral

 

The most current listed price of this item on the Amazon Seller Central market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAmazonSellerCentral is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAmazonUK

 

The most current listed price of this item on the Amazon.co.uk market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAmazonUK is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAmazonCA

 

The most current listed price of this item on the Amazon.ca market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAmazonCA is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAmazonFR

 

The most current listed price of this item on the Amazon.fr market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAmazonFR is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAmazonDE

 

The most current listed price of this item on the Amazon.de market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAmazonDE is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAlibris

 

The most current listed price of this item on the Alibris market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAlibris is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnAbebooks

 

The most current listed price of this item on the AbeBooks market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnAbebooks is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnHalf.com

 

The most current listed price of this item on the Half.com market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnHalf.com is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnPlay.com

 

The most current listed price of this item on the Play.com market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnPlay.com is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceOnBuy.com

 

The most current listed price of this item on the Buy.com market.

 

Price data will only be imported when the corresponding market price strategy PriceStrategyOnBuy.com is specified as Fixed Price in the same import file.

 

Your price data will be ignored if you do not specify Fixed Price.

 

 

PriceStrategyOneBay

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOneBayUK

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAmazon

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAmazonSellerCentral

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAmazonUK

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAmazonCA

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAmazonFR

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAmazonDE

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAlibris

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnAbebooks

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnHalf.com

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnPlay.com

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

PriceStrategyOnBuy.com

 

default

Lowest Price

Fixed Price

Avg Lowest 3

Avg Lowest 5

 

NOTE: You may also import Custom Pricing Strategies — use the name of the strategy exactly as it appears in the Custom Pricing Strategies screen.

 

eBayStoreCategory

 

The first of two custom category labels allowed on eBay Stores.

 

You must supply the eBay Category ID in your import file.

For more information, see Importing eBay Store and eBay UK Shop Categories.

 

eBayStoreCategory2

 

The second of two custom category labels allowed on eBay Stores.

 

You must supply the eBay Category ID in your import file.

For more information, see Importing eBay Store and eBay UK Shop Categories.

 

eBayUKStoreCategory

 

The first of two custom category labels allowed on eBay.co.uk Shops.

 

You must supply the eBay Category ID in your import file.

For more information, see Importing eBay Store and eBay UK Shop Categories.

 

eBayUKStoreCategory2

 

The second of two custom category labels allowed on eBay.co.uk Shops.

 

You must supply the eBay Category ID in your import file.

For more information, see Importing eBay Store and eBay UK Shop Categories.

 

 

For more information, see Common Consumer Goods Data Elements.

 

 

 

Data Elements Common to All Consumer Goods Categories

 

Common Consumer Goods Data Elements

Header

Definition

Legal Values

Description

Product description

maximum 2000 characters

 

 

Feature1

Description of special feature

maximum 2000 characters

 

 

Feature2

Description of special feature

maximum 2000 characters

 

 

Feature3

Description of special feature

maximum 2000 characters

 

 

Feature4

Description of special feature

maximum 2000 characters

 

 

Feature5

Description of special feature

maximum 2000 characters

 

 

Manufacturer

Maximum of 50 characters in length.

Required for some categories.

See category-specific traits below for more information.

 

 

ManufacturerPartNumber

Maximum of 50 characters in length.

Required for some categories.

See category-specific traits below for more information.

 

 

MAP

Manufacturer’s Advertised Price 

Maximum of 50 characters in length.

Required for some categories.

See category-specific traits below for more information.

 

Export Only

 

 

 

Click on a category listed below to see a list of the data elements that are specific to that category.

Books

Music

DVD

VHS Videos

Computers

Consumer Electronics

Tools

Cameras

Photo Accessories

Software

Video Games

Video Game Accessories

Auto Parts And Accessories

Home and Garden

Office Products

Baby Products

Toys and Games

Jewelry and Watches

Wireless

Musical Instruments

Food and Household

Health and Personal Care

Pet Supplies

Sports and Fitness

Beauty

 

 

Category-Specific Data Elements

Every product Category has unique characteristics and requirements.

This information should be used in addition to the Data Elements Common to All Categories and Data Elements Common to All Consumer Goods Categories described above.

 

 

Books

Header

Definition

Legal Values

Category

 

Books

 

Author

Author of the Book

Maximum of 255 characters in length

 

 

Binding

Binding Condition of the Book

Maximum of 32 characters in length

 

 

ISBN

International Standard Book Numbering: This is the standard identification number for books published after 1966

Maximum of 13 characters in length

 

 

NumberOfPages

Number of Pages in Book

Maximum of 32 characters in length

 

 

PublicationDate

Date of publication

Maximum of 32 characters in length

 

 

Publisher

Publisher of the Book

Maximum of 32 characters in length

 

 

Signed

Is this Book Signed?

Y or N

FirstEdition

Is this Book a First Edition

Y or N

DustJacket

Does the Book have a DustJacket?

Y or N

JacketCondition

Condition of the book’s Jacket

** Same as “Condition” above **

Maximum of 32 characters in length

 

New

Like New

Very Good

Good

Acceptable

 

 

 

 

Music

Header

Definition

Legal Values

Category

 

Music

 

Artist

Performing Artist

Maximum of 255 characters in length.

 

 

Binding

Condition of the Binding of the Music Item.

Maximum of 255 characters in length.

 

 

Creator

Creator of the Music Item

Maximum of 255 characters in length.

 

 

Format

What type of Music Item is it (i.e. LP, CD, Tape, Beta, etc…)

Maximum of 255 characters in length.

 

 

Label

Which Label the Music Item has been produced by (i.e. Virgin, Capitol Records, etc…).

Maximum of 255 characters in length.

 

 

NumberOfDiscs

How Many Discs/Records/Tapes are included with this Music Item.

Maximum of 255 characters in length.

 

 

Releasedate

The Release Date of the Music Item.

Maximum of 255 characters in length.

 

 

 

 

 

DVD

Header

Definition

Legal Values

Category

 

 

Dvds

 

Actor

Main Actors/Actresses in the Movie.

Maximum of 255 characters in length.

 

 

AudienceRating

Rating of the Movie (i.e. G, PG, PG-13, R, NC-17, UR).

Maximum of 255 characters in length.

 

 

Director

Director of the Movie

Maximum of 255 characters in length.

 

 

Format

Type of DVD Movie (i.e. UMD, DVD)

Maximum of 255 characters in length.

 

 

Languages

Supported Languages in the Movie.

Maximum of 255 characters in length.

 

 

RegionCode

Region Code of the DVD (i.e. North American DVD's are encoded as Region 1)

Maximum of 255 characters in length.

 

 

ReleaseDate

Date of Release for the DVD.

Maximum of 255 characters in length.

 

 

RunningTime

The Running Time of the Movie.

Maximum of 255 characters in length.

 

 

Studio

What Studio produced the Movie (i.e. Warner Bros., Dreamworks, etc…)

Maximum of 255 characters in length.

 

 

TheatricalReleaseDate

Date the Movie was released in the theaters.

Maximum of 255 characters in length.

 

 

 

 

 

VHS Videos

Header

Definition

Legal Values

Category

 

 

VhsVideos

 

Actor

Main Actors/Actresses in the Movie.

Maximum of 255 characters in length.

 

 

AudienceRating

Rating of the Movie (i.e. G, PG, PG-13, R, NC-17, UR).

Maximum of 255 characters in length.

 

 

Director

Director of the Movie

Maximum of 255 characters in length.

 

 

Format

Type of DVD Movie (i.e. UMD, DVD)

Maximum of 255 characters in length.

 

 

Languages

Supported Languages in the Movie.

Maximum of 255 characters in length.

 

 

RegionCode

Region Code of the DVD (i.e. North American DVD's are encoded as Region 1)

Maximum of 255 characters in length.

 

 

ReleaseDate

Date of Release for the DVD.

Maximum of 255 characters in length.

 

 

RunningTime

The Running Time of the Movie.

Maximum of 255 characters in length.

 

 

Studio

What Studio produced the Movie (i.e. Warner Bros., Dreamworks, etc…)

Maximum of 255 characters in length.

 

 

TheatricalReleaseDate

Date the Movie was released in the theaters.

Maximum of 255 characters in length.

 

 

 

 

Computers

Header

Definition

Legal Values

Category

 

 

Computers

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Platform

 

Maximum of 32 characters in length.

 

Linux

Max

Windows

Unix

 

HardDriveSize

 

Units in Gigabytes.

Max 19 digits including 4 decimal places.

 

 

 

HardDriveInterface

 

Maximum of 32 characters in length.

 

IDE

SCSI

Serial ATA

 

CPUType

 

Maximum of 32 characters in length.

 

AMD Athlon

AMD Duron

AMD Opteron

AMD Sempron

Intel Celeron

Intel Pentium

Intel Pentium M

Intel Xeon

PowerPC G3

PowerPC G4

PowerPC G5

 

RAM

 

Units in Megabytes

Maximum 19 digits with 4 decimal points

 

 

CPU

Maximum of 32 characters in length.

 

AMD

IBM

Intel

Motorola

Transmeta

VIA

 

ProcessorCount

Maximum of 32 characters in length.

 

 

CPUSpeed

Units in Megahertz

Max 19 digits including 4 decimal places.

 

 

OS

 

 

DOS

Linux

OSX

None

95

98

98SE

ME

NT

2000

2003Server

XPHome

XPPro

MediaCenter

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Consumer Electronics

Header

Definition

Legal Values

Category

 

 

ConsumerElectronics

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Tools

Header

Definition

Legal Values

Category

 

 

Tools

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Cameras

Header

Definition

Legal Values

Category

 

 

Cameras

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

OpticalZoom

 

Maximum of 50 characters in length.

 

 

Megapixels

 

Unit of measure is megapixels.

Required for Digital Cameras

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Photo Accessories

Header

Definition

Legal Values

Category

 

 

PhotoAccessories

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Software

Header

Definition

Legal Values

Category

 

 

Software

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

ReleaseDate

 

Maximum of 32 characters in length.

 

 

Platform

 

 

Linux

Mac

Windows

Unix

 

OS

 

 

DOS

Linux

OSX

None

95

98

98SE

ME

NT

2000

2003Server

XPHome

XPPro

MediaCenter

 

Format

 

 

DVD

CD

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Video Games

Header

Definition

Legal Values

Category

 

 

VideoGames

 

UPC

Required for all Consumer Goods categories if selling on Amazon Seller Central.

Maximum of 12 characters.

 

 

ReleaseDate

 

Maximum of 32 characters in length.

 

 

Genre

 

 

Action

Adventure

Arcade

Board

Driving

Online

Puzzle

Role Play

Shooter

Sports

Strategy

Trivia

 

ESRB

 

EC

E

E10

T

M

AO

Pending

 

Platform

 

Maximum of 32 characters in length.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Video Game Accessories

Header

Definition

Legal Values

Category

 

 

VideoGameAccessories

 

UPC

Required for all Consumer Goods categories when selling on Amazon Seller Central.

Maximum of 12 characters.

 

 

Platform

 

Maximum of 32 characters in length.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Auto Parts And Accessories

Header

Definition

Legal Values

Category

 

 

AutoPartsAndAccessories

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Fitment1

 

Maximum of 255 characters in length

 

 

Fitment2

 

Maximum of 255 characters in length

 

 

Fitment3

 

Maximum of 255 characters in length

 

 

Fitment4

 

Maximum of 255 characters in length

 

 

Fitment5

 

Maximum of 255 characters in length

 

 

Fitment6

 

Maximum of 255 characters in length

 

 

Fitment7

 

Maximum of 255 characters in length

 

Fitment8

 

Maximum of 255 characters in length

 

 

Fitment9

 

Maximum of 255 characters in length

 

 

Fitment10

 

Maximum of 255 characters in length

 

 

 

 

Home and Garden

Header

Definition

Legal Values

Category

 

 

HomeGarden

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

Office Products

Header

Definition

Legal Values

Category

 

 

OfficeProducts

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Baby Products

Header

Definition

Legal Values

Category

 

 

BabyProducts

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Toys and Games

Header

Definition

Legal Values

Category

 

 

ToysAndGames

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Jewelry and Watches

Header

Definition

Legal Values

Category

 

 

Jewelry

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

Wireless

Header

Definition

Legal Values

Category

 

 

Wireless

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Musical Instruments

Header

Definition

Legal Values

Category

 

 

MusicalInstruments

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

Food and Household

Header

Definition

Legal Values

Category

 

 

Gourmet

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

 

 

Health and Personal Care

Header

Definition

Legal Values

Category

 

 

HealthPersonalCare

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

Pet Supplies

Header

Definition

Legal Values

Category

 

 

PetSupplies

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

Sports and Fitness

Header

Definition

Legal Values

Category

 

 

SportsFitness

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

Beauty

Header

Definition

Legal Values

Category

 

 

Beauty

 

UPC

Required for all Consumer Goods categories.

Maximum of 12 characters.

 

 

Manufacturer

 

Maximum of 50 characters in length.

 

 

ManufacturerPartNumber

 

Maximum of 40 characters in length.

 

 

Brand

 

Maximum of 50 characters in length.

 

 

 

 

 

 

Appendix B: Order Data Definitions

Required Order Data

The following table lists all data headers required (and optional) for successful Order Imports.

In many cases, only the data header is required; Not all data is required for every operation. See the sample files available in Appendix D for specific examples.

Y = data is required for every row in the file

N = Field cannot be modified via Import; any data included will be ignored

n/a = data modification for this field will be enabled in a future release

Otherwise, only the column header is required.

All of the data definitions for Order-Export files created by Monsoon will be the same as those listed here.

 

Order Export  files do not include the MonsoonOP column listed below.

This header is required for any Order Import.

 

If you look at an Order Export file you will notice Extraneous Data appended to the end of the Order data.

For more information, see Extraneous Order Export Data.

 

Import Data is Case Sensitive

Order Import files have many valid column headers.

   All headers are case sensitive

   20 of these fields must be present in every import file.

For more information, see Order Import Data Requirements.

 

For more general details on all aspects of Order Import and Export, see Orders Export & Import .

 

 

Order Import Data Requirements

For all Order Import files, the following rules apply:

Column headers listed in black must be included in every order import file.

   All data fields must be populated.

Column headers listed in green must be included in every Order Import file.

   Data fields themselves may be left blank if you do not wish to add or modify data for that item/column.

Column headers listed in blue are optional.

   These may be omitted from Order Import files entirely.

 

 

Order Import Data Definitions

Column Headers

Data Definition

Legal Values

Data required to:

Add Orders Received from a Data Exchange

Modify orders received from a Data Exchange

Modify Monsoon Orders

MonsoonOPA 

 

Create new order entry in Monsoon.

For more information, see Import Operators.

a

Y

Y

Y

Overwrite existing database entry with data from file

m

Y

Y

Y

MonsoonOrderIdB 

Order ID created by Monsoon

MonsoonorderId is required for orders received from supported Online Markets.

N

N

Y

OrderStatus 

Describes the current point in the Order Lifecycle for the order in question.

NewC

Shipped

Cancelled.D

Y

Y

Y

MarketName 

Name of the Online Market (or Data Exchange) where the order originated.

For Data Exchanges, this will appear as Mkt001, Mktoo2; not the Data Exchange name appearing on the Data Exchange Settings screen.

 

 

 

MarketOrderIdE 

The order identification number supplied by the market (not Monsoon)

 

 

Y

Y

N

ShipMethod 

The type of shipping paid for on the market

 

standard

expedited

international

Y

N

N

OrderDate 

The date that the order was created on the market

 

 

Y

N

N

ShipDate 

Ship Date for the order (Ship date specified in the first order item is taken)

 

 

N

Y

Y

OrderNote 

Any special notes attached to this order.

 

 

Y

n/a

n/a

TrackingNumber 

Shipment tracking number

For multiple item orders, Monsoon will read only the first occurrence of the Tracking Number.

N

Y

Y

ActualPostage 

Actual postage for the order (Postage specified in the first order item is taken). Assumed in Seller Currency

 

N

Y

Y

CarrierCode 

the postal carrier identified for this order on the Seller Central market.

Export Only 

 

n/a

n/a

n/a

FulfillmentLatency 

Corresponds to the Lead-Time to Ship value in the Monsoon UI

 

 

 

 

 

BuyerEmail 

 

 

Y

n/a

n/a

BuyerName 

 

 

Y

n/a

n/a

ShipToName 

 

 

Y

n/a

n/a

Address1 

 

 

Y

n/a

n/a

Address2 

 

 

Y

n/a

n/a

City 

 

 

Y

n/a

n/a

State 

 

 

Y

n/a

n/a

PostalCode 

 

 

Y

n/a

n/a

Country 

 

 

Y

n/a

n/a

BuyerPhoneNumber 

 

 

 

 

 

SKU 

<See Inventory Definitions>

SKU is required for all operations; cannot be changed in the case of modify operations

Y

Y

Y

ASIN 

 

 

 

 

 

UPC 

 

 

 

 

 

Category 

 

 

 

 

 

Title 

 

 

 

 

 

Classification 

 

 

 

 

 

Condition 

 

 

 

 

 

LocatorCode 

 

 

 

 

 

OrderedQuantity 

 

 

Y

N

N

ShippedQuantity 

Actual Quantity shippedF

 

N

Y

Y

Price 

price per qty

 

Y

N

N

ShippingFee 

 

 

Y

N

N

MarketPrice 

 

 

 

 

 

MarketShippingFee 

 

 

 

 

 

RefundAmount 

Amount refunded for the order item

This amount should be in Seller’s local currency (e.g., UK-based sellers should note the value in pounds) as a decimal value — do not use a currency symbol.

N

Y

Y

MarketRefundAmount 

 

This value will be equal to RefundAmount for US-based sellers; UK-based sellers will see a decimal value listed in $US in this field.

 

 

 

Tax 

Tax for the order item (per qty). Assumed in Seller Currency. USD for us sellers and GPB for uk sellers.

Tax appears as the item-level amount; not the total amount.

Y

Y

Y

ShippingTax 

Shipping Tax for the order item (per qty). Assumed in Seller Currency. USD for us sellers and GPB for uk sellers.

 

Y

Y

Y

ShipDate 

 

The date order was shipped (the ship date will be taken from the first item in the order)

N

Y

Y

MarketOrderItemId 

 

 

 

 

 

Further Data Definitions —

See Appendix A: Inventory Data Definitions for further, inventory-related definitions 

 

 

 

 

 

AOnly needed for Order-Import files. This column header will not be present in Order-Export files.

BFor Orders received from Data Exchange sources, MarketOrderId must be used in place of MonsoonOrderId. It is not possible to import Orders with an OrderStatus of ‘New’ for orders with a MonsoonOrderId.

COrders with Monsoon-generated SKUs (e.g., mon0000000059) or a MonsoonOrderId cannot be imported with an OrderStatus of New.

DSee the Processing Orders Guide for explanations of Order Status

EAll orders received from a Data Exchange must include MarketOrderId. Only orders received from a Data Exchange may be imported with a status of ‘New’ -- When a MarketOrderId is present, the MonsoonOrderId field must be left blank.

FTo change a ShippedQuantity to a zero, you must change the OrderStatus to “Cancelled”. OrderStatus will over-ride the value entered in ShippedQuantity — “Cancelled” will set a ShippedQuantity to zero; “Shipped” with a zero ShippedQuantity value will cause the new ShippedQuantity value to be ignored.

 

 

 

 

Optional Order Data

The following column headers are optional. These are not required for import. Leaving them out of your import file will not cause your import to fail. (These data elements are all included in the table immediately above this one)

NOTE: If a particular data element is marked as “Required”, it is only required when the column header is present.

 

Optional Order Data

Optional Header

Required for Add

Required for Custom Market Modify

Required for Monsoon Order Modify

Definition

Legal Values

ShippedQuantity

 

Y

Y

Actual Quantity shipped

 

TrackingNumber

 

 

 

Shipment tracking number

 

RefundAmount

 

 

 

Amount refunded for the order item

 

Tax

 

 

 

Tax for the order item (per qty)

 

ShippingTax

 

 

 

Shipping Tax for the order item (per qty)

 

ActualPostage

 

 

 

Actual postage for the total order (Postage specified in the first order item is taken)

 

ShipDate

 

 

 

Ship Date for the order (Ship date specified in the first order item is taken)

 

 

 

Appendix C: Notes on Data Exchange

Monsoon supports integration with third party inventory management systems, shipping systems and Custom Markets.

Integration is handled using Monsoon’s Data Exchange feature within the Software User Interface. Contact Monsoon Support for further details.

 

 

 

 

Appendix D: Data Samples & Templates

Inventory Sample Data

Import

Inventory Import File for Testing

Inventory-Add Import sample (larger)

Inventory Import Error File

Export

Inventory Export Sample (smaller)

Inventory Export File (as named by Monsoon's export process)

 

Monsoon will be writing the inventory and order export out to tab-delimited files. Monsoon also requires tab-delimited files when importing all data.

 

Orders Sample Data

Import

Order-Add Import sample (simple)

Order-Add Import Sample File (larger)

Order-Modify Import sample (simple)

Order-Update Import Sample File

Export

Order Export Sample (simple) 

Order Export Sample File

Order Export Sample (as named by Monsoon's export process)

 

 

Monsoon Data Workbook

Download a multi-tabbed workbook, containing

• Data examples and explanations

• Data mapping worksheets

• A Standard Inventory Import template

• Category-specific Inventory Import templates

 

 

Inventory File Parsing (Code Sample)

Below is a sample of Monsoon's API writing the data to a tab delimited file.

You may use this as an example for how you can develop your code to read in the file.

Please also review the inventory export file sample, which you will need to read into your prep software, as well as an order import file sample, which you’ll need to send to your Monsoon software when orders are placed.

 

Monsoon will be writing the inventory export out to tab-delimited files. Monsoon also requires tab-delimited files when importing data.

 

//Monsoon Example: C#

using System.IO;

using System.Threading;

public FileStream Open(FileInfo file) {

int count = 0;

const int MAX_TRY = 100;

while (count++ < MAX_TRY) {

try {

return new FileStream(file.FullName, FileMode.Open, FileAccess.Read, FileShare.None);

}

catch (IOException) {

Thread.Sleep(TimeSpan.FromSeconds(1));

}

}

throw new IOException();

}