- HTTP-запрос
- Тело запроса
- Тело ответа
- UpiДетали
- Результат выплаты средств
- DisburseFundsResultCode
- RawResult
Инициирует движение денег между платежным процессором и счетом клиента. Комбинация requestId
в заголовке и paymentIntegratorAccountId
является ключом идемпотентности и уникально идентифицирует эту транзакцию. Все изменения в этой транзакции заполняют значение requestId
в поле disburseFundsRequestId
.
Если конечная точка обнаруживает ошибку при обработке запроса, тело ответа от этой конечной точки должно иметь тип
.ErrorResponse
Пример запроса выглядит так:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "liUrreQY233839dfFFb24gaQM",
"requestTimestamp": "1502220434778"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"upiDetails": {
"vpa": "foo@icici"
},
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "208000000"
}
Пример ответа выглядит так:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA",
"disburseFundsResult": {
"disburseFundsResultCode": "SUCCESS"
}
}
HTTP-запрос
POST https://www.integratorhost.example.com/v1/disburseFunds
Тело запроса
Тело запроса содержит данные следующей структуры:
JSON-представление |
---|
{ "requestHeader": { object ( |
Поля | |
---|---|
requestHeader | ОБЯЗАТЕЛЬНО : общий заголовок для всех запросов. |
paymentIntegratorAccountId | ОБЯЗАТЕЛЬНО : это идентификатор учетной записи платежного интегратора, который определяет договорные ограничения, связанные с этой транзакцией. |
transactionDescription | ОБЯЗАТЕЛЬНО : это описание транзакции, которое можно указать в выписке клиента. Локализовано для userLocale, найденного в |
currencyCode | ТРЕБУЕТСЯ : трехбуквенный код валюты ISO 4217. |
amount | ОБЯЗАТЕЛЬНО : Сумма покупки в микро валютной единице. |
Объединить поле | |
upiDetails | НЕОБЯЗАТЕЛЬНО : платежные реквизиты, специфичные для инструментов UPI. |
Тело ответа
Объект ответа для метода выплаты средств.
В случае успеха тело ответа содержит данные следующей структуры:
JSON-представление |
---|
{ "responseHeader": { object ( |
Поля | |
---|---|
responseHeader | ОБЯЗАТЕЛЬНО : общий заголовок для всех ответов. |
paymentIntegratorTransactionId | ОБЯЗАТЕЛЬНО : этот идентификатор специфичен для интегратора и генерируется интегратором. Это идентификатор, по которому интегратор знает эту транзакцию. Для удобства этот идентификатор включен в детали денежного перевода. |
disburseFundsResult | ОБЯЗАТЕЛЬНО : Результат запроса на выплату средств. |
UpiДетали
Подробная информация о счете UPI, на который будет произведена выплата.
JSON-представление |
---|
{ "vpa": string } |
Поля | |
---|---|
vpa | ОБЯЗАТЕЛЬНО : виртуальный платежный адрес пользователя (VPA), используемый для перевода денег с использованием протокола UPI. Например, foo@icici . |
Результат выплаты средств
Информация об окончательном результате выплаты.
JSON-представление |
---|
{ "disburseFundsResultCode": enum ( |
Поля | |
---|---|
disburseFundsResultCode | ОБЯЗАТЕЛЬНО : Код результата этой выплаты. |
rawResult | НЕОБЯЗАТЕЛЬНО : необработанный результат этой выплаты. Используется для информирования системы рисков и аналитики Google. В ситуациях отказа от сопоставления кода данные иногда теряются. Интегратор может предоставить Google необработанный код. Например, шлюз кредитных карт (интегратор) может использовать это поле, чтобы сообщить Google точный код отклонения, полученный из сети VISA. В этом случае Это значение является обязательным , если |
Поле объединения | |
transactionMaxLimit | НЕОБЯЗАТЕЛЬНО : если Эта сумма представляет собой микротот того же |
transactionMinLimit | НЕОБЯЗАТЕЛЬНО : если Эта сумма представляет собой микротот того же |
DisburseFundsResultCode
Коды результатов для вызова выплаты средств.
Перечисления | |
---|---|
UNKNOWN_RESULT | Никогда не устанавливайте это значение по умолчанию! |
SUCCESS | Выплата прошла успешно. |
DISBURSEMENT_UNDER_TRANSACTION_LIMIT | Запрошенная сумма выплаты не соответствует минимальной сумме транзакции, установленной интегратором. Если этот код используется, заполните поле transactionMinLimit минимальной суммой транзакции для целей обмена сообщениями с пользователем. |
DISBURSEMENT_EXCEEDS_TRANSACTION_LIMIT | Запрошенная сумма выплаты превышает максимальный лимит интегратора на транзакцию. Если используется этот код, заполните поле transactionMaxLimit лимитом транзакции для целей обмена сообщениями с пользователем. |
ACCOUNT_CLOSED | Учетная запись пользователя у интегратора закрыта. Это возвращаемое значение приведет к закрытию инструмента пользователя в Google. Пользователь будет вынужден добавить новый инструмент. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER | Аккаунт пользователя у интегратора закрыт, подозрение на захват аккаунта. Это возвращаемое значение приведет к закрытию инструмента пользователя в Google. Пользователь будет вынужден добавить новый инструмент. |
ACCOUNT_CLOSED_FRAUD | Аккаунт пользователя у интегратора закрыт из-за мошенничества. Это возвращаемое значение приведет к закрытию инструмента пользователя в Google. Пользователь будет вынужден добавить новый инструмент. |
ACCOUNT_ON_HOLD | Аккаунт пользователя заблокирован. |
RawResult
Необработанный объект результата.
JSON-представление |
---|
{ "scope": string, "rawCode": string } |
Поля | |
---|---|
scope | НЕОБЯЗАТЕЛЬНО : Область действия rawCode может быть пустой. |
rawCode | ОБЯЗАТЕЛЬНО : необработанный код интегратора или его подсистем. |