PayIn - P2P - H2H#
На этой странице описаны методы для работы c ордерами на ввод типа P2P по флоу H2H.
Создание ордера#
Запрос#
URL: POST https://<host>/api/v1/payin
Заголовки:
Content-Type: application/jsonAuthorization: Bearer <YOUR-API-KEY>. См. страницу "Авторизация запросов"
Тело запроса:
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
methodID |
integer | да | Метод перевода. Будет сообщен при интеграции |
amount |
float64 | да | Сумма платежа в валюте, заданной методом |
trafficType |
string | нет | Тип трафика. Возможные значения: "ftd" (первичный), "td" (вторичный, доверенный), "mixed" (смешанный). Если значение не указано, используется "mixed" |
clientID |
string | нет* | ID или имя клиента мерчанта. |
idTransactionMerchant |
string | нет | ID ордера в системе мерчанта. Должен быть уникальным в рамках одного аккаунта мерчанта |
integrationMerhcnatData.webHook |
string | нет | URL-адрес, по которому будут направлены callback-запросы при изменениях в одрере. ⚠️ Название поля содержит опечатку — необходимо передавать именно integrationMerhcnatData |
clientMetadata.phone |
string | нет* | Номер телефона клиента. Для гео Африки обязателен |
clientMetadata.operator |
string | нет* | Мобильный оператор клиента (например, "mts") |
clientMetadata.name |
string | нет* | Имя и фамилия клиента |
clientMetadata.email |
string | нет* | Email клиента |
* - может быть обязательным для отдельных гео — уточняйте при интеграции, как и требования к полям clientMetadata.
Пример cURL#
curl -X 'POST' \
'https://<host>/api/v1/payin' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <YOUR-API-KEY>' \
-d '{
"methodID": 9,
"amount": 100.12,
"clientID": "ID1234",
"idTransactionMerchant": "316b6280-d6e2-4627-bacd-fcda062438bc",
"integrationMerhcnatData": {
"webHook": "http://example.com"
},
"clientMetadata": {
"phone": "88005553535",
"operator": "mts",
"name": "Ivan Ivanov",
"email": "ivan@example.com"
}
}'
Ответ#
См. раздел "Структура ответа API методов"
Успешный ответ#
HTTP Status Code: 200
Тело ответа:
{
"data": {
"amount": 10,
"amountComission": 0.5,
"currency": "AZN",
"dateAdded": "2025-11-28T14:22:52.09469Z",
"dateUpdated": "2025-11-28T14:22:52.613964Z",
"exchangeRate": 1.78,
"id": "e11106ca-fb33-42d5-bfc3-17233b6635ec",
"idTransactionMerchant": null,
"merchantID": "e7eb6ae1-f477-4712-99ca-b93e6e95824b",
"orderType": "payIn",
"paymentDetailsData": {
"bankCode": "SBER",
"mediatorName": "Ivan Ivanov",
"methodID": 2,
"number": "1111 2222 3333 4444",
"numberAdditional": null,
"link": null,
"requisiteTypeCode": "card"
},
"routingAttempts": [],
"status": "payment_pending",
"usdtAmount": 5.617978,
"usdtAmountComission": 0.280899
},
"result": {
"codeError": "none",
"message": null,
"status": "success",
"x-request-id": "4d925d05e23f81170a7d899a482d2391"
}
}
Описание полей структуры data:
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
id |
string | да | Уникальный ID ордера в системе MoneyMania |
dateAdded |
string | да | Дата и время создания ордера |
dateUpdated |
string | да | Дата и время последнего обновления ордера |
orderType |
string | да | Тип ордера |
status |
string | да | Статус ордера. См. статусную модель |
idTransactionMerchant |
string | нет | ID ордера в системе мерчанта |
amount |
float64 | да | Сумма ордера в валюте ордера |
amountComission |
float64 | да | Сумма комиссии мерчанта в валюте ордера |
currency |
string | да | Валюта ордера |
usdtAmount |
float64 | да | Сумма ордера в USDT |
usdtAmountComission |
float64 | да | Сумма комиссии по ордеру мерчанта в USDT |
exchangeRate |
float64 | да | Курс валюты ордера к USDT (1 USDT = X currency) |
merchantID |
string | да | ID мерчанта, от которого поступил ордер |
paymentDetailsData |
object | да | Данные для совершения платежа |
paymentDetailsData.mediatorName |
string | нет | Имя держателя карты/счета |
paymentDetailsData.methodID |
integer | да | ID метода платежа |
paymentDetailsData.requisiteTypeCode |
string | да | Тип реквизитов |
paymentDetailsData.bankCode |
string | нет** | Код банка |
paymentDetailsData.number |
string | нет** | Номер карты/счета/телефона |
paymentDetailsData.numberAdditional |
string | нет | Дополнительный номер (БИК банка и т.п.) |
paymentDetailsData.link |
string | нет** | Ссылка для перевода (если применимо. Например, при requisiteTypeCode="qr_code") |
**- зависит отmethodID
Условия отправки callback-запросов#
Переход ордера в статусы (См. статусную модель):
succeededexpiredfailed_by_appealsucceeded_by_appeal