Песочница
Тестирование на рабочем сервере создает дополнительную нагрузку. Учетные записи, которые связаны с некорректно работающими приложениями, блокируются.
О песочнице
Песочница — среда для безопасного тестирования реализованного Merchant API. Тесты в песочнице помогут проверить взаимодействие реализованного API с Payme Business. Тестирование в песочнице позволяет получить детальное описание возникающих ошибок.
Инициирует тестирование и запускает тесты — разработчик мерчанта. Тестирование проводится с помощью запросов и ответов. Запросы отправляет сервер Payme Business, ответы — сервер мерчанта.
Подготовка к тестированию
Добавьте веб кассу в кабинете мерчанта. После создания веб-кассы, Payme Business выдаст 2 ключа:
ключ для кабинета — key;
ключ для песочницы — TEST_KEY.
Перейдите в песочницу. В песочнице введите Merchant ID (ID веб-кассы) и TEST_KEY.
Merchant ID хранится в параметрах разработчика веб-кассы.
Важно чтобы в настройках кассы был указан Endpoint URL — веб-адрес биллинга. По этому адресу Payme Business будет посылать запросы.
При создании транзакций в песочнице, важно правильно указать тип счёта:
На накопительный счёт деньги могут поступать неограниченное количество раз. Пример накопительного счёта — счет мобильного оператора;
На одноразовый счёт, деньги могут поступать только 1 раз. Пример одноразового счёта — заказ в интернет магазине.
Тестирование инициализации платежа рекомендуется проводить только после успешного завершения тестирования в песочнице: вначале протестируйте инициализацию платежа в песочнице, затем в продакшене.
Веб-адрес песочницы: https://test.paycom.uz
URL отправки чека в песочницу: https://test.paycom.uz
URL отправки чека в продакшн: https://checkout.paycom.uz
Тестирование
Тестирование проводится по 2 сценариям:
В первый сценарий включена проверка безопасности, поэтому вначале проводится тестирование по первому сценарию, затем по второму.
В платёжном плагине Merchant API уже реализовано, поэтому тестирование платёжного плагина проводится по тем же сценариям.
Создание и отмена неподтвержденной транзакции
Войдите в магазин как покупатель. Добавьте товар в корзину и оплатите заказ с помощью Payme. После оплаты произойдёт автоматический переход в «Песочницу» на страницу создания финансовой транзакции.
Проверьте авторизацию с неверными учетными данными
В разделе «Неверные данные» нажмите на ссылку «Неверная авторизация» и запустите тест.
На запросы к реализованным методам, реализованное Merchant API возвращает ответы с ошибкой -32504: «Недостаточно привилегий для выполнения метода».
Проверьте оплату неверной или недопустимой суммой
В разделе «Неверные данные» нажмите на ссылку «Неверная сумма».
В параметрах теста укажите действительный номер заказа, неверную сумму и запустите тест.
На запросы к реализованным методам CheckPerformTransaction и CreateTransaction, реализованное Merchant API возвращает ответы с ошибкой -31001: «Неверная сумма».
Проверьте оплату несуществующего счёта
В разделе «Неверные данные» нажмите на ссылку «Несуществующий счёт».
В параметрах теста укажите действительную сумму заказа, неверный номер заказа и запустите тест.
На запросы к реализованным методам CheckPerformTransaction и CreateTransaction, реализованное Merchant API возвращает ответы с ошибками -31050 — -31099: «Неверный код заказа».
Проверьте возможность создания финансовой транзакции
Проверку возможности создания финансовой транзакции обеспечивает реализованный метод CheckPerformTransaction.
В разделе «Платежные запросы» нажмите на ссылку “CheckPerformTransaction”.
Убедитесь что в парметрах теста присутствует значение парметра Account, сумма оплаты в тийинах и запустите тест.
На запрос к реализованному методу CheckPerformTransaction, реализованное Merchant API возвращает ответ без ошибок.
Создайте транзакцию
Создание транзакции обеспечивает реализованный метод CreateTransaction.
В разделе «Платежные запросы» нажмите на ссылку “CreateTransaction”.
Убедитесь что в параметрах запуска теста тип счета «Одноразовый», статус счета «Ожидает оплаты» и запустите тест.
Запросы по методам CreateTransaction, PerformTransaction, CancelTransaction посылаются два раза. В случае, если первый запрос даст сбой - второй обязательно пройдет. При повторных вызовах методов CreateTransaction, PerformTransaction, CancelTransaction ответ должен совпадать с ответом из первого запроса.
Реализованное Merchant API возвращает:
на запрос к реализованному методу CheckPerformTransaction — ответ с результатом “allow”: true,;
на запрос к реализованному методу CreateTransaction — ответ без ошибок;
на повторный запрос, к реализованному методу CreateTransaction — ответ без ошибок;
на запрос к реализованному методу CheckTransaction — ответ без ошибок;
на запрос к реализованному методу CreateTransaction c новой транзакцией и состоянием счета «В ожидании оплаты» — ответ с ошибкой -31008: “Невозможно выполнить операцию”.
Отмените неподтвержденную транзакцию
Отмену транзакции обеспечивает реализованный метод CancelTransaction.
В разделе «Платежные запросы» нажмите на ссылку “CancelTransaction”.
Убедитесь что в параметрах запуска теста присутствует id транзакции, статус транзакции “1” (транзакция создана) и запустите тест.
На запросы к реализованным методам CancelTransaction и CheckTransction, реализованное Merchant API возвращает ответы без ошибок.
Создание, подтверждение и отмена подтвержденной транзакции
Войдите в магазин как покупатель. Добавьте товар в корзину и оплатите заказ с помощью Payme. После оплаты произойдет автоматический переход в «Песочницу» на страницу создания финансовой транзакции.
Проверьте возможность создания финансовой транзакции
Проверку возможности создания финансовой транзакции обеспечивает реализованный метод CheckPerformTransaction.
В разделе «Платежные запросы» нажмите на ссылку “CheckPerformTransaction”.
Убедитесь что в парметрах теста присутствует значение парметра Account, сумма оплаты в тийинах и запустите тест.
На запрос к реализованному методу CheckPerformTransaction, реализованное Merchant API возвращает ответ без ошибок.
Создайте транзакцию
Создание транзакции обеспечивает реализованный метод CreateTransaction.
В разделе «Платежные запросы» нажмите на ссылку “CreateTransaction”.
Убедитесь что в параметрах запуска теста тип счета «Одноразовый», статус счета «Ожидает оплаты» и запустите тест.
Реализованное Merchant API возвращает:
на запрос к реализованному методу CheckPerformTransaction — ответ с результатом “allow”: true,;
на запрос к реализованному методу CreateTransaction — ответ без ошибок;
на повторный запрос, к реализованному методу CreateTransaction — ответ без ошибок;
на запрос к реализованному методу CheckTransaction — ответ без ошибок;
на запрос к реализованному методу CreateTransaction c новой транзакцией и состоянием счета «В ожидании оплаты» — ответ с ошибкой -31008: “Невозможно выполнить операцию”.
Подтвердите транзакцию
Подтверждение транзакции обеспечивает реализованный метод PerformTransaction.
В разделе «Платежные запросы» нажмите на ссылку “PerformTransaction”.
Убедитесь что в параметрах запуска теста присутствует id транзакции, статус транзакции “1” (создана) и запустите тест.
Реализованное Merchant API возвращает ответ без ошибок:
на запрос к реализованному методу PerformTransaction;
на повторный запрос, к реализованному методу PerformTransaction;
на запрос к реализованному методу CheckTransaction.
Отмените подтвержденную транзакцию
Отмену транзакции обеспечивает реализованный метод CancelTransaction.
В разделе «Платежные запросы» нажмите на ссылку “CancelTransaction”.
Убедитесь что в параметрах запуска теста присутствует id транзакции, статус транзакции “1” (транзакция создана) и запустите тест.
На запросы к реализованным методам CancelTransaction и CheckTransction, реализованное Merchant API возвращает ответы без ошибок.