Skip to main content

Hey folks,

I have a Shopify order which had Item A.   Item A does not exist in Acumatica and we tried to sync the order and it failed as expected. 

We changed the item to Item B which does exist, and removed item A from the order and restocked in shopify.  

The order still refuses to sync in ACU claiming that ITEM A does not exist in ACU:

 

The XXXXXX item in the XXXX store does not match any item's inventory ID or alternate ID in the ERP system. Make sure an item with "XXXXXX" as an inventory ID or alternate ID exists in the ERP system, and process the record again.

It appears to still be in The JSON file as well...any thoughts here?

@kkeating24 , if you check the JSON (which you did, I think), item A is still there - it’s just the way Shopify works, it doesn’t remove the line item, it just makes the quantity zero. Because of that, Acumatica is throwing an error. You could think, okay, it’s zero, why do you throw an error? Makes sense. But if you start thinking about order updates (one scenario is item is removed from Shopify and now has to be zeroed out in Acumatica), then the error actually makes sense. Yes, it’s probably possible to build the logic into the connector to check for the presence of that item in Acumatica sales order, and if it doesn’t exist, let the import work. But you could also make an argument that the current implementation is the ‘right’ one.

Anyways, what you’re observing is expected. The simplest way to work around it is to create a new product with item A’s SKU - it won’t have any effect on your order amount, since the quantity of that item will be zero.


@Yuri Karpenko - I think the logic as it exists is sound.  I just think there should be an easier way to correct this.  My concern is that when I review the JSON - in both instances it says quantity of 1: 

 

One is under the FULFILLMENT and one under REFUND container, so I’m assuming that will create the 0 qty?  I”m not seeing this as 0 in the JSON. 

I guess in lieu of adding the sku in ACU, we can delete the order and recreate? 

I can send the JSON if it would help.


@kkeating24 , deleting an order wouldn’t help, in my experience. There is validation going on in the code that checks that Acumatica has all of those SKUs, and if one is missing, throws the error that you see.

You’re correct about ‘quantity’ field. Some lines are in Fulfillment array, and others in Refund.

However, even if you delete / replace order lines BEFORE the order is imported into Acumatica, the connector will still throw an error.

I’ve seen this many times. But just to make sure I’ve prototyped this scenario in my sandbox just now:

  1. Created an order with Acer Laptop x 1 and WIDGET05 x 1.
  2. WIDGET05 does not exist in Acumatica, only in Shopify.
  3. Removed WIDGET05 from the Shopify order.
  4. Prepared orders in Acumatica, tried to process, got the error (WIDGET05 cannot be found).
  5. Then I added the WIDGET05 as a cross-reference to WIDGET04 item in Acumatica, and retried order import.
  6. Order came in with 2 line items: Acer Laptop x 1 and WIDGET04 x 0.

Hope this helps, though doesn’t resolve your issue.

I can see how the connector can be improved to facilitate this scenario above.

Also, with the latest versions of Acumatica, you can supposedly create those non-existent products in Acumatica on the fly.


@Yuri Karpenko thanks for the support here.  If we ‘cancel’ in shopify and ‘skip’ in ACU, i realize it will still be in the connector, but creating a new order with the right sku will allow for processing.


@kkeating24 , oh yes, that will work!


Reply