В документе представлены данные для интеграции с платежной системой AvosPay. Система позволяет пополнять счета сторонних систем через кошельки выдуманной платежной системы “Авось”.

1. Общие положения

1.1. Авторизация запросов

Любой запрос к системе AvosPay должен быть подписан алгоритмом, описанным ниже.

Любой запрос к API AvosPay должен содержать поля sign (подпись запроса) и timestamp (значение текущего времени в миллисекундах, UTC). Для того чтобы вычислить подпись, необходимо:

  1. Вычислить строку params как конкатенацию всех значений параметров запроса, кроме параметров sign и timestamp, в алфавитном порядке ключей параметров запроса.
  2. Вычислить MD5 для строки params + timestamp + secret - результат такого вычисления и будет корректным значением sign.

Например, для запроса вида

{
	"requestId": 1442232,
	"client": "cli4455", 
	"transactionTime": "1640611574487"
}

И значения timestamp 1640611619800 , значения secret testsecret, результат вычисления подписи будет равен fec70c99627e7ef49846b3eaeea2ee6e, и итоговый запрос должен будет выглядеть следующим образом

{
	"requestId": 1442232,
	"client": "cli4455", 
	"transactionTime": "1640611574487",
	"timestamp": "1640611619800",
	"sign": "fec70c99627e7ef49846b3eaeea2ee6e"
}

1.2. Коды ошибок

На любой запрос API AvosPay может вернуть логическую ошибку вида

{
	"errorCode": 1,
	"errorDescription": "Authorization error"
}

Возможные коды ошибок описаны ниже

Коды ошибок

1.3. Сценарий проведения платежа

Ниже описан типичный сценарий проведения платежа в системе AvosPay

  1. Пользователь на сайте или в мобильном приложении мерчанта инициирует пополнение счета
  2. Мерчант делает запрос к системе AvosPay для инициализации платежа