2

所以,我正在创建一个支付处理程序,并重定向到给定的 payment_url。

为了创建支付处理程序(并获取 payment_url),我必须在请求正文中指定 consumerId,例如 createPaymentHandler 请求:

{
"merchantRefNum": "merchantRefNum-201",
"transactionType": "PAYMENT",
"neteller": {
"consumerId": "netellertest_eur@neteller.com",
},
"paymentType": "NETELLER",
"amount": 500,
"currencyCode": "EUR",
"returnLinks": [{
        "rel": "default",
        "href": "https://example.com/payment/",
    }
]

}

ex createPaymentHandleResponse

 {
  "id": "82d57742-e2db-48ea-a726-a60e6f8265a3",
  "paymentType": "NETELLER",
  "paymentHandleToken": "PHQhlWpTRKzBXubN",
  "merchantRefNum": "5493aaf1a1d6dd13d2b53412f0ec",
  "currencyCode": "USD",
"links": [
        {
          "rel": "redirect_payment",
          "href": "https://customer.at.neteller.com/rest/payment/panel?mid=1090001806&mtid=pay_1090001806_00LwEhZ8WtIy8PmIhRCUi3JScUti6jKi_EUR&amount=0.01&currency=EUR&customerHash=741e624cf6ae4fbca4338cb5597fe531"
        }
      ]
      "dupCheck": true,
      "status": "INITIATED",
      "liveMode": true,
      "usage": "SINGLE_USE",
      "action": "REDIRECT",
      "executionMode": "SYNCHRONOUS",
      "amount": 500,
      "billingDetails": {
        "street": "George Street",
        "street2": "3 Edgar Buildings",
        "city": "Bath",
        "zip": "BA1 2FJ",
        "country": "GB"
      },
      "customerIp": "172.0.0.1",
      "timeToLiveSeconds": 899,
      "gatewayResponse": {
        "orderId": "ORD_0d676b4b-0eb8-4d78-af25-e41ab431e325",
        "totalAmount": 3599,
        "currency": "EUR",
        "status": "pending",
        "lang": "en_US",
        "processor": "NETELLER"
      },
      "neteller": {
        "consumerId": "johndoe@email.com",
        "detail1Description": "description",
        "detail1Text": "Details 1 text"
      },
      "returnLinks": [
        {
          "rel": "default",
          "href": "https://usgaminggambling.com/payment/"
        },
        {
          "rel": "on_completed",
          "href": "https://usgaminggambling.com/payment/return/success"
        },
        {
          "rel": "on_failed",
          "href": "https://usgaminggambling.com/payment/return/failed"
        }
      ],
      "txnTime": "2019-01-24T10:39:50Z",
      "updatedTime": "2019-01-24T10:39:50Z",
      "statusTime": "2019-01-24T10:39:50Z"
    }

当我重定向到 payment_url 时,电子邮件字段已经填充了 consumerId(“netellertest_eur@neteller.com”)并且它是只读的。

结帐示例

问题是,我不应该解析电子邮件,因为任何人都可以从其他人登录到他们的 Neteller 帐户。

有没有其他方法可以在不解析 consumerId 的情况下获取付款 url?

提前致谢!

4

3 回答 3

1

最近添加了一项新功能,您可以在其中consumerIdLocked=false作为 neteller 请求对象的一部分进行传递。一旦结帐页面呈现,这将允许对电子邮件字段进行编辑。

文档可以在这里找到:https ://developer.paysafe.com/en/additional-documentation/neteller-migration-guide/api/#/introduction/common-objects/meta

{
    "merchantRefNum": "merchantRefNum-201",
    "transactionType": "PAYMENT",
    "neteller": {
        "consumerId": "netellertest_eur@neteller.com",
        "consumerIdLocked": false
    },
    "paymentType": "NETELLER",
    "amount": 500,
    "currencyCode": "EUR",
    "returnLinks": [
        {
            "rel": "default",
            "href": "https://example.com/payment/",
        }
    ]
}
于 2020-03-28T17:10:06.630 回答
0

consumerId是必需的,如果您不通过,请求将失败。用户通常使用与您系统中的电子邮件相同的电子邮件,或者您可以创建一个字段供消费者在重定向之前在存款页面上输入他们的电子邮件,以防他们想使用不同的电子邮件。

于 2020-03-19T18:39:11.320 回答
0

我在旧的 Neteller REST API 中找到了我想要的东西。

他们有一个“订单”端点,您可以在其中创建没有订单的订单,consumerId并且结帐时没有只读电子邮件!

于 2020-03-23T07:06:23.727 回答