Payment gateway Braintree支付网关-获取客户信息
我正在我的web应用程序中使用Braintree支付网关。我想知道我是否能从中获得用户信息 我无法保存卡的详细信息,这是不允许的。但是,如果我需要为同一用户运行另一个事务,我可以从Braintree本身获取他的信息并自动填写卡的详细信息吗?我在Braintree工作。如果您想要更多的信息,您可以很容易地获得堆栈溢出,请联系我们的 像Braintree这样的支付网关的一个主要优点是,它们可以标记信用卡信息,而不必暴露于信用卡信息之下 基本上,您可以在浏览器中对卡信息进行加密,这样服务器就不会看到它 然后,将加密信息传递给Braintree。作为回报,您将获得一个类似Payment gateway Braintree支付网关-获取客户信息,payment-gateway,payment,braintree,customer-account-data-api,Payment Gateway,Payment,Braintree,Customer Account Data Api,我正在我的web应用程序中使用Braintree支付网关。我想知道我是否能从中获得用户信息 我无法保存卡的详细信息,这是不允许的。但是,如果我需要为同一用户运行另一个事务,我可以从Braintree本身获取他的信息并自动填写卡的详细信息吗?我在Braintree工作。如果您想要更多的信息,您可以很容易地获得堆栈溢出,请联系我们的 像Braintree这样的支付网关的一个主要优点是,它们可以标记信用卡信息,而不必暴露于信用卡信息之下 基本上,您可以在浏览器中对卡信息进行加密,这样服务器就不会看到它
“xg67ba”
的令牌,您可以稍后使用它再次向同一张卡收费:
result = Braintree::Transaction.sale(
:amount => "100.00",
:customer => {
:first_name => "Dan",
:last_name => "Smith"
},
:credit_card => {
:number => "encryped_credit_card_number",
:expiration_date => "encryped_expiration_date",
:cvv => "encrypted_cvv"
},
:options => {
:store_in_vault => true
}
)
result.transaction.customer_details.id
#=> e.g. "131866"
result.transaction.credit_card_details.token
#=> e.g. "f6j8"
所以下一次,它看起来像:
result = Braintree::Transaction.sale(
:amount => "10.00",
:customer_id => "131866",
:credit_card => {:cvv => 'encrypted_cvv'}
)
每一张信用卡都与客户关联,因此如果您只想向客户的唯一/默认卡收费,您只需提供
客户id
。建议再次从客户处获取cvv
(任何人都不允许存储该cvv),但这不是必需的 一旦您有了客户Id,就可以使用以下PHP代码获取客户详细信息
$customerId = 67222186;
try{
$result = Braintree_Customer::find($customerId);
echo $result->id; echo "\n";
echo $result->firstName; echo "\n";
echo $result->lastName; echo "\n";
echo $result->email; echo "\n";
echo $result->phone; echo "\n";
} catch (Exception $e){
echo $e->getMessage();
}
android应用程序是否可以检索卡信息?@Pranav卡信息将返回到服务器,以便您可以对其执行任何操作。通常,您会将它与您的一个用户关联,这样当他们登录时,您可以让他们再次使用相同的信息。然而,这个答案已经过时了——我们有一种新的集成方法,您可以在上阅读,在前端公开payment method token可以让它变得更友好吗?一个很好的例子是编辑按钮
edit
@user3284463如果您在服务器端验证该用户编辑该令牌是否正常,那么是的——显示该令牌是正常的,但信任它则不正常。