[英]Identify customer who made purchase using braintree dropin ui
我们正在尝试使用Braintree的dropin ui从客户处收取款项。
我们能够从客户那里收到付款(并到达“成功”页面),现在需要确定哪个客户付款了,并将其反映在我们的数据库中。
自定义字段似乎不适用于dropin ui来传递我们的客户端ID等。
dropin ui的“成功”页面上是否有任何变量可以标识在结帐页面上进行购买的用户?
全面披露:我在Braintree工作。 如果您还有其他疑问,请随时与支持小组联系。
访问与交易相关的客户
$result
对象内返回的Braintree_Transaction
记录确实具有customerDetails
属性。 因此,可以确定进行交易的客户:
$result->transaction->customerDetails
将新客户与交易关联
您可以仅使用Braintree_Transaction::sale()
创建客户,存储其付款方式并立即创建交易 。 只需传入您从客户那里收到的付款方式随机数,然后将storeInVaultOnSuccess
设置为true
。 (可选)您可以指定客户ID和其他客户参数 。 ( 如果您未指定客户ID,则网关将为您创建一个。 )
$result = Braintree_Transaction::sale([
'amount' => '10.00',
'paymentMethodNonce' => nonceFromTheClient,
'customer' => [
'id' => 'a_customer_id'
],
'options' => [
'storeInVaultOnSuccess' => true,
]
]);
将现有客户与交易关联
当使用Drop-in UI时,您可以在生成客户令牌时通过包含该客户的ID来指定哪个回头客户进行交易:
Drop-in UI支持向回头客显示他们保存的付款方式。 要为您的保管库中的客户生成令牌,请提供客户的ID。 1个
$clientToken = Braintree_ClientToken::generate([
"customerId" => $aCustomerId
]);
您只能为库中已经存在的客户指定ID。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.