You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Square Connect API中为订单添加小费金额?

解决Square Connect v2 API添加订单小费的问题

我之前在做自定义UI的Square集成时刚好碰到过这个问题,给你梳理下正确的实现流程:

核心逻辑说明

Square的小费设计是关联在付款(Tender)环节,而不是订单创建阶段,所以你需要分两步操作:先创建基础订单,再通过Charge接口关联订单并添加小费。

具体步骤

  1. 创建基础订单
    调用CreateOrder接口,只需要传入商品明细、基础金额等信息即可,这里不需要处理小费。示例请求体大概是这样:

    {
      "order": {
        "location_id": "YOUR_LOCATION_ID",
        "line_items": [
          {
            "name": "Coffee",
            "quantity": "1",
            "base_price_money": {
              "amount": 400,
              "currency": "USD"
            }
          }
        ]
      }
    }
    

    调用成功后会返回order_id,保存好这个ID。

  2. 关联订单并添加小费完成付款
    调用Charge接口时,指定刚才获取的order_id,同时在tender字段里设置tip_money。这里要注意,Charge接口的请求体是允许包含tender对象的,你之前可能没注意到这个字段的正确用法。示例请求体:

    {
      "location_id": "YOUR_LOCATION_ID",
      "source_id": "YOUR_PAYMENT_SOURCE_ID", // 比如信用卡token
      "order_id": "THE_ORDER_ID_FROM_STEP_1",
      "tender": {
        "tip_money": {
          "amount": 100,
          "currency": "USD"
        }
      }
    }
    

    这样操作后,小费会被正确计入订单的总金额,你可以通过RetrieveOrder接口查看包含小费的完整订单信息。

额外提示

  • 如果你需要先让用户确认小费金额,再生成订单,也可以先收集小费,在创建订单时把total_money设置为基础金额+小费,但更推荐上面的流程,因为小费属于付款环节的附加项,和订单本身的商品金额分离更清晰。
  • 确保你的Square账号权限允许自定义小费设置,部分商家可能有配置限制,可以在Square后台检查下。

内容的提问来源于stack exchange,提问作者CainaSouza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:01:33