Retail Commerce: Import of Shopify POS Exchanges

In Shopify, it is possible to exchange a product from a point-of-sale (POS) order for the same product at the same price or a different price, or for a different product at the same price or a different price.

Starting in MYOB Acumatica 2024.1, POS exchanges can be imported from a Shopify store into MYOB Acumatica.

Important:
  • Before the company can import Shopify POS exchanges into MYOB Acumatica, Shopify must enable API access for POS exchange data in the store itself. A representative of the company should contact Shopify to request this access.
  • The synchronization of Shopify POS orders is available if the Shopify POS Connector feature is enabled on the Enable/Disable Features (CS100000) form and if the Import POS Orders check box is selected on the Order Settings tab of the Shopify Stores (BC201010) form.

Specifying the Order Types for Direct and Shipped POS Exchanges

In previous versions of MYOB Acumatica, to set up the import of Shopify POS orders, an administrative user had to specify the order type to be assigned to imported orders on the Order Settings tab of the Shopify Stores (BC201010) form. In Version 2024.1, to set up the import of Shopify POS exchanges, the user also needs to specify the order type to be assigned to exchanges in the Order Type for Exchange box. This box has been added to the following new sections (as shown in the following screenshot):

  • Direct POS Orders: In this section, the administrative user specifies the order types for direct Shopify POS orders and Shopify POS exchanges—that is, for orders and exchanges that happen over the counter and do not require shipping. The order type specified in the Order Type for Exchange box of this section must have the MO - Mixed Order template selected and have both the Receipt operation and the Issue operation activated on the Order Types (SO201000) form.
  • Shipped POS Orders: In this section, the administrative user specifies the order types for Shopify POS orders and Shopify POS exchanges that require shipping. The order type specified in the Order Type for Exchange box of this section must have the RC - Return for Credit template selected and have both the Receipt operation and the Issue operation activated on the Order Types form.
Figure 1. The new UI elements for the import of POS orders and exchanges


Exchanges for direct and shipped Shopify POS orders are imported during the synchronization of the Refund entity, which an administrative user should activate on the Entity Settings tab of the Shopify Stores (BC201010) form.

Tip:
We recommend creating dedicated order types for Shopify POS exchanges instead of modifying predefined order types. For details, see Custom Sales Order Types.

Importing Direct POS Exchanges

When a direct Shopify POS exchange is imported, the way the system processes the documents depends on the status of the Shopify POS order on the Sales Orders (SO301000) form.

If the sales order has the Open or On Hold status, the system does the following:

  • In the sales order, on the Details tab of the Sales Orders form, inserts a line for the new item
  • Also on the Sales Orders form, creates a return order with the order type specified in the Order Type for Exchange box of the Direct POS Orders section on the Order Settings tab of the Shopify Stores (BC201010) form
  • In the new return order, inserts a line with the Receipt operation for the exchanged item
  • On the Payments and Applications (AR302000) form, creates either of the following:
    • A payment in the additional amount if the extended price of the new item is higher than the extended price of the exchanged item
    • A refund in the excessive amount if the extended price of the new item is lower than the extended price of the exchanged item

Because of API limitations, the order total now includes the amounts of both the exchanged item and the new item. The user needs to manually create an additional payment and refund for the exchange on the Payments and Applications (AR302000) form. The amounts of the payment and refund depend on whether the item was exchanged at the same price, a higher price, or a lower price, as described in the following table.

Price Change Payment Amount Refund Amount
The new item's price is the same. Extended price of the exchanged item Extended price of the exchanged item
The new item's price is the higher. Extended price of the exchanged item Extended price of the exchanged item
The new item's price is the lower. Extended price of the new item Extended price of the new item
Important:
We recommend processing each direct POS order as soon as it is imported into MYOB Acumatica so that it has the Completed status before an exchange is initiated. Thus, users will not have to create additional payments and refunds manually.

If the sales order has the Completed status, the system does the following:

  • Creates a new sales order with the order type specified in the Order Type for Exchange box of the Direct POS Orders section on the Order Settings tab of the Shopify Stores form
  • In the new order, on the Details tab of the Sales Orders form, inserts a line with the Receipt operation for the exchanged item, and a line with the Issue operation for the new item
  • If the price of the new item is different from the price of the original item, creates a payment for the additional amount or a refund for the amount that needs to be returned to the customer on the Payments and Applications form

Importing Shipped POS Exchanges

Items in a shipped POS order can be exchanged only if the order has been fully shipped. When a Shopify POS exchange is imported, the system does the following:

  • Creates a new sales order on the Sales Orders (SO301000) form with the order type specified in the Order Type for Exchange box of the Shipped POS Orders section on the Order Settings tab of the Shopify Stores (BC201010) form
  • In the new order, on the Details tab of the Sales Orders form, inserts a line with the Receipt operation for the exchanged item, and a line with the Issue operation for the new item
  • Applies the invoice of the original sales order to the new order
  • If the price of the new item is different from the price of the original item, creates a payment for an additional amount or a refund for the amount that needs to be returned to the customer on the Payments and Applications form