Использование тестового API
последнее обновление - август 2023
Введение
Тестовый режим API даёт возможность изучить работу с API Unitpay / формой оплаты на тестовых данных без фактического проведения транзакций: - обмен данными; - формат запросов и ответов; - содержание запросов и ответов.
В тестовом режиме можно проверить как работают способ оплаты банковская карта.
Тестовый режим доступен только партнерам с активным проектом.
Платежи
Создание платежа
Создать тестовый платеж можно несколькими способами: через форму оплаты (простой способ) и через API.
Секретный ключ для тестового режима:
Для работы с тестовым режимом необходимо получить тестовый секретный ключ.
Для этого: 1) Перейдите на страницу настройки профиля; 2) Справа вы увидите блок с секретными ключами. Скопируйте секретный ключ для тестового режима;
3) Используйте скопированный ключ во всех тестовых запросах для параметра secretKey (кроме формирования signature).
ВАЖНО! После перехода в "боевой" режим не забудьте поменять тестовые параметры на реальные и заменить секретный ключ для тестового режима на настоящий в API.
Форма
Ссылка на оплату формируется простым способом. При создании ссылки необходимо использовать несколько обязательных параметров:
test | 1 |
paymentType | card |
login | Ваш регистрационный email в системе UnitPay |
secretKey | Ваш секретный ключ для тестового режима |
Дополнительные параметры оплаты:
currency | RUB (в тестовом режиме поддерживается только RUB) |
Пример создания тестовой ссылки (PHP):
API
Основной запрос формируется по документации, в запросе необходимо использовать тестовые данные, приведенные ниже.
test | 1 |
paymentType | card |
login | Ваш регистрационный email в системе UnitPay |
secretKey | Ваш секретный ключ для тестового режима |
Дополнительные параметры оплаты:
currency | RUB (в тестовом режиме поддерживается только RUB) |
Остальные параметры следует указывать согласно документации.
Пример успешного запроса:
Для API в тестовом режиме следует посылать все обязательные параметры, которые можно посмотреть на основной странице используемого метода. Все параметры ответа API в тестовом режиме соответствуют ответу в "боевом" режиме, если иного не описано в документации тестового API.
Пример успешного ответа:
Отличие значений параметров в тестовом режиме:
redirectUrl | строка | Тестовый URL для переадресации пользователя на шлюз платежной платформы. Если платеж не требует переадресации, то данный параметр будет отсутствовать. |
receiptUrl | строка | Тестовый URL для переадресации пользователя на чек платежа. |
Предупреждение: в тестовом режиме переданная информация не сохраняется. Поэтому информация по платежу может отличаться от переданных значений при создании платежа. Номер чека платежа и paymentId после оплаты по реквизитам также изменятся.
Тестовые реквизиты
URL, полученный при создании платежа в тестовом режиме, необходим только для тестирования платежа, 3ds-авторизации и вывода чека. Не передавайте такую ссылку пользователям!
Чтобы протестировать оплату, перейдите по сформированной ссылке. Ссылка ведёт на тестовую форму для ввода реквизитов карты. Введите реквизиты и пройдите 3ds-авторизацию для получения статуса по платежу. Деньги по реальным реквизитам списываться не будут.
Тестовые реквизиты для оплаты картой:
Дата выпуска карты и CVC код могут быть любыми.
4111111111111111 | Успешный платеж |
5555555555554444 | Успешный платеж |
2201382000000013 | Успешный платеж |
4024007123874108 | Недостаточно средств |
5100000000000412 | Ошибка 3ds-аутентификации |
2201234567880123 | Транзакция не разрешена банком-эмитентом |
4000000000000002 | Ожидание |
После введения реквизитов карты будет переход на тестовую форму 3ds-авторизации. В поле Код необходимо ввести 123456 для успешного платежа.
Информация о платеже
После тестовой оплаты в течение ближайшего часа вы сможете просмотреть электронный чек и взаимодействовать с ним.
Также вы можете по API отправить запрос на уточнение информации по тестовому платежу:
Возврат платежа
refundPayment Обязательные параметры метода
Тестовые paymentId для возврата платежа:
Значение | Сумма | Частичный возврат |
12358132134 | 5000 | Поддерживает |
383117770 | 1000 | Не поддерживает |
Добавьте к запросу необязательный params[sum], чтобы получить различные события возврата платежа (больше или меньше допустимой суммы возврата).
Выплаты
Создание выплаты
massPayment Обязательные параметры метода
Тестовые параметры для выплат:
Параметр | Значение |
transactionId | Любая строка из латинских букв и цифр |
purse | Любая строка из латинских букв и цифр |
При создании выплаты можно получить разные статусы. Чтобы протестировать их, используйте параметр paymentType=card и следующие transactionId:
Значение | Статус |
F12358132134 | success |
F383117770 | error |
Любое другое значение | not_completed |
Предупреждение: созданная выплата в тестовом режиме не сохраняется. Получение информации по совершенной тестовой выплате с помощью massPaymentStatus приведет к ошибке.
Информация о выплате
massPaymentStatus Обязательные параметры метода
В тестовом режиме получить информацию можно только по выплате из списка. Тестовые параметры можно посмотреть в таблице ниже.
Тестовые transactionId для получения информации по выплате:
Значение | Статус |
F12358132134 | success |
F383117770 | error |
Любое другое значение | Ответ с ошибкой |
Подписки
ВАЖНО: в тестовом режиме вы не сможете подтвердить подписку на проекте - на ваш обработчик subscriptionId не поступает.
В тестовом режиме предусмотрено создание ссылки на оплату с подпиской, просмотр списка активных подписок, получение информации о подписке по конкретному subscriptionId, а также закрытие подписки.
Данный функционал позволяет лишь посмотреть как выглядит запрос-ответ, без реальных операций. Для проверки реальной оплаты рекомендуем создавать подписку в боевом режиме на небольшие суммы.
Оплата по подписке
Оплата по подписке доступна только по картам. Чтобы провести тестовую оплату по подписке, добавьте к методу initPayment параметр subscriptionId с тестовым значением.
Тестовые subscriptionId:
Значение | Описание |
от 1 до 5 | Успешный платеж |
Любой другой subscriptionId | Выдаст ошибку: Подписка не найдена |
Получение списка активных подписок
listSubscriptions Обязательные параметры метода
Чтобы получить список тестовых активных подписок, используйте ваш уникальный projectId и секретный ключ для тестового режима.
Получение информации о подписке
getSubscription Обязательные параметры метода
В тестовом режиме получить информацию о подписке можно только по subscriptionId указанных в таблице ниже.
Тестовые subscriptionId:
Значение | Статус |
1, 2, 5 | active |
3 | close |
4 | new |
Закрытие подписки
closeSubscription Обязательные параметры метода
В тестовом режиме можно закрыть только подписку из таблицы ниже.
Тестовые subscriptionId подписок:
Значение | Статус |
1, 2, 5 | active |
3 | close |
4 | new |
Внимание: в тестовом режиме статус закрытия подписки не сохраняется.
Last updated