【问题标题】:square connect api batch processingsquare connect api 批处理
【发布时间】:2015-06-19 01:20:48
【问题描述】:

我需要批处理方面的帮助,尤其是在向商品添加税码方面。

我正在尝试使用方形批处理功能,我的示例案例是创建 2 个项目并向它们添加税码。在所有 4 个请求中 - 2 个用于创建项目,2 个用于“放置”税码。我尝试了以下命令: 1.创建两个项目;添加税收 2.创建一项;为该项目添加税码;创建第二个项目,将代码添加到第二个项目。

在这两种情况下,结果都是一样的 - 税只适用于一个项目。对于第二项,我得到的响应是:

{
    "status_code":404,
    "body":{
        "type":"not_found",
        "message":"NotFound"
    },
    "request_id":4
}

为了帮助调查,这是我在 cURL 请求中使用的示例 json。

{
"requests":[
    {
        "method":"POST",
        "relative_path":"\/v1\/me\/items",
        "access_token":"XXX-YYY",
        "body":
            {
                "id":126,
                "name":"TestItem",
                "description":"TestItemDescription",
                "category_id":"DF1F51FB-11D6-4232-B138-2ECE3D89D206",
                "variations":[
                    {
                        "name":"var1",
                        "pricing_type":"FIXED_PRICING",
                        "price_money":
                            {
                                "currency_code":"CAD",
                                "amount":400
                            },
                        "sku":"123444:QWEFASDERRG"
                    }
                ]},
        "request_id":1
    },
    {
        "method":"PUT",
        "relative_path":"\/v1\/me\/items\/126\/fees\/7F2D50D8-43C1-4518-8B8D-881CBA06C7AB",
        "access_token":"XXX-YYY",
        "request_id":2
    },
    {
        "method":"POST",
        "relative_path":"\/v1\/me\/items",
        "access_token":"XXX-YYY",
        "body":
            {
                "id":127,
                "name":"TestItem1",
                "description":"TestItemDescription1",
                "category_id":"DF1F51FB-11D6-4232-B138-2ECE3D89D206",
                "variations":[
                    {
                        "name":"var1",
                        "pricing_type":"FIXED_PRICING",
                        "price_money":
                            {
                                "currency_code":"CAD",
                                "amount":400
                            },
                        "sku":"123444:QWEFASDERRG1"
                    }
                ]
            },
        "request_id":3
    },
    {
        "method":"PUT",
        "relative_path":"\/v1\/me\/items\/127\/fees\/7F2D50D8-43C1-4518-8B8D-881CBA06C7AB",
        "access_token":"XXX-YYY",
        "request_id":4
    }
]
}

以下是我收到的完整回复,表明成功创建了两个项目并且只有一个成功的税收推送。

[
{
    "status_code":200,
    "body":
        {
            "visibility":"PUBLIC",
            "available_online":false,
            "available_for_pickup":false,
            "id":"126",
            "description":"TestItemDescription",
            "name":"TestItem",
            "category_id":"DF1F51FB-11D6-4232-B138-2ECE3D89D206",
            "category":
                {
                    "id":"DF1F51FB-11D6-4232-B138-2ECE3D89D206",
                    "name":"Writing Instruments"
                },
            "variations":[
                {
                    "pricing_type":"FIXED_PRICING",
                    "track_inventory":false,
                    "inventory_alert_type":"NONE",
                    "id":"4c70909b-90bd-4742-b772-e4fabe636557",
                    "name":"var1",
                    "price_money":
                        {
                            "currency_code":"CAD",
                            "amount":400
                        },
                    "sku":"123444:QWEFASDERRG",
                    "ordinal":1,
                    "item_id":"126"
                }
            ],
            "modifier_lists":[],
            "fees":[],
            "images":[]
        },
    "request_id":1
},
{
    "status_code":200,
    "body":{},
    "request_id":2
},
{
    "status_code":200,
    "body":
        {
            "visibility":"PUBLIC",
            "available_online":false,
            "available_for_pickup":false,
            "id":"127",
            "description":"TestItemDescription1",
            "name":"TestItem1",
            "category_id":"DF1F51FB-11D6-4232-B138-2ECE3D89D206",
            "category":
                {
                    "id":"DF1F51FB-11D6-4232-B138-2ECE3D89D206",
                    "name":"Writing Instruments"
                },
            "variations":[
                {
                    "pricing_type":"FIXED_PRICING",
                    "track_inventory":false,
                    "inventory_alert_type":"NONE",
                    "id":"6de8932f-603e-4cd9-99ad-67f6c7777ffd",
                    "name":"var1",
                    "price_money":
                        {
                            "currency_code":"CAD",
                            "amount":400
                        },
                    "sku":"123444:QWEFASDERRG1",
                    "ordinal":1,
                    "item_id":"127"
                }
            ],
            "modifier_lists":[],
            "fees":[],
            "images":[]
        },
    "request_id":3
},
{
    "status_code":404,
    "body":
        {
            "type":"not_found",
            "message":"NotFound"
        },
    "request_id":4
}
]

我已经检查了物品列表,并且带有物品 ID 的两个物品都存在于库存中。所以我的问题是,为什么要对一个项目而不是另一个项目征税?如何解决?

【问题讨论】:

    标签: api batch-processing square square-connect


    【解决方案1】:

    来自Square docs

    使用提交批处理端点时请注意以下几点:

    您不能在一个批次中包含超过 30 个请求。

    递归 不允许对 Submit Batch 端点的请求(即,没有 批处理中包含的请求本身可以是对此的请求 端点)。

    不保证批次的顺序 请求被执行。

    (强调我的)。

    如果您想使用批处理 API,您必须先创建父实体(例如项目),然后在单独的批处理请求中应用任何子实体,例如费用、折扣等...或者,您可以只发出单独的请求.在这种情况下使用批处理 API 可能没有太多好处。

    【讨论】:

    • 哈,答案直盯着我的脸。我必须承认,我更专注于让代码工作......谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多