Использование тестового API
последнее обновление - август 2023
Last updated
последнее обновление - август 2023
Last updated
Тестовый режим API даёт возможность изучить работу с API Unitpay / формой оплаты на тестовых данных без фактического проведения транзакций: - обмен данными; - формат запросов и ответов; - содержание запросов и ответов.
В тестовом режиме можно проверить как работают способ оплаты банковская карта.
Тестовый режим доступен только партнерам с активным проектом.
Создать тестовый платеж можно несколькими способами: через форму оплаты (простой способ) и через API.
Секретный ключ для тестового режима:
Для работы с тестовым режимом необходимо получить тестовый секретный ключ.
Для этого: 1) Перейдите на страницу настройки профиля; 2) Справа вы увидите блок с секретными ключами. Скопируйте секретный ключ для тестового режима;
3) Используйте скопированный ключ во всех тестовых запросах для параметра secretKey (кроме формирования signature).
ВАЖНО! После перехода в "боевой" режим не забудьте поменять тестовые параметры на реальные и заменить секретный ключ для тестового режима на настоящий в API.
Ссылка на оплату формируется простым способом. При создании ссылки необходимо использовать несколько обязательных параметров:
test
1
paymentType
card
login
Ваш регистрационный email в системе UnitPay
secretKey
Ваш секретный ключ для тестового режима
currency
RUB (в тестовом режиме поддерживается только RUB)
Основной запрос формируется по документации, в запросе необходимо использовать тестовые данные, приведенные ниже.
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
Внимание: в тестовом режиме статус закрытия подписки не сохраняется.