Попытка выработать accept.js вместо устаревшего метода для платежей authorize.net. Не делает ничего сложного, но не может пройти мимо сообщения об ошибке аутентификации при использовании песочницы
Вход в учетную запись песочницы для генерации ключей ... они называются немного иначе, чем примеры кода. Так что я МОГУ БЫТЬ ИДИОТОМ.
ОК, apiLoginID - очевидно ...
Код ниже вызывает data-clientKey. Не уверен на 100%, какой из двух приведенных ниже на самом деле. Я пробовал оба. Та же ошибка с обоими.
Идентификатор входа в API: 4CLLpD ------
Ключ транзакции: 9628s6xCSh ------
Ключ: ------ A4D932A4AFED546DE55E4D04C16CA66549915AFDC4FBA3A1665E271A2FB48A7A34394843A47BC170FFB4A5B99EDD17B75D99942E4E7F7133C2E1 ------
<script type="text/javascript"
src="https://jstest.authorize.net/v3/AcceptUI.js"
charset="utf-8">
</script>
<form id="paymentForm"
method="POST"
action="mysite.com/beta-account/order-receipt.php" >
<input type="hidden" name="dataValue" id="dataValue" />
<input type="hidden" name="dataDescriptor" id="dataDescriptor" />
<button type="button"
class="AcceptUI btn-success btn-lg"
data-billingAddressOptions='{"show":true, "required":false}'
data-apiLoginID="4CLLpDX----"
data-clientKey="9628s6xCShc-----"
data-acceptUIFormBtnTxt="Submit"
data-acceptUIFormHeaderTxt="Card Information"
data-responseHandler="responseHandler">Pay
</button>
</form>
<script type="text/javascript">
function responseHandler(response) {
if (response.messages.resultCode === "Error") {
var i = 0;
while (i < response.messages.message.length) {
console.log(
response.messages.message[i].code + ": " +
response.messages.message[i].text
);
i = i + 1;
}
} else {
paymentFormUpdate(response.opaqueData);
}
}
function paymentFormUpdate(opaqueData) {
document.getElementById("dataDescriptor").value = opaqueData.dataDescriptor;
document.getElementById("dataValue").value = opaqueData.dataValue;
document.getElementById("paymentForm").submit();
}
</script>
В данный момент на странице order-receive.php ничего нет. Я просто пытаюсь получить пост, чтобы сделать это так далеко, и показать мне дамп всего, что публикуется на странице, так что даже когда я получу эту работу, у меня все еще есть способы пойти.
Когда я захожу на страницу оплаты, нажимаю кнопку «Оплатить», заполняю форму кредитной карты, нажимаю «отправить»… она никуда не денется. Он остается на странице, и консоль сообщает: «E_WC_21: аутентификация пользователя не удалась из-за неверных значений аутентификации.»
Это превратилось в еще одну разочаровывающую вещь после того, как я потянул половину моих волос за документами authorize.net о том, что мне нужно делать с окончанием срока службы MD5 ... из которых я никогда не мог заставить что-либо работать, чтобы заменить Используемый метод отклика SIM-карты. response.js кажется довольно простым в качестве замены, и я застрял здесь тоже.
Что мне попробовать дальше?