Hemi Connectors / Amazon MCF Technical Scope / Authentication, Database Structure & Limits

Authentication, Database Structure & Limits

Summary of Changes: (The purpose of this table is to keep traceability and Product team to highlight the things that were changed into the scope, based on comments or discussions)

Version Date Created / Updated Notes
v1.0 05.03.2025 Bogomil Pavlov First publish
v1.1 07.05.2025 Bogomil Pavlov Split By Seller Structure

Authentication

The authentication is the same as Amazon Selling Partner so we want to have the same flow as Amazon SP-API Authorization and Database structure but as part of the connector setup.

Please note for one amazon account we can have many active refresh tokens and only one active access token per refresh token.

Database

Additional tables will need to be created, however please note the structure and names are just suggestions.

Amazon MCF Connector - here we will be storing all the MCF details required from the connection to work and this is our starting point. Please note this table should be accessible via the menu under the connector section

Field Name Type Required Comment Default Value
Name varchar Yes Field for internal use to differentiate the Amazon MCF connectors.
Active checkbox No Flag indicating if the Amazon MCF connector is active and based on this we can switch off and on the connector false
Integration ID dropdown Yes The ids of the Integration Credentials
Merchant ID varchar Yes The client Amazon Merchant Id
Oauth Began Checkbox No Indicating if the Oauth process has started
Client Email varchar Yes Used to send the authentication email
Access Token varchar No Access Token populated automatically once we authorize.
Stored in cache
Refresh Token varchar No Refresh Token populated automatically once we authorize.
No visible in the UI
Create Orders checkbox No Flag indicating if we would like to export/create new orders false
Bundle Items for Export Dropdown Yes Bundle

Components Both | Components | | Send Customer Email | checkbox | No | | false | | Get Stock | checkbox | No | Flag indicating if we would like to get stock from Amazon MCF and populate it in our location quantities | false | | Get Refunds | checkbox | No | Flag indicating if we would like to get refunds | false | | Get Cancellations | checkbox | No | Flag indicating if we would like to get cancellations | false | | Get Shipments | checkbox | No | Flag indicating if we would like to get shipping details | false | | <v1.1>Export Orders Per Seller | checkbox | No | Flag indicating if we want to pick order items only from the added sellers in Amazon MCF Connector Seller | false</v1.1> |

Please note: The Get Refunds/Cancellations/Shipments flags work as a logic marker if we should STORE an ACTION from these. We will always see these statuses come when we make “Get Fulfilment Orders” as we do not filter by status there. This means we will always have the internal Amazon MCF order status mapped based on the latest we’ve seen from the connector BUT we might not action it any further. For example - if we have Get Cancellations selected as “no” we will update the status in MCP but we will not create an Order Payment record to ACTION an actual cancellation to the corresponding channel

Channel Amazon MCF Connector - dependant table of Channel where there will be a dropdown list with all Amazon MCF Connectors.

Field Name Type Required Comment
Connector Name dropdown Yes A dropdown list with all Amazon MCF connectors. We can have more than one record in this table but can select only once a specific Amazon MCF Connector. Here we will need to display the Amazon MCF Connector > Name as dropdown options.
Default Shipping Speed Category dropdown Yes Enumerations:

Standard Expedited Priority ScheduledDelivery | | Fulfillment Policy | radio | Yes | Enumerations: FillOrKill FillAll FillAllAvailable

Please note we want to add description on the field for each enum: FillOrKill- If an item in a fulfillment order is determined to be unfulfillable before any shipment in the order has acquired the status of Pending (the process of picking units from inventory has begun), then the entire order is considered unfulfillable. However, if an item in a fulfillment order is determined to be unfulfillable after a shipment in the order has acquired the status of Pending, Amazon cancels as much of the fulfillment order as possible. Refer to the FulfillmentShipment object for shipment status definitions.

FillAll - All fulfillable items in the fulfillment order are shipped. The fulfillment order remains in a processing state until all items are either shipped by Amazon or cancelled by the seller.

FillAllAvailable - All fulfillable items in the fulfillment order are shipped. All unfulfillable items in the order are cancelled. | | Default Payment Mode | varchar | Yes | free text field | | Country | dropdown | Yes | Here we want to list all Amazon Countries same we have for Channel Amazon > Country | | Order Comment | varchar | Yes | Default value "Thank you for your order! Your package is being carefully prepared and will be on its way soon. If you have any questions or need assistance, please contact our customer support. We appreciate your trust in us and look forward to serving you again!” |

Amazon MCF Connector Services- dependant table of Channel Amazon MCF Connector

Here we want to expand the mapping of the services and overwrite the Default Shipping Speed Category if any mapping is presented. We want to map the Order > Shipping Service against the Shipping Speed Category.

Field Name Type Comment
Shipping Speed Category Dropdown Enumerations:

Standard Expedited Priority ScheduledDelivery | | Marketplace Service | Varchar | Free text field |

Order Connector - New table dependant on Orders where we want to store some of the connector order details!

Field Name Type Required Comment
Connector Status dropdown No Unified Status for all different cases we might have.

Enumeration: Pending Incomplete Ready For Shipping Cancelled Returned Shipped Partially Shipped | | Status | varchar | No | This will be the order status at the 3rd party platform which can be Shopify, Magento, Warehouse etc. | | Cancel Order | dropdown | No | Standard status field Indicated if we want to trigger cancellation to the 3rd party platform Phase 2 can be skipped for phase 1 |

<v1.1> Amazon MCF Connector Seller - dependant table of Amazon MCF Connector

Field Name Type Required Comment
Seller dropdown Yes Dropdown field with all Hemi Sellers

Product In Order Connector - New table dependant on Product In Order where we want to store some of the connector order details!

Field Name Type Required Comment
Connector Status dropdown No Unified Status for all different cases we might have.

Enumeration: Pending Incomplete Ready For Shipping Cancelled Returned Shipped Partially Shipped | | Status | varchar | No | This will be the order status at the 3rd party platform which can be Shopify, Magento, Warehouse etc. | | Connector | varchar | No | The connector name which picked the order item for export. |

</v1.1>

Limits

Operation Rate limit per account-application pair Burst (requests) Additional details
getFulfillmentPreview 2 30 None
deliveryOffers 10 30 None
listAllFulfillmentOrders 2 30 None
createFulfillmentOrder 2 30 None
getPackageTrackingDetails 2 30 None
listReturnReasonCodes 2 30 None
createFulfillmentReturn 2 30 None
getFulfillmentOrder 2 30 None
updateFulfillmentOrder 2 30 None
cancelFulfillmentOrder 2 30 None
submitFulfillmentOrderStatusUpdate - - This is a sandbox-only operation and must be directed to a sandbox endpoint. For more information, refer to Fulfillment Outbound Dynamic Sandbox Guide and Selling Partner API sandbox.
getFeatures 2 30 None
getFeatureInventory 2 30 None
getFeatureSKU 2 30 None
getInventorySummaries 2 2 No
Is this article helpful?
0 0 0