Skip to content
Advertisement

Neteller paysafe api: Can I create a payment handle without specifying the consumer?

SO, i’m creating a payment handler and I redirect to the given payment_url.

In order to create the payment handler (and get the payment_url), I must specify the consumerId in the request body, ex createPaymentHandler request:

{
"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"
    }

When I redirect to the payment_url the email field is already filled with the consumerId (“netellertest_eur@neteller.com”) and it’s readonly.

checkout example

The thing is, I should not parse an email, because anyone could login from a different one to their Neteller account.

Is there any other way to get the payment url without parsing the consumerId?

Thanks in advance!

Advertisement

Answer

There is a new feature recently added where you can pass consumerIdLocked=false as part of the neteller request object. This will allow edits to the email field once the checkout page renders.

Documentation can be found here: 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/",
        }
    ]
}
User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement