2

我正在尝试将 Braintree 集成到我的网站中以接受付款,我对多币种支持有几个问题。
首先让我说我已经创建了一个接受EUR的账户,因为我住在欧盟。

现在,假设一个美国人想在我的网络应用上买东西。他显然有一张与美元银行账户绑定的信用卡。阅读文档后,我发现在 Braintree 中我无法指定货币,因此在这种情况下10,我的金额为 10 欧元

gateway.transaction.sale({
        amount: 10,
        paymentMethodNonce: nonceFromTheClient,
        options: {
            submitForSettlement: true
        }
    })

这意味着我必须在我的网站上显示

Would you like to buy this item for 11.16 USD?

其中 11.16 是当前转换率(在撰写本文时)。

这是正确的方法吗?我持怀疑态度有两个原因:

  • 假设我使用在线实时转换器>>如果用户刷新页面,他可能会发现不同的数量(BAD UX
  • 假设我设置了一个固定的兑换率,例如 1 欧元 == 1.1 美元 >> 用户会发现他的卡上收取的金额与网站上显示的金额不同。这是因为我实际上收取 10 欧元而不是 11 美元作为广告(糟糕的用户体验

你能帮我理解处理这个问题的正确方法吗?

每次我从外国网站购买东西时,我都会得到以欧元显示的转换,并且我被收取了确切的金额,但在 Braintree 上我不明白如何去做。

提前致谢

4

1 回答 1

5

Full disclosure, I work at Braintree. If you have any further questions, I recommend reaching out to our awesome Support Team.

You specify the currency of a transaction by passing the merchantAccountId. This prevents you from having to do a ton of conversion for every transaction.

Here's a modified version of the example from Braintree's developer docs:

gateway.transaction.sale({
  amount: "10.00",
  merchantAccountId: "your_merchant_account",
  paymentMethodNonce: nonce_from_the_client,
  options: {
    submitForSettlement: true
  }
})

If you haven't already and you have a production account, you should reach out to Braintree's team to request the currencies you need to process. If you're just testing in sandbox, you can create test merchant accounts by following these steps.

于 2019-04-28T20:08:41.997 回答