我正在寻找有关Shopify和Navision的答案。
我们正在考虑将当前的网上商店托管商切换为Shopify。
多么重要的一件事情是,我们可以使Shopify直接与我们的会计系统Navison(现在为Microsoft Dynamics NAV)一起工作。这必须是可能的,但是这种集成有多全面(且价格昂贵),并且您在这一领域有任何经验吗?
任何帮助将非常感激。谢谢!
最佳答案
由于我没有足够的分数来发表评论,因此我将其发布为答案。
我真的很抱歉不得不发表这样的负面评论,特别是因为有时我可能需要Shopify开发支持的帮助,而且我真的不想惹恼他们,所以希望他们不会亲自考虑。
我可以欣赏Shopify使用其API做出的一些设计决策,但是David Lazar和工作人员似乎错过了Jarko的观点,或者只是不在乎。
我个人不太关心SOAP,我尽可能使用JSON和REST,并且在技术堆栈方面都不了解,但我也对Shopify产品API(以及API的其他部分)的局限性感到厌恶,乍一看,它看起来还不错,直到您开始尝试将其用于任何繁重的工作为止。
实际上,我使用过的所有其他相似的API都允许开发人员通过一个API调用来创建多个产品,实际上,这是我不得不使用的第一个不具备该功能的API。
考虑到Shopify API创建带有变体和图像的单个产品的速度有多慢,令人惊讶的是,有谁可以使用它来管理多个产品。例如,由于每个调用限制1个产品,我花了2天的大部分时间等待脚本完成通过API创建所有产品的过程。
我的API库旨在遵守API请求限制,但是我们甚至都无法接近这些限制,因为创建具有变体和图像的单个产品需要11到20秒。我大约有8000种产品要上传。算一算。对于习惯使用真正的企业级API的人们来说,每个API调用可以处理数千种产品(AmazonMWS是一个很好的例子),等待2天才能完成产品的创建简直是疯狂的,天哪,您需要做一些简单的事情产品上传后重新订购。
在这种情况下,您需要再进行一次8000多个api调用,以删除所有产品(这需要一个多小时的时间),然后重新开始上传过程,并等待2天。正如我所能想象的那样,这是一个效率低下的系统。我尝试过批量上传CSV文件来解决这些问题,但是您猜怎么着?批量上传不能处理大于几兆字节的CSV文件,并且在将来的API调用中无法通过API引用批量上传的产品,您必须指定shopify产品ID,这意味着在批量上传之后,您必须下拉所有产品ID和变体ID的列表,然后将该信息输入数据库中,以便您可以通过shopify的内部ID而不是商家设置的某种父母ID或SKU来引用它们。
总而言之,这完全是一场噩梦。相比之下,我通过亚马逊的API上传和处理完整的产品供稿大约需要一个小时,其中包括6000多种父产品以及60,000多种子变体和60,000多种图像。亚马逊的API由于各种原因而令人讨厌(它需要5种不同的Feed格式来上传所有产品信息,而且它们的文档可能会使一个成年男子大哭),但至少它通常是快速的,并且能够在一小时内处理数千种产品。
亚马逊的API还提供了通过商户定义的标识符(例如SKU)批量更新价格和库存数量以及更新产品数据的机制,这意味着亚马逊大约需要5分钟来更新我整个库存的数量和价格,而不会遇到任何麻烦将ID映射回我们内部系统中的产品的过程,以便每次只能引用1。
另外,无法告知Shopify产品API用重复的句柄替换产品而不是创建新的句柄这一事实意味着,如果我的脚本超时或API由于通信错误而阻塞(例如今天, API神秘地开始在几个小时内返回404错误),而且我不得不多次重启,最终我得到了重复的产品,然后很难找到并消除它们。
对于需要通过Shopify API管理数百种产品的任何人来说,所有这些都给他们带来惨痛的体验。如果不告诉开发人员这是他们自己的错,那么Shopify开发人员要么懒惰,要么完全与开发人员使用API的方式完全脱节。
我还没有进入为期2周的整合的3周时间,并且从理论上讲,距离启动新网站仅几个小时的路程,我此时将放弃Shopify。由于产品API使管理大量产品变得如此繁琐,因此该项目现在已逾期一周以上。并迫使用户来到Stackoverflow来发布API问题,如果没有一定的声誉得分,他们甚至无法发表评论……我可以继续。甚至没有让我开始了解缺少折扣/促销api的功能,还是无法通过无需管理员手动登录到shopify后端并单击要激活的每个用户的链接即可登录的API来创建用户。
每当我认为我将能够使用此API完成某些工作时,结果就是一个clusterf $%*!。但是,嘿,它必须是一个很棒的API,因为它都是使用REST原理在Ruby中完成的...哦,天哪!叹。在这一天中,我将采用一个古老的基于SOAP的api,但现在放弃这个项目并从现在开始,为时已晚。双重感叹。
关于integration - shopify navision,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11154188/