Я тестирую песочницу Braintree (PHP), и хотя я использую фальшивый nonce, транзакции по-прежнему показывают, проходит действительный
У меня есть внешний интерфейс и бэкэнд PHP
Мой код для тестирования выглядит следующим образом:
$amount = '12.00';
$nonce = 'fake-processor-declined-visa-nonce';
$result = Braintree_Transaction::sale(['amount' => $amount,
'paymentMethodNonce' => $nonce,
'options' => ['submitForSettlement' => true]
]);
$debug = get_object_vars($result);
print_r($debug);
исход
Array
(
[success] => 1
[transaction] => Braintree\Transaction Object
(
[_attributes:protected] => Array
(
[id] => 9bnyb32r
[status] => submitted_for_settlement
[type] => sale
[currencyIsoCode] => EUR
[amount] => 12.00
[merchantAccountId] => somenamehere
[subMerchantAccountId] =>
[masterMerchantAccountId] =>
[orderId] =>
[createdAt] => DateTime Object
Я предполагаю, что фальшивые ноу-хау существуют для проверки ошибок в песочнице … или я что-то упустил
https://developers.braintreepayments.com/reference/general/testing/php#test-amounts
Полное раскрытие: я работаю в Braintree. Если у вас есть дополнительные вопросы, не стесняйтесь обращаться служба поддержки.
Недопустимые одноразовые номера вызывают неудачный ответ проверки карты, но не вызывать сбой транзакций. Чтобы смоделировать неудачную транзакцию, настройте сумма сделки вместо.
Пытаясь протестировать некоторые похожие вещи в PHP, я нашел несколько полезных, хорошо названных одноразовых тестов в \Braintree\Test\Nonces
в библиотеке PHP Braintree. Я был в состоянии использовать fake-valid-visa-nonce
чтобы сделать тестирование мне нужно было создать новый способ оплаты.