mobile - 在移动应用程序上使用 Balanced API 的最佳实践

标签 mobile payment-gateway payment balanced-payments

我正在为支付实现新的 Balanced API,并开始考虑将其放入我们的移动( native )应用程序中。

我看到他们有a javascript library用于将信用卡信息直接发送到他们的服务器。我显然不希望付款信息通过我们的服务器 (PCI),并且我不想在应用程序中包含我的 API key / secret 。

那么在我们的移动应用程序上处理信用卡信息的最佳方式是什么?

最佳答案

更新


由于您正在为智能手机编写代码,因此您应该能够直接向 Balanced 进行 RESTful API 调用,以对卡进行 token 化,而无需使用 Balanced.js。

卡和银行帐户端点不需要身份验证来标记这些资源,因此您无需担心在应用中包含任何 API key 。该文档解释了如何 tokenize the card 但让我更详细地解释一下:

TL;DR

直接从您的移动应用向与您的 Marketplace 关联的 card_uribank_account_uri 发送 POST,它将返回包含标记化资源的 URI 的响应。

示例

如果您的 Marketplace 的 URI 为 /v1/marketplaces/M123-456-7890,那么流程将如下所示:

在客户端

您传递的有效负载应如下所示:

{
    "card_number": "5105105105105100",
    "expiration_month": "01",
    "expiration_year": "2020",
    "security_code": "123"
}

然后应该像这样提交

POST /v1/marketplaces/M123-456-7890/cards

响应将类似于:

{
  "brand": "visa",
  "name": null, 
  "expiration_year": 2020, 
  "uri": "/v1/marketplaces/TEST-MP991-204-5261/cards/CCfc1596189e0911e18ba9024f5cb9b783", 
  "expiration_month": 12, 
  "state": "new", 
  "last_four": 5100, 
  "address": null
}

客户端只需将响应的 uri 返回到您的服务器,您就可以在服务器上将卡与用户的帐户关联起来。

在服务器上

要将卡的 URI 与现有帐户关联,您可以向帐户的 URI 发出 PUT 请求,并将卡的 URI 作为名为 card_uri 的参数传递。如果您要创建新帐户,请使用用户的电子邮件地址POST到市场accounts_uri

您需要注意的是,不要在设备上的任何调试日志中记录用户的card_numbersecurity_code,因为这会将设备带入PCI 范围,如果他们的手机受到损害,可能会很糟糕。

关于mobile - 在移动应用程序上使用 Balanced API 的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10657017/

相关文章:

android - Adobe Reader Mobile 9 SDK 的替代品,用于阅读受 DRM 保护的电子书

android - Apache Cordova 在 div 中加载外部 URL 或网站

html - 单独的 css 引用中的多个类样式

wordpress - 如何直接从url调用wordpress函数?

php - PHP 中的信用卡支付网关?

css - 文本在 Windows7 的 IE7 中不换行

angular - 如何将 worldpay 与 angular2 集成

python - 使用 Electrum 控制台验证付款

ios - Apple Pay - "Payment Not Completed"- 使用 Stripe

android - 如何读写移动设备上的安全元件以实现 NFC 支付目的?