Download OpenAPI specification:Download
ImPay API подюключения мерчантов.
Данные передаются в теле POST запроса с JSON формате, кодировка UTF-8.
Идентификатор и ключ партнера выдаётся после регистрации в системе.
В заголовке запроса передаются параметра авторизации X-Login и X-Token.
При успешной обработке запроса возвращается код ответа HTTP 200. При ошибке авторизации код HTTP 401 Unauthorized.
При других ошибках возвращается ошибка 500 Internal Server Error или соответствующая.
Получить информацию о зарегистрированной карте по её идентификатору.
Параметры запроса
card | integer Идентификатор карты |
type | integer Тип карты (0 – для автоплатежа и пополнения 1 – только для пополнения) |
{- "card": 0,
- "type": 0
}
{- "status": 0,
- "message": "string",
- "card": {
- "id": 0,
- "num": "string",
- "exp": "string",
- "holder": "string"
}
}
Регистрация карты позволяет сохранить токен карты пользователя, который можно использовать для перевода на карту. Также можно зарегистрировать карту для последующего автоплатежа этой картой.
Для регистрации карты «для автоплатежа» совершается тестовый платеж на случайную сумму от 1 до 10 рублей.
Параметры запроса
type | integer Тип карты (0 – для автоплатежа и пополнения 1 – только для пополнения) |
extid | string <= 40 characters Внешний идентификатор запроса |
timeout | integer [ 10 .. 59 ] Тайм-аут ожидания оплаты, от 10 до 59 минут |
successurl | string <url> Адрес для Url для возврата после заверщения платежа (успех) |
failurl | string <url> Адрес для Url для возврата после заверщения платежа (ошибка) |
cancelurl | string <url> Адрес для Url для возврата после отказа от оплаты |
{- "type": 0,
- "extid": "string",
- "timeout": 10,
- "successurl": "string",
- "failurl": "string",
- "cancelurl": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0,
- "url": "string"
}
Перед запросом идентификатора карты, необходимо проверь статус завершения платежа по регистрации карты. У карт «для пополнения» срок действия отсутствует.
Параметры запроса
id | integer Идентификатор запроса регистрации карты |
type | integer Тип карты (0 – для автоплатежа и пополнения 1 – только для пополнения) |
{- "id": 0,
- "type": 0
}
{- "status": 0,
- "message": "string",
- "card": {
- "id": 0,
- "num": "string",
- "exp": "string",
- "holder": "string"
}
}
Отправляется оплаты услуг, с переходом к форме ввода, в ответе на который возвращается id операции.
Параметры платежа
amount | number Cумма платежа, руб |
document_id | string <= 40 characters Номер договора |
fullname | string <= 80 characters ФИО клиента |
extid | string <= 40 characters Внешний идентификатор запроса |
timeout | integer [ 10 .. 59 ] Тайм-аут ожидания оплаты, от 10 до 59 минут |
successurl | string <url> Адрес для Url для возврата после заверщения платежа (успех) |
failurl | string <url> Адрес для Url для возврата после заверщения платежа (ошибка) |
cancelurl | string <url> Адрес для Url для возврата после отказа от оплаты |
{- "amount": 0,
- "document_id": "string",
- "fullname": "string",
- "extid": "string",
- "timeout": 10,
- "successurl": "string",
- "failurl": "string",
- "cancelurl": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0,
- "url": "string"
}
Отправляется оплаты услуг автоплатежом, в ответе на который возвращается id операции. По id в последующем необходимо уточнить статус выполнения операции.
Параметры платежа
card | integer Идентификатор карты |
amount | number Cумма платежа |
extid | string <= 40 characters Внешний идентификатор запроса |
{- "card": 0,
- "amount": 0,
- "extid": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0
}
Запрос результата операции. Средства будут списаны с карты и перечислены мерчанту при успешном статусе платежа.
ID платежа
id | integer идентификатор запроса |
{- "id": 0
}
{- "status": 0,
- "message": "string",
- "rc": "string"
}
Для подтверждения 3D Secure, клиент, с помощью POST запроса, переадресуется на Url с передачей параметров:
- Для 3DS v1 параметры: PaReq, MD, TermUrl (URL возврата клиента)
- Для 3DS v2 параметр threeDSMethodData: base64 от строки ('{"threeDSServerTransID":threeDSServerTransID (из ответа),"threeDSMethodNotificationURL":"URL возврата клиента"}')
URL возврата клиента должен обработать POST запрос, и: - для 3DS v1 получить параметр "PaRes", который необходимо передать в запросе завершения оплаты (/pay/confirm). - для 3DS v2 не позднее чем через 10 секунд после возврата клиента необходимо отправить запрос подтверждения (/pay/auth).
Данные платежа
amount | number Cумма платежа, руб |
document_id | string <= 40 characters Номер договора |
fullname | string <= 80 characters ФИО клиента |
extid | string <= 40 characters Внешний идентификатор запроса |
timeout | integer [ 10 .. 59 ] Тайм-аут ожидания оплаты, от 10 до 59 минут |
cardnumber | string [ 16 .. 18 ] characters Номер карты (16/18 цифр) |
cardholder | string Держатель карты |
cardyear | string <yy> Срок действия (гг) |
cardmonth | string <mm> Срок действия (мм) |
cardcvc | string <xxx> CVC/CVV код |
{- "amount": 0,
- "document_id": "string",
- "fullname": "string",
- "extid": "string",
- "timeout": 10,
- "cardnumber": "stringstringstri",
- "cardholder": "string",
- "cardyear": "string",
- "cardmonth": "string",
- "cardcvc": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0,
- "3dsvers": 0,
- "threedsservertransid": "string",
- "idcard": 0,
- "url": "string",
- "pa": "string",
- "md": "string"
}
Если возвращено значение "auth3ds", то не нужно переходить за 3DS страницу авторизации, а сразу оправить запрос на завершение транзакции (/pay/confirm).
Иначе для подтверждения 3D Secure, клиент, с помощью POST запроса, переадресуется на Url с передачей параметров "creq", "threeDSSessionData".
Адрес возврата клиента должен обработать POST запрос, и получить параметр "Cres", который необходимо передать в запросе подтверждения оплаты (/pay/confirm).
Данные для подтверждения
status | integer Статус (0 – ошибка 1 - успешно) |
id | integer Идентификатор запроса |
threedsservertransid | string Идентификатор транзакции 3DS v2 |
successurl | string Адрес для Url для возврата после завершения 3DS |
cardnumber | string Номер карты |
cardyear | string <yy> Год срока действия карты |
cardmonth | string <mm> Месяц срока действия карты |
clientip | string IP адрес клиента |
clientacceptheader | string Заголовок Accept клиента |
clientjavaenabled | boolean Включен JS в браузере |
clientlanguage | string Язык браузера |
clientcolordepth | string Глубина цвета браузера |
clientscreenheight | integer Высота экрана |
clientscreenwidth | integer Ширина экрана |
clienttz | integer Временная зона клиента |
clientuseragent | string User-Agent клиента |
challengewindowsize | integer Размер формы 3DS v2: |
{- "status": 0,
- "id": 0,
- "threedsservertransid": "string",
- "successurl": "string",
- "cardnumber": "string",
- "cardyear": "string",
- "cardmonth": "string",
- "clientip": "string",
- "clientacceptheader": "string",
- "clientjavaenabled": true,
- "clientlanguage": "string",
- "clientcolordepth": "string",
- "clientscreenheight": 0,
- "clientscreenwidth": 0,
- "clienttz": 0,
- "clientuseragent": "string",
- "challengewindowsize": 0
}
{- "status": 0,
- "message": "string",
- "url": "string",
- "creq": "string",
- "threedssessiondata": "string",
- "auth3ds": "string",
- "dstransid": "string",
- "eci": "string"
}
Для завершения оплаты:
- Для 3DS v1 передаются: "pares", "md".
- Для 3DS v2 передаются: "cres", "cardnumber" или "auth3ds", "dstransid", "eci".
Данные для завершения
id | integer Идентификатор запроса |
pares | string Данные для авторизации (3DS v1) |
md | string Параметр md (3DS v1) |
cardnumber | string Номер карты (3DS v2) |
cres | string Данные для подтверждения 3DS v2 |
auth3ds | string Данные для авторизации (3DS v2) |
dstransid | string Идентификатор транзакции от Directory Server платежной системы (3DS v2) |
eci | string Electronic Commerce Indicator (3DS v2) |
idcard | integer ID карты (3DS v2) |
{- "id": 0,
- "pares": "string",
- "md": "string",
- "cardnumber": "string",
- "cres": "string",
- "auth3ds": "string",
- "dstransid": "string",
- "eci": "string",
- "idcard": 0
}
{- "status": 0,
- "message": "string"
}
Осуществляется временное резервирование денежных средств с карты клиента до момента подтверждения операции или её отмены.
Параметры платежа
amount | number Cумма платежа, руб |
document_id | string <= 40 characters Номер договора |
fullname | string <= 80 characters ФИО клиента |
extid | string <= 40 characters Внешний идентификатор запроса |
timeout | integer [ 10 .. 59 ] Тайм-аут ожидания оплаты, от 10 до 59 минут |
successurl | string <url> Адрес для Url для возврата после заверщения платежа (успех) |
failurl | string <url> Адрес для Url для возврата после заверщения платежа (ошибка) |
cancelurl | string <url> Адрес для Url для возврата после отказа от оплаты |
{- "amount": 0,
- "document_id": "string",
- "fullname": "string",
- "extid": "string",
- "timeout": 10,
- "successurl": "string",
- "failurl": "string",
- "cancelurl": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0,
- "url": "string"
}
Завершение холдирования, средства окончательно списываются с карты, если указан amount меньше холдированной суммы, то остаток возвращается клиенту.
Платеж для подтверждения
id | integer Идентификатор запроса |
amount | number Cумма платежа, руб |
{- "id": 0,
- "amount": 0
}
{- "status": 0,
- "message": "string"
}
Отмена холдирования, средства возвращается на карту клиента.
Платеж для отмены
id | integer Идентификатор запроса |
{- "id": 0
}
{- "status": 0,
- "message": "string"
}
Отправляется запрос перечисления на карту, в ответе на который возвращается id операции. По id в последующем необходимо уточнить статус выполнения операции.
Параметры перевода
card | integer Идентификатор карты (Передаётся сard или cardnum) |
cardnum | string [ 16 .. 18 ] characters Номер карты (16/18 цифр) (Передаётся сard или cardnum) |
amount | number Cумма платежа |
extid | string <= 40 characters Внешний идентификатор запроса |
document_id | string <= 40 characters Номер договора |
fullname | string <= 80 characters ФИО клиента |
{- "card": 0,
- "cardnum": "stringstringstri",
- "amount": 0,
- "extid": "string",
- "document_id": "string",
- "fullname": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0
}
Отправляется запрос выплаты на на счет, в ответе на который возвращается id операции. По нему в последующем необходимо уточнить статус выполнения операции.
Параметры перевода
name | string Наименование получателя |
inn | string ИНН получателя |
kpp | string КПП получателя |
account | string Счет в банке |
bic | string БИК банка |
descript | string <= 210 characters Назначение платежа |
amount | number Cумма платежа |
extid | string Внешний идентификатор запроса |
{- "name": "string",
- "inn": "string",
- "kpp": "string",
- "account": "string",
- "bic": "string",
- "descript": "string",
- "amount": 0,
- "extid": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0
}
Отправляется запрос выплаты на на счет, в ответе на который возвращается id операции. По нему в последующем необходимо уточнить статус выполнения операции.
Параметры перевода
fio | string ФИО получателя |
account | string Счет в банке |
bic | string БИК банка |
descript | string <= 210 characters Назначение платежа |
amount | number Cумма платежа |
extid | string Внешний идентификатор запроса |
{- "fio": "string",
- "account": "string",
- "bic": "string",
- "descript": "string",
- "amount": 0,
- "extid": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0
}
Запрос результата операции. Средства будут перечислены со счета при успешном статусе платежа.
ID платежа
id | integer идентификатор запроса |
{- "id": 0
}
{- "status": 0,
- "message": "string",
- "rc": "string"
}
Отправляется запрос идентификации, в ответе на который возвращается id операции. По нему в последующем необходимо уточнить статус выполнения операции. Для идентификации телефона необходимо отправить дополнительный запрос идентификации, в котором указать код пришедший по СМС.
Параметры идентификации
id | integer Идентификатор запроса (указывается повторном запросе, для проверки кода отправленного на телефон) |
fam | string Фамилия |
nam | string Имя |
otc | string Отчество |
paspser | string Серия паспорта |
paspnum | string Номер паспорта |
paspdate | string Дата выдачи паспорта |
paspcode | string Код подразделения паспорта |
paspvid | string Кем выдан паспорт |
phone | string Телефон (при необходимости проверки) |
phonecode | string Код отправленный на телефон (при повторном запросе) |
birth | string Дата рождения |
inn | string ИНН (при необходимости проверки) |
snils | string СНИЛС (при необходимости проверки) |
{- "id": 0,
- "fam": "string",
- "nam": "string",
- "otc": "string",
- "paspser": "string",
- "paspnum": "string",
- "paspdate": "string",
- "paspcode": "string",
- "paspvid": "string",
- "phone": "string",
- "phonecode": "string",
- "birth": "string",
- "inn": "string",
- "snils": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0
}
Запрос результата операции. Средства будут перечислены со счета мерчанта заёмщику при успешном статусе платежа.
ID запрса
id | integer идентификатор запроса |
{- "id": 0
}
{- "status": 0,
- "message": "string",
- "rc": "string"
}
Запрос списка операций в системе.
ID запрса
type | integer Тип операции |
datefrom | string <date> Дата начала |
dateto | string <date> Дата окончания |
{- "type": 0,
- "datefrom": "2019-08-24",
- "dateto": "2019-08-24"
}
{- "status": 0,
- "message": "string",
- "list": [
- {
- "extid": "string",
- "id": 0,
- "service": "string",
- "sum": 0,
- "date": "string",
- "state": 0,
- "message": "string"
}
]
}
Запрос выписки по счету площадки.
Параметры запроса
account | string Счет в банке |
datefrom | string <date-time> Дата начала |
dateto | string <date-time> Дата окончания |
{- "account": "string",
- "datefrom": "2019-08-24T14:15:22Z",
- "dateto": "2019-08-24T14:15:22Z"
}
{- "status": 0,
- "message": "string",
- "statements": [
- {
- "id": 0,
- "number": 0,
- "date": "2019-08-24T14:15:22Z",
- "datedoc": "2019-08-24T14:15:22Z",
- "summ": 0,
- "description": "string",
- "isсredit": true,
- "name": "string",
- "inn": "string",
- "kpp": "string",
- "bic": "string",
- "bank": "string",
- "bankaccount": "string",
- "account": "string"
}
]
}
Запрос регистрации бенифициара
Параметры запроса
registrationtype | integer Тип регистрации организации - 0 - Физлицо (ФЛ) 1 - ИП 2 - Юрлицо (ЮЛ) |
ownershipform | integer Тип организации (ЮЛ / ИП) - 1 - Организация, находящаяся в федеральной собственности 2 - Организация, находящаяся в государственной (кроме федеральной) собственности 3 - Негосударственная организация 4 - Физические лица - индивидуальные предприниматели |
ownershipgroup | integer Тип собственности (ЮЛ / ИП) - 1 - Финансовая организация, 2 - Коммерческая организация, 3 - Некоммерческая организация, 4 - Индивидуальный предприниматель |
msp | integer Субъект МСП (ЮЛ / ИП), 0 - нет 1 - да |
legalformsofbusiness | integer Организационно-правовая форма (ЮЛ) - 0 - Иное 1 - Общество с ограниченной ответственностью 2 - Закрытое акционерное общество 3 - Открытое акционерное общество 4 - Акционерное общество 5 - Публичное акционерное общество |
capitalpayed | number Оплаченный уставной капитал ЮЛ |
urname | string Полное наименование ЮЛ |
shorturname | string Сокращенное наименование ЮЛ |
inn | string ИНН (ЮЛ / ИП) |
kpp | string КПП ЮЛ |
ogrn | string ОГРН (ЮЛ / ИП) |
okved | string ОКВЕД (ЮЛ / ИП) |
okopf | string ОКОПФ (ЮЛ / ИП) |
okpo | string ОКПО (ЮЛ / ИП) |
govregistrationdate | string <date(YYYY-MM-DD)> Дата государственной регистрации (ЮЛ / ИП) |
govregistrationplace | string Место государственной регистрации (ЮЛ / ИП) |
govregistrationathority | string Наименование регистрирующего органа (ЮЛ / ИП) |
lastname | string Фамилия ген.директора ЮЛ / ИП / ФЛ |
firstname | string Имя ген.директора ЮЛ / ИП / ФЛ |
middlename | string Отчество ген.директора ЮЛ / ИП / ФЛ |
dirregistrationdate | string <date(YYYY-MM-DD)> Дата назначения на должность ген.директора ЮЛ |
innfl | string ИНН ген.директора ЮЛ / ФЛ |
birthdate | string <date(YYYY-MM-DD)> Дата рождения ген.директора ЮЛ / ИП / ФЛ |
birthplace | string Место рождения ген.директора ЮЛ / ИП / ФЛ |
gender | integer Пол ген.директора ЮЛ / ФЛ - 0 - М 1 - Ж |
pdl | integer Публичное должностное лицо - 0 - нет 1 - да |
rpdl | integer Родственник публичного должностного лица - 0 - нет 1 - да |
nationality | string Гражданство (трехбуквенный ISO код страны, например RUS) |
resident | integer Резидент - 0 - нет 1 - да |
object (Document) document - Документ, удостоверяющий личность, righttostaydocument - Документ, разрешающий проживание (для иностранных нраждан) | |
object (Document) document - Документ, удостоверяющий личность, righttostaydocument - Документ, разрешающий проживание (для иностранных нраждан) | |
phone | string Контактный телефон |
string Адрес электронной почты | |
object (Adress) uraddres - Юридический адрес (Адрес регистрации ИП / ФЛ), actualaddres - Фактический адрес | |
object (Adress) uraddres - Юридический адрес (Адрес регистрации ИП / ФЛ), actualaddres - Фактический адрес | |
groundforparticipation | string Основание участия в договоре |
joiningdate | string <date(YYYY-MM-DD)> Дата присоединения |
{- "registrationtype": 0,
- "ownershipform": 0,
- "ownershipgroup": 0,
- "msp": 0,
- "legalformsofbusiness": 0,
- "capitalpayed": 0,
- "urname": "string",
- "shorturname": "string",
- "inn": "string",
- "kpp": "string",
- "ogrn": "string",
- "okved": "string",
- "okopf": "string",
- "okpo": "string",
- "govregistrationdate": "string",
- "govregistrationplace": "string",
- "govregistrationathority": "string",
- "lastname": "string",
- "firstname": "string",
- "middlename": "string",
- "dirregistrationdate": "string",
- "innfl": "string",
- "birthdate": "string",
- "birthplace": "string",
- "gender": 0,
- "pdl": 0,
- "rpdl": 0,
- "nationality": "string",
- "resident": 0,
- "document": {
- "type": 0,
- "serial": "string",
- "number": "string",
- "issueby": "string",
- "date": "string",
- "finishdate": "string",
- "code": "string"
}, - "righttostaydocument": {
- "type": 0,
- "serial": "string",
- "number": "string",
- "issueby": "string",
- "date": "string",
- "finishdate": "string",
- "code": "string"
}, - "phone": "string",
- "email": "string",
- "uraddres": {
- "fias": "string",
- "country": "string",
- "region": "string",
- "regiontype": "string",
- "city": "string",
- "citytype": "string",
- "place": "string",
- "placetype": "string",
- "street": "string",
- "streettype": "string",
- "house": "string",
- "corp": "string",
- "flat": "string"
}, - "actualaddres": {
- "fias": "string",
- "country": "string",
- "region": "string",
- "regiontype": "string",
- "city": "string",
- "citytype": "string",
- "place": "string",
- "placetype": "string",
- "street": "string",
- "streettype": "string",
- "house": "string",
- "corp": "string",
- "flat": "string"
}, - "groundforparticipation": "string",
- "joiningdate": "string"
}
{- "status": 0,
- "message": "string"
}
Осуществляется перечисление НДФЛ со счета площадки.
Параметры перевода
name | string Наименование получателя |
inn | string ИНН получателя |
kpp | string КПП получателя |
account | string Счет в банке |
bic | string БИК банка |
descript | string <= 210 characters Назначение платежа |
amount | number Cумма платежа |
sendername | string Наименование отправвителя |
senderadress | string Адрес отправвителя |
senderaccount | string Счет отправвителя |
kbk | string КБК |
okato | string ОКАТО |
paymentbase | string Основание платежа |
taxperiod | string Налоговый период |
taxdocnum | string Номер налогового документа |
taxdocdate | string Дата налогового документа |
taxpaymenttype | string Тип налогового платежа |
extid | string Внешний идентификатор запроса |
{- "name": "string",
- "inn": "string",
- "kpp": "string",
- "account": "string",
- "bic": "string",
- "descript": "string",
- "amount": 0,
- "sendername": "string",
- "senderadress": "string",
- "senderaccount": "string",
- "kbk": "string",
- "okato": "string",
- "paymentbase": "string",
- "taxperiod": "string",
- "taxdocnum": "string",
- "taxdocdate": "string",
- "taxpaymenttype": "string",
- "extid": "string"
}
{- "status": 0,
- "message": "string",
- "id": 0
}
Оповещение отправляется обратным HTTP-запросом на адрес указанный в кабинете.
extid required | string внешний идентификатор запроса |
id required | integer идентификатор запроса платежа |
sum required | number сумма платежа |
status required | integer статус завершения (1 – успешно 2,3 - ошибка, 4 – холдирование) |
key required | string Ключ, формируется как хеш суммы строк параметров md5(extid + id + sum + status + Ключ обратного запроса). |