Перейти к основному содержимому

Платежи через кошелек ЮMoney (Яндекс.Деньги)

Вы можете принимать оплату через кошельки ЮMoney, включая:

Возврат платежей через кошельки ЮMoney происходит стандартным образом.

Как провести платеж

Все параметры передаются в открытом виде, виджет использовать не нужно.

  1. Отправьте запрос /session/init/payment. Опционально передайте URL для возврата плательщика после оплаты в payment_options.return_url.

    Ограничения на размер платежа зависят от уровня кошелька ЮMoney.

    Пример запроса для платежа через кошелек ЮMoney
    curl -X POST \
    https://demo.bank131.ru/api/v1/session/init/payment \
    -H 'Content-Type: application/json' \
    -H 'X-PARTNER-PROJECT: your_project_name' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "payment_details": {
    "type": "wallet",
    "wallet": {
    "type": "yoomoney",
    "yoomoney": {}
    }
    },
    "amount_details": {
    "amount": 25420,
    "currency": "rub"
    },
    "metadata": {
    "key": "value"
    },
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    },
    "payment_options": {
    "return_url": "https://www.131.ru",
    "description": "description"
    }
    }'
  2. Дождитесь от Банка 131 вебхука ready_to_confirm — это значит, что Банк готов провести платеж и ждет вашего подтверждения.

    Пример вебхука ready_to_confirm
    curl -X POST \
    https://partner.ru \
    -H 'content-type: application/json' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "type": "ready_to_confirm",
    "session": {
    "id": "ps_3821809",
    "status": "in_progress",
    "created_at": "2025-11-05T08:33:46.121130Z",
    "updated_at": "2025-11-05T08:33:46.290108Z",
    "acquiring_payments": [{
    "id": "pm_2775568",
    "status": "pending",
    "created_at": "2025-11-05T08:33:46.190121Z",
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    },
    "payment_details": {
    "type": "wallet",
    "wallet": {
    "type": "yoomoney",
    "yoomoney": {}
    }
    },
    "amount_details": {
    "amount": 25420,
    "currency": "RUB"
    },
    "amounts": {},
    "metadata": {
    "key": "value"
    },
    "payment_options": {
    "recurrent": false,
    "description": "description"
    }
    }],
    "next_action": "confirm"
    }
    }'
  3. Подтвердите (session/confirm) или отмените (session/cancel) оплату.

  4. Дождитесь от Банка 131 вебхука action_required и перенаправьте пользователя по ссылке в customer_interaction.redirect.url.

    к сведению

    После получения вебхука action_required на подтверждение платежа будет 20 минут.

    Пример вебхука action_required
    curl -X POST \
    https://partner.ru \
    -H 'content-type: application/json' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "type": "action_required",
    "session": {
    "id": "ps_3821809",
    "status": "in_progress",
    "created_at": "2025-11-05T08:33:46.121130Z",
    "updated_at": "2025-11-05T08:34:31.887997Z",
    "acquiring_payments": [{
    "id": "pm_2775568",
    "status": "pending",
    "created_at": "2025-11-05T08:33:46.190121Z",
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    },
    "payment_details": {
    "type": "wallet",
    "wallet": {
    "type": "yoomoney",
    "yoomoney": {}
    }
    },
    "amount_details": {
    "amount": 25420,
    "currency": "RUB"
    },
    "amounts": {},
    "customer_interaction": {
    "type": "redirect",
    "redirect": {
    "url": "https://yoomoney.ru/checkout/payments/v2/contract?orderId=309d1fd7-000f-5001-8000-1e9f64506f41",
    "base_url": "https://yoomoney.ru/checkout/payments/v2/contract",
    "method": "GET",
    "qs": {
    "orderId": "309d1fd7-000f-5001-8000-1e9f64506f41"
    },
    "params": {}
    }
    },
    "metadata": {
    "key": "value"
    },
    "payment_options": {
    "recurrent": false,
    "description": "description"
    }
    }],
    "actions": {
    "confirm": "2025-11-05T08:34:31.626530Z"
    }
    }
    }'
  5. Если у вас подключены платежи с холдированием, дождитесь вебхука ready_to_capture и либо подтвердите (session/capture) либо отмените (session/cancel) списание.

    Пример вебхука ready_to_capture
    curl -X POST \
    https://partner.ru \
    -H 'content-type: application/json' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "type": "ready_to_capture",
    "session": {
    "id": "ps_3821809",
    "status": "in_progress",
    "created_at": "2025-11-05T08:33:46.121130Z",
    "updated_at": "2025-11-05T08:44:33.115425Z",
    "acquiring_payments": [{
    "id": "pm_2775568",
    "status": "pending",
    "created_at": "2025-11-05T08:33:46.190121Z",
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    },
    "payment_details": {
    "type": "wallet",
    "wallet": {
    "type": "yoomoney",
    "yoomoney": {}
    }
    },
    "amount_details": {
    "amount": 25420,
    "currency": "RUB"
    },
    "amounts": {},
    "metadata": {
    "key": "value"
    },
    "payment_options": {
    "recurrent": false,
    "description": "description"
    }
    }],
    "next_action": "capture",
    "actions": {
    "confirm": "2025-11-05T08:34:31.626530Z"
    }
    }
    }'
  6. Дождитесь вебхука payment_finished. Результат платежа приходит в параметре status объекта acquiring_payments/payment_list.

    Если статус succeeded, значит, оплата прошла успешно. Если статус failed — оплата не прошла из-за ошибки.

    Пример вебхука payment_finished
    curl -X POST \
    https://partner.ru \
    -H 'content-type: application/json' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "type": "payment_finished",
    "session": {
    "id": "ps_3821809",
    "status": "accepted",
    "created_at": "2025-11-05T08:33:46.121130Z",
    "updated_at": "2025-11-05T08:45:19.857746Z",
    "acquiring_payments": [{
    "id": "pm_2775568",
    "status": "succeeded",
    "created_at": "2025-11-05T08:33:46.190121Z",
    "finished_at": "2025-11-05T08:45:19.781451Z",
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    },
    "payment_details": {
    "type": "wallet",
    "wallet": {
    "type": "yoomoney",
    "yoomoney": {}
    }
    },
    "amount_details": {
    "amount": 5000,
    "currency": "RUB"
    },
    "amounts": {},
    "metadata": {
    "key": "value"
    },
    "payment_options": {
    "recurrent": false,
    "description": "description"
    }
    }],
    "actions": {
    "confirm": "2025-11-05T08:34:31.626530Z",
    "capture": "2025-11-05T08:45:18.934056Z"
    }
    }
    }'

Рекуррентные платежи

Рекуррентные платежи CIT через кошельки ЮMoney не поддерживаются.

Чтобы проводить рекуррентные платежи MIT через кошельки ЮMoney:

  1. Получите рекуррентный токен, передав в запросе recurrent=true (в объекте payment_options). Если платеж пройдет успешно, в вебхуке payment_finished в параметре recurrent.token вернется токен.

    Пример запроса
    curl -X POST \
    https://demo.bank131.ru/api/v1/session/init/payment \
    -H 'Content-Type: application/json' \
    -H 'X-PARTNER-PROJECT: your_project_name' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "payment_details": {
    "type": "wallet",
    "wallet": {
    "type": "yoomoney",
    "yoomoney": {}
    }
    },
    "amount_details": {
    "amount": 25420,
    "currency": "rub"
    },
    "metadata": {
    "key": "value"
    },
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    },
    "payment_options": {
    "return_url": "https://www.131.ru",
    "description": "description",
    "recurrent": "true"
    }
    }'
  2. При проведении последующих платежей передавайте рекуррентный токен.

    Пример запроса
    curl -X POST \
    https://proxy.bank131.ru/api/v1/session/init/payment \
    -H 'Content-Type: application/json' \
    -H 'X-PARTNER-PROJECT: your_project_name' \
    -H 'X-PARTNER-SIGN: signature' \
    -d '{
    "payment_details": {
    "type": "recurrent",
    "recurrent": {
    "token": "e9876f32bcd947f79c324cf2da5726304a894f6ae2037de7705fdb3e0a134d39"
    }
    },
    "amount_details": {
    "amount": 1000,
    "currency": "RUB"
    },
    "metadata": {
    "key": "value"
    },
    "customer": {
    "reference": "lucky",
    "contacts": [{
    "email": "test@mail.net"
    }]
    }
    }'

Схема платежа через кошелек ЮMoney





ИИ-помощник