concardis payengine.de создать заказ Отправка JSON на сервер - PullRequest
0 голосов
/ 15 февраля 2020

В настоящее время я пытаюсь внедрить платежный шлюз concardis payengine.de на свой веб-сайт, но столкнулся с несколькими проблемами. В основном то, что я делаю, это

var xhr = new XMLHttpRequest();
var url = "https://apitest.payengine.de/v1/orders";
xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
        var json = JSON.parse(xhr.responseText);
        console.log(json.email + ", " + json.password);
    }
};
var data = JSON.stringify({
  "initialAmount": 2000,
  "currency": "EUR",
  "transactionType": "DEBIT",
  "ipAddress": null,
  "async": {
    "successUrl": "https://www.google.de/#newwindow=1&q=success",
    "failureUrl": "https://www.google.de/#newwindow=1&q=failure",
    "cancelUrl": "https://www.google.de/#newwindow=1&q=cancel",
    "confirmUrl": "https://www.google.de/?newwindow=1&q=confirm"
  },
  "basket": [
    {
      "name": "usbstick",
      "articleNumber": "sasdfas",
      "totalPrice": 2000,
      "totalPriceWithTax": 2000,
      "unitPrice": 2000,
      "unitPriceWithTax": 2000,
      "tax": 0,
      "quantity": 1
    }
  ],
  "terms": 1581795628694,
  "privacy": 1581795628694
});
xhr.send(data);

, так как это то, что они говорят делать на своем веб-сайте: веб-сайт Это должно вернуть:

{
  "createdAt": 1581796670114,
  "modifiedAt": 1581796670114,
  "merchantId": "merchant_gkdyunb7sd",
  "terms": 1581796668646,
  "privacy": 1581796668646,
  "orderId": "qmmyzub4hx",
  "merchantOrderId": null,
  "paymentProviderTransactionId": null,
  "description": null,
  "statementDescription": null,
  "initialAmount": 2000,
  "preauthorizedAmount": 0,
  "capturedAmount": 0,
  "refundedAmount": 0,
  "canceledAmount": 0,
  "currency": "EUR",
  "basket": [
    {
      "id": "Article-583499a2-ac99-4b6e-b689-d8218a07a833",
      "name": "usbstick",
      "articleNumber": "sasdfas",
      "totalPrice": 2000,
      "totalPriceWithTax": 2000,
      "unitPrice": 2000,
      "unitPriceWithTax": 2000,
      "quantity": 1,
      "tax": 0,
      "discount": null,
      "imageUrl": null,
      "articleUrl": null,
      "articleType": null
    }
  ],
  "customer": null,
  "persona": null,
  "billingAddress": null,
  "shippingAddress": null,
  "ipAddress": null,
  "paymentInstrument": null,
  "transactions": [],
  "status": "CREATED",
  "channel": "ECOM",
  "source": null,
  "settled": false,
  "settlementDate": null,
  "allowedProducts": [
    "prepayment",
    "postfinance-card",
    "wechat-pay",
    "sepa",
    "giropay",
    "creditcard",
    "alipay",
    "paydirekt",
    "paypal",
    "sofort",
    "bancontact",
    "ideal",
    "eps"
  ],
  "product": null,
  "transactionType": "DEBIT",
  "meta": null,
  "async": null,
  "deviceIdent": null,
  "clientType": "BRW",
  "asyncNotificationSubscriptionId": null,
  "lastOperation": "ORDER_CREATED",
  "locale": null
}

И Мой вопрос заключается в том, как мне получить этот возврат и взять MerchantId и OrderId из этого ответа и ввести их в этот

<option value="PayEngineWidget.initAsModal(
  'merchant_gkdyunb7sd',
  'undefined',
  optionalParameters,
  resultCallback
);">Size S</option>

вместо merchant_gkdyunb7sd и undefined. Также я думаю, что должен что-то сделать с Authorization:Basic bWVyY2hhbnRfZ2tkeXVuYjdzZDo5T2F4RWRmMnliT2RyZTN2, но я застрял.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...