我正在尝试一个实验,我想我已经接近一个完整的解决方案。我想执行以下操作。
我创建了一个原型,但是我能做的最好的事情就是达到目标1-3。我不知道如何实现所有四个目标。是否可以满足所有四个目标?如果是这样,我该怎么办?
我的原型的详细信息:
对于我的原型,我创建了一个未发布的销售渠道应用程序,称为ProtoApp。我的ProtoApp将使用script_tag.json API端点从我的Linux服务器之一加载自定义javascript文件。我的自定义javascript文件将在网页标题中添加一个新元素。按钮的onclick事件将对我的ProtoApp进行ajax调用。我的ProtoApp将通过Linux上的BASH进行以下呼叫
curl -i \
-H "Accept: application/json" \
-H "Content-Type:application/json" \
-H "X-Shopify-Access-Token: mytokenfromshopify" \
-X POST "https://mystore.myshopify.com/admin/api/2019-07/checkouts.json" \
-d @checkout.json
我的checkout.json看起来像这样
{
"checkout": {
"line_items": [
{
"variant_id": 11111111111111,
"quantity": 2
}
],
"applied_discount": {
"amount": ###autogen##,
"title": "XYZ Promotion",
"description": "Promotional item for blackfriday.",
"value": ###autogen###,
"value_type": "fixed_amount",
"non_applicable_reason": null,
"applicable": true
}
}
}
Shopify Checkout API将给我成功的答复。我将在成功响应中找到一个web_url
,其值类似于https://mystore.myshopify.com/402423011/checkouts/2b3e24742ea6c087ec7c10e7c4117bba
。我将此web_url
发送回我的javascript文件,然后执行location.href = web_url
,这使客户转到结帐页面。客户看到适用的折扣。客户可以继续进行结帐流程和付款。一切都很完美。
据我目前的理解,这种方法的问题在于,为了在生产商店中使用它,我必须将我的应用发布到市场上。这意味着除我以外的其他人都可以使用它。因此无法满足上述第四项要求。
根据我的研究,私有应用程序不允许我执行我的理解对我的解决方案而言必不可少的write_checkout范围。
关于我可以做什么来实现所有四个目标的任何建议?