The project is designed to retrieve the FBM orders from Amazon Marketplace (Seller Central) at a specific interval and create the corresponding Standard Sales Order on NetSuite. Once the Orders/Items are fulfilled on NetSuite, the corresponding Item Fulfillments are retrieved from the NetSuite and updated as a Shipment to the Amazon Order. If the Shipment processing fails on Amazon, a rejected email notification is also automatically generated.
Supported integration flows
- Pre-built Integration Flows: Integration flows in CIC are provided to retrieve orders from Amazon Market Place (AMP) and create the corresponding Sales Order in NetSuite. If the customer does not already exist, the customer is created in NetSuite before creating the Sales Order. Once the Order is fulfilled, the integration flow automatically retrieves the Item Fulfillment from NetSuite and updates the Order with the shipment details.
- Throttling: If the API requests are throttled on Amazon, the Accelerator handles the throttling without any manual intervention. The process execution waits as per the throttling restore rates from the AMP API limits.
- No order loss: The Accelerator is designed in such a way that there is no order that is missed while retrieving from AMP. The Accelerator also ensures that duplicate orders are not created in NetSuite.
- Rejected Order Fulfillment Email Notification: If the Order Fulfillment is rejected while processing on the AMP, the user will be notified via an email.
- Error Handling and Ticket Creation: Accelerator ensures all the processing failures are logged as a ticket and is marked as Issue in the Cockpit
- Integration Design Specification Template: This is a default mapping template for a Transaction between source and target ecosystem entities. The Integration Design Specification describes the transaction type, Data Flow direction, source data, target data, and relevant application version(s). It also includes applicable B2B/API elements and mapping rules. The helps to explain the business rules that are applied while creating the order on the NetSuite from the AMP Order. The template helps in documenting any changes to the template as per your requirement
- Customer Creation: If the customer does not already exist in the NetSuite then Accelerator creates the customer in real-time, based on the customer email.
- Out of the box Cockpit visibility: Accelerator is already enabled with the resources necessary to display data in several Cockpit monitoring pages.
- The Trip view provides the life cycle of an Amazon Order along with the shipment
- Accelerators are also enabled to have out-of-the-box charts to monitor the marketplace-related transactions. (view shown below)
- Dashboard > Chart transactions screenshot with details. AMP Order activity chart shows total amount and orders count.
(Order fulfillment shows total count)
(Fulfillment result shows total count)
Prerequisites (Connector Projects, Custom fields, SKU)
Create required connector Projects in your workspace. Use the naming conventions shown here.
Note: this must be done before running the wizard setup steps.
|Connector Type||Project Name|
|Amazon Market Place (AMP)||com.cleo.cic.connector.amp|
The custom fields should be created beforehand in NetSuite. The table below provides a list of custom fields used for this integration. Additional information on NetSuite Custom fields can be found in NetSuite documentation.
Note: When there are changes to custom field IDs, the translation Rulesets must be updated accordingly.
|Custom Field ID||Type||Data Type||Sales Order||Item Fulfilment|
|custbody_cleo_amazon_order_id||Transaction Body Field||String||TRUE||TRUE|
|custcol_cleo_item_id||Transaction Column Field||String||TRUE||
|custbody_cleo_source_status||Transaction Body Field||String||TRUE||TRUE|
|custbody_cleo_source||Transaction Body Field||String||TRUE||TRUE|
|custbody_cleo_market_place_id||Transaction Body Field||String||TRUE||TRUE|
Accelerator assumes that the SellerSKU on AMP for the specific Item is the same as the SalesOrder\SalesOrderItemList\SalesOrderItem\internalId in NetSuite for the specific Item.
Always be sure to have matching SKUs exist in both Amazon and NetSuite (i.e. same SKU name/number (item internal id).
If you don't already have one, follow these steps:
- In your Amazon Seller Central account, Go to the Inventory tab > Add product and create a new product.
- In NetSuite, Go to Lists > Accounting > Items > New > Inventory Item and create an item record for the same item. The Item internal id should be the same as the Amazon item SKU id.
- Refer to the vendor documentation to find SKU on Amazon seller central account.
- Go to your inventory. You will see a column called SKU Eg. SKU for different products highlighted below.
- To find the internal id on NetSuite, refer to https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_N2904231.html
What’s not supported
- Inventory and Price feeds/updates are not included.
- There is no validation in place to verify if the Item Price is not the same as the Base Price for the Inventory Item in the NetSuite. The Rate in NetSuite is mapped with Unit Price from the Amazon Order. Rate = Amount / QuantityOrdered
- Batching of the Feeds for the OrderFulfillment is not supported.
- Currently, the Accelerator doesn't work for canceled orders to be inserted into NetSuite. They are retrieved from AMP and users can extend the logic as per the requirements.
How to Add a New Flow
If you find any flow that is not covered as part of the Accelerator, you can create a new extended Project to add the specific flows as per your requirements.
For example, if Inventory flow needs to be added, follow the steps mentioned below.
- Create a new Project: com.cleo._customer_.booster.netsuite.extended.
- Add a Booster Project: com.cleo._customer_.booster.netsuite.
2a: Set this Project as a dependency (from the Manifest.MF file) to the com.cleo._customer_.booster.netsuite.extended Project created above.
- In the project com.cleo._customer_.booster.netsuite.extended, create the following package: com.cleo._customer_.booster.netsuite.extended.inventory.
3a: Create your BP Schedulers and Rulesets (This includes Launcher, DARS, Search Request, and Search Response).
- Create a new Project: com.cleo._customer_.booster.amp.extended.
4a: Add Booster Project com.cleo._customer_.booster.amp as a dependency (from Manifest.MF file) to the com.cleo._customer_.booster.amp.extended Project.
- In the com.cleo._customer_.booster.amp.extended Project, create a new package: com.cleo._customer_.booster.amp.extended.inventory.
- Create a new Project: com.cleo._customer_.ampnetsuite.extended.
6a: Add the Booster Project com.cleo._customer_.booster.ampnetsuite as a dependency (from Manifest.MF file) of com.cleo._customer_.booster.ampnetsuite.extended Project.
- In the com.cleo._customer_.ampnetsuite.extended Project, create a new package: com.cleo._customer_.ampnetsuite.extended.inventory.
7a: Create a Route Business Process and configure it as required.
7b: Create the Transformation Ruleset per your business requirements.
- Deploy all the Projects that have changed.
- Run and test.
Please contact Cleo Support for assistance on the Project structure.
Detailed Accelerator documentation on the project structure and object-level details is available in the Project: com.cleo._customer_.ampnetsuite.docs. (Workflow and Project Details for AMP NetSuite Accelerator.pdf)
How to Configure the Cleo-Supplied Staging Database
Take these steps to configure the Cleo-provided staging database.
- Deploy the project - com.cleo.cic.util
- Create the required table by running this Business Process - com.cleo.cic.util.processes.CreateStagingDataTableBPS.
- To verify if the setup is complete, refer to the auditor logs. The auditor logs display the specific step details. If there are issues (driver or connection issues, for example), they will appear in the logs; in this case you must take corrective action and run the Business Process again.