【问题标题】:Braintree - How does the user knows how much he is charge for?Braintree - 用户如何知道他的收费是多少?
【发布时间】:2018-03-30 02:34:22
【问题描述】:

我正在尝试使用 javascript SDK 和 dropin 插件与 Braintree 集成,但有些东西我很难理解。 似乎用户用他的“payment_method_nonce”免费允许他在不知道他被收取多少费用的情况下收取他的信用。让我解释一下:

查看流程概览:

1. 客户端向我的服务器请求授权令牌。 然后服务器使用他独特的“Braintree SDK and credantials”创建一个新令牌, 服务器将令牌发送回客户端。

  1. 用户输入他的信用卡号并提交 -> 客户端向 Braintree 服务器发送请求。
  2. Braintree 服务器向客户端返回一个“payment_method_nonce”。
  3. 客户端将“payment_method_nonce”发送到我的服务器。
  4. 我的服务器使用“payment_method_nonce”创建交易,设置收费价格并向 Braintree 服务器发送请求。用户不知道从服务器发出请求后他被收取了多少费用。

当我直接使用 Paypal(没有 Braintree SDK)时,用户被重定向到“paypal 域”以完成交易。 在那里,他看到了有关交易、价格等所有详细信息,但是“Braintree”缺少这一步。

我在这里错过了什么?

【问题讨论】:

    标签: paypal paypal-sandbox braintree braintree-sandbox


    【解决方案1】:

    全面披露:我在 Braintree 工作。如果您还有任何问题,请随时联系support

    Drop-In 是用于接受卡和 PayPal 的预制 UI。它不应该用作结帐的唯一部分。

    您负责将 Drop-In UI 整合到您商店中现有的结账工作流程中,其中应包括对有意义的交易信息(例如地址、金额等)的确认。相比之下,PayPal 对其帐户存在安全问题持有者,在其 UI 中包含一些结帐步骤,作为向客户提供信任和安全的一种方式。

    【讨论】:

    • 您好 hollabaq,感谢您的帮助。我从 Braintree 站点下载了 nodejs 示例,并按照客户端和服务器端的步骤进行操作。我注意到客户端将请求发送到braintree 服务器,没有绑定任何价格,然后收到payment_method_nonce。现在服务器可以向用户收取任何价格。看来payment_method_nonce应该绑定一个价格。如果服务器尝试要求不同的价格,那么它应该会失败。
    • 如果 payment_method_nonce 对价格进行了验证,你检查了吗?这可能是有道理的,因为在您的 2)中,当您向创建 DropInRequest(此处为 Android)的用户显示 Drop-in UI 时,您可以为其设置数量。 DropInRequest 被发送到 Braintree 服务器并且你得到 payment_method_nonce 所以它可能有一些金额校验和。但是,至少相同的金额和相同的 cc 信息每次都会生成不同的 payment_method_nonce。我将检查服务器是否进行验证,即您是否在 DropInRequest 中设置金额 10 并在服务器中使用不同金额的 payment_method_nonce。
    • Hi Tal Humy- 完全理解你的逻辑。付款方式随机数是敏感信用卡数据的一次性表示,可用于两个主要目的:创建 transactions 以及在 Vault 中创建或更新 payment methods 以供重复使用。在随机数中包含价格对于第一个用例是有意义的,但对于第二个用例则不是。
    猜你喜欢
    • 2017-07-25
    • 2016-03-04
    • 2021-03-16
    • 2022-10-08
    • 2021-08-28
    • 1970-01-01
    相关资源
    最近更新 更多