Сплитование платежей
Что такое сплитование платежей
Если в работе вашего магазина(ов) имеется необходимость распределять поступающие платежи между несколькими вашими магазинами или магазинами партнёров, то необходимо сделать Сплитование (разделение) платежа.
Важно
Данная услуга доступна только по предварительному согласованию. Для её подключения создайте запрос через свой Личный кабинет.
В случае проведения платежа, который должен быть распределён между несколькими магазинами формируется специальный запрос в формате json.
URL для запросов
https://auth.robokassa.ru/Merchant/Payment/CreateV2
Параметры HTTP-запроса
| Параметр | Значение |
|---|---|
Invoice | JSON-тело операции оплаты и распределения. Перед отправкой используйте URL-кодирование. |
Signature | Контрольная сумма в шестнадцатеричном виде (0-9, A-F). Рассчитывается по базе, содержащей Invoice (в исходном виде, без URL-кодирования) и Пароль №1 мастер-магазина, инициирующего сплитование. |
Пример Invoice
{
"outAmount": 700,
"shop_params": [
{"name": "user_param_1", "value": "Параметр номер один"},
{"name": "user_param_2", "value": "Параметр номер два"}
],
"email": "testlab@test.ru",
"incCurr": "BankCard",
"language": "ru",
"isTest": false,
"expirationDate": "2024-08-23T12:53Z",
"merchant": {
"id": "ru_split_01_shop_01",
"comment": "Общее описание заказа"
},
"splitMerchants": [
{
"id": "ru_split_01_shop_01",
"InvoiceId": 123,
"amount": 500,
"receipt": {
"sno": "osn",
"items": [
{
"name": "товар 1",
"quantity": 2,
"sum": 400,
"tax": "vat110",
"payment_method": "full_payment",
"payment_object": "commodity",
"nomenclature_code": "1231"
},
{
"name": "товар 2",
"quantity": 1,
"sum": 100,
"tax": "vat120",
"payment_method": "full_payment",
"payment_object": "commodity",
"nomenclature_code": "1232"
}
]
}
},
{
"id": "ru_split_02_shop_01",
"amount": 200,
"receipt": {
"sno": "usn_income",
"items": [
{
"name": "товар 3",
"quantity": 1,
"sum": 200,
"tax": "vat20",
"payment_method": "full_prepayment",
"payment_object": "commodity",
"nomenclature_code": "123456"
}
]
}
}
]
}
Описание полей Invoice
Общие сведения о заказе
outAmount— требуемая к получению сумма (стоимость заказа). Указывайте значение в рублях с точкой в качестве разделителя, например123.45. Формат данных —number. Обязательный параметр.shop_params— необязательный массив пользовательских параметров. Каждый объект содержит поляnameиvalueсо строковыми значениями.email— e-mail покупателя, который по умолчанию попадёт в платёжную форму Robokassa. Пользователь сможет изменить его на этапе оплаты. Формат данных —string. Необязательный параметр.
Настройки проведения платежа
incCurr— предпочтительный способ оплаты. Если параметр не передан, по умолчанию предлагается оплата банковской картой. Формат данных —string. Необязательный параметр.language— язык интерфейса Robokassa (ISO 3166-1). Возможные значения:ru,en. Если параметр отсутствует, используется язык браузера покупателя; для остальных значений применяется английская версия. Формат данных —string. Необязательный параметр.isTest— признак тестовой операции. Используйте значениеtrue, чтобы инициировать платёж в тестовом режиме. Формат данных —boolean. Необязательный параметр.expirationDate— срок действия счёта в формате ISO 8601 (YYYY-MM-DDThh:mm:ss.fffffffZZZZZ). Допустимо указывать смещение относительно UTC (+hh:mmили-hh:mm) или символZдля UTC. При отсутствии временной зоны применяется московское время (UTC+03). Параметр необязателен.
Блок мастер-магазина
merchant— объект с данными мастер-магазина. Обязательный параметр.id— идентификатор мастер-магазина, инициирующего сплитование. Формат данных —string. Обязательное поле.comment— описание покупки. Допустимы символы русского и английского алфавитов, цифры и знаки препинания. Максимальная длина — 100 символов. Информация отображается в интерфейсе Robokassa и в электронной квитанции. Формат данных —string. Необязательное поле.
Блок участников сплита
splitMerchants— массив объектов с информацией о долях каждого магазина, включая мастер-магазин. Обязательный параметр.id— идентификатор магазина-участника. Формат данных —string. Обязательное поле.InvoiceId— уникальный номер счёта магазина. Целое число от 1 до 9223372036854775807 (2 – 1). Если значение равно0или поле отсутствует, оно назначается автоматически. Формат данных —number. Необязательное поле.amount— сумма, которую получит конкретный магазин. Указывается в рублях, допускается значение0.00, если начисление не требуется. Формат данных —number. Обязательное поле.receipt— объект с номенклатурой для формирования чека. Необязательный параметр.
Номенклатура чека
sno— система налогообложения. Возможные значения:osn,usn_income,usn_income_outcome,envd,esn,patent. Если параметр не передан, применяется значение по умолчанию из личного кабинета. Формат данных —string. Необязательный параметр.items— массив товарных позиций. Обязательный параметр, если передаётсяreceipt.name— наименование товара (до 128 символов). При использовании спецсимволов экранируйте их. Формат данных —string. Обязательное поле.quantity— количество или вес позиции. Десятичное число с целой частью до 5 знаков и дробной до 3 знаков. Формат данных —number. Обязательное поле.sum— итоговая стоимость позиции в рублях с учётом скидок. Десятичное число с целой частью до 8 знаков и дробной до 2 знаков. Формат данных —number. Обязательное поле.tax— налоговая ставка:none,vat0,vat10,vat110,vat20,vat120. Формат данных —string. Обязательное поле.payment_method— признак способа расчёта. Допустимые значения:full_prepayment,prepayment,advance,full_payment,partial_payment,credit,credit_payment. При отсутствии используется значение по умолчанию из личного кабинета. Формат данных —string. Необязательное поле.payment_object— признак предмета расчёта. Возможные значения:commodity,excise,job,service,gambling_bet,gambling_prize,lottery,lottery_prize,intellectual_activity,payment,agent_commission,composite,another,property_right,non-operating_gain,insurance_premium,sales_tax,resort_fee. При отсутствии используется значение по умолчанию. Формат данных —string. Необязательное поле.nomenclature_code— код маркировки товара. Обязателен только для продукции, подлежащей обязательной маркировке. Формат данных —string. Необязательное поле.
Пример запроса методом GET
https://auth.robokassa.ru/Merchant/Payment/CreateV2?invoice=%7B%22outAmount%22%3A%20700.0%2C%20%22email%22%3A%20%22testlab%40test.ru%22%2C%20%22incCurr%22%3A%20%22BankCard%22%2C%20%22language%22%3A%20%22ru%22%2C%20%22isTest%22%3A%20false%2C%20%22expirationDate%22%3A%20%222024-08-23T12%3A53Z%22%2C%20%22merchant%22%3A%20%7B%22id%22%3A%20%22ru_split_01_shop_01%22%7D%2C%20%22splitMerchants%22%3A%20%5B%7B%22id%22%3A%20%22ru_split_01_shop_01%22%2C%20%22amount%22%3A%20500.0%2C%20%22receipt%22%3A%20%7B%22sno%22%3A%20%22osn%22%2C%20%22items%22%3A%20%5B%7B%22name%22%3A%20%22%5Cu0442%5Cu043e%5Cu0432%5Cu0430%5Cu0440%201%22%2C%20%22quantity%22%3A%202%2C%20%22sum%22%3A%20400.0%2C%20%22tax%22%3A%20%22vat110%22%2C%20%22payment_method%22%3A%20%22full_payment%22%2C%20%22payment_object%22%3A%20%22commodity%22%2C%20%22nomenclature_code%22%3A%20%221231%22%7D%2C%20%7B%22name%22%3A%20%22%5Cu0442%5Cu043e%5Cu0432%5Cu0430%5Cu0440%202%22%2C%20%22quantity%22%3A%201.0%2C%20%22sum%22%3A%20100.0%2C%20%22tax%22%3A%20%22vat120%22%2C%20%22payment_method%22%3A%20%22full_payment%22%2C%20%22payment_object%22%3A%20%22commodity%22%2C%20%22nomenclature_code%22%3A%20%221232%22%7D%5D%7D%7D%2C%20%7B%22id%22%3A%20%22ru_split_02_shop_01%22%2C%20%22amount%22%3A%20200.0%2C%20%22receipt%22%3A%20%7B%22sno%22%3A%20%22usn_income%22%2C%20%22items%22%3A%20%5B%7B%22name%22%3A%20%22%5Cu0442%5Cu043e%5Cu0432%5Cu0430%5Cu0440%203%22%2C%20%22quantity%22%3A%201.0%2C%20%22sum%22%3A%20200.0%2C%20%22tax%22%3A%20%22vat20%22%2C%20%22payment_method%22%3A%20%22full_prepayment%22%2C%20%22payment_object%22%3A%20%22commodity%22%2C%20%22nomenclature_code%22%3A%20%22123456%22%7D%5D%7D%7D%5D%7D&signature=740ecfefbb09deee8e65d01bc00a04c239efab48721170f63184c7f4336238fd