我正在使用正方形结帐创建付款屏幕
$checkout = new \SquareConnect\Model\CreateCheckoutRequest();
$checkoutUrl = $result->getCheckout()->getCheckoutPageUrl();
我成功获得了订单项和税项,名称和价格等。 我们沿用户的电子邮件地址和名称传递到成功显示在结帐屏幕上的该端点。
在我的应用程序中,用户可以创建也可以创建方形客户的帐户,我们将客户ID存储在我们的数据库中。
付款时,我将重定向到我网站上的页面:
$checkout->setRedirectUrl("https://www.example.net/order-complete");
我成功接收到get变量。
**注意:我已关闭了即时个人资料!
该交易会在方形POS后端中创建一个 NEW Customer 副本,而不是将交易绑定到我们提供的电子邮件地址。
这将创建一个新的用户ID,这意味着我们无法将用户订购的商品链接在一起,因为每个订单都会创建一个新用户。
这是为什么? 如何将订单绑定到用户?
我是否需要创建客户订单页面并使用以下方法手动创建订单:
$api = createChargeRequest();
谢谢,这让我发狂,因为您收不到结帐单,无法将订单绑定到客户。我已经搜索了网站和文档,但是除了即时配置文件(已被禁用)之外什么也找不到。
答案 0 :(得分:0)
当前,Checkout API不会检查客户重复项,并将始终根据提供的信息来创建新客户。
要更好地控制客户创建,您应该查看Square Payment Form和Transactions API,这将允许您创建自己的信用卡表格,并将客户附加到付款中(例如,它们已经存在,您可以查询其customer_id
并将其传递给请求)。