Дополнение к интерфейсу перевода кредитов/денег
Добавлено: 27 мар 2009, 08:35
Сейчас при переводе кредитов или денег посредством интерфейсов никак не учитывается номер счёта, по которому совершается перевод. То есть возможны ситуации, когда перевод по одному и тому же счёту может быть выполнен многократно, например, при "потере по дороге" ответа сервера JetSwap Merchant.
Предлагаю следующее:
1. В форму запроса перевода добавить (необязательный) параметр PAY_ORDER (номер счёта в системе учёта продавца).
2. При получении запроса перевода делать проверку, выполнялся ли ранее перевод с таким PAY_ORDER для данного PAY_API, если выполнялся - вернуть ошибку "перевод уже совершён".
3. Внести соответствующие изменения в формирование MD5-подписи запроса.
Почему параметр может быть необязательным? Например, если его поставить в 0, проверку уникальности можно не делать (полезно при тестировании). В таком случае его можно даже не включать в подпись, чтобы уже существующие интерфейсы сохранили работоспособность.. но это уже вопрос, касающийся реализации.
Предлагаю следующее:
1. В форму запроса перевода добавить (необязательный) параметр PAY_ORDER (номер счёта в системе учёта продавца).
2. При получении запроса перевода делать проверку, выполнялся ли ранее перевод с таким PAY_ORDER для данного PAY_API, если выполнялся - вернуть ошибку "перевод уже совершён".
3. Внести соответствующие изменения в формирование MD5-подписи запроса.
Почему параметр может быть необязательным? Например, если его поставить в 0, проверку уникальности можно не делать (полезно при тестировании). В таком случае его можно даже не включать в подпись, чтобы уже существующие интерфейсы сохранили работоспособность.. но это уже вопрос, касающийся реализации.