Привет всем, я пытаюсь разобраться с ошибками Braintree, но столкнулся с небольшим количеством проблем … У меня есть приложение vuejs, которое делает вызов ajax на страницу php для создания карты. Она возвращает объект json, который выглядит так:
{"errors":{},"params":{"creditCard":{"customerId":"885008723","cardholderName":"Holy Sam","expirationMonth":"01","expirationYear":"20","options":{"verifyCard":"true"}},"merchantId":"ygpmj36rrztwbw6x"},"message":"Credit card type is not accepted by this merchant account.\nCredit card number is invalid.","creditCardVerification":null,"transaction":null,"subscription":null,"merchantAccount":null,"verification":null}
Как вы можете видеть, он выдает мне сообщение об ошибке, но без кода ошибки. Как получить коды ошибок Braintree в объекте ответа? Почему массив ошибок пуст, а я все еще получаю сообщение? Также Braintree проверяет дату истечения срока действия, чтобы удостовериться, что это действительная карта, и если да, то как бы я справился с этим, поскольку я не увидел код ошибки для нее.
Вот код, который я использую на странице php:
<?php
date_default_timezone_set('America/Denver');
$request_body = file_get_contents('php://input');
$json = json_decode($request_body);
require_once 'lib/Braintree.php';
$gateway = new Braintree_Gateway([
'environment' => 'sandbox',
'merchantId' => 'key',
'publicKey' => 'key',
'privateKey' => 'key'
]);
$result = $gateway->creditCard()->create([
'customerId' => $json->customerId,
'cardholderName' => $json->Name,
'number' => $json->cardNumber,
'expirationMonth' => $json->Month,
'expirationYear' => $json->Year,
'cvv' => $json->Cvv,
'options' => [
'verifyCard' => true]
]);
echo json_encode($result);
?>
Задача ещё не решена.
Других решений пока нет …