Результаты поиска
    Ничего не найдено
    Оглавление
    Варианты подключения

    Варианты подключения

    Подключение физического лица — клиента маркетплейса выполняется через интерфейс MONETA.MerchantAPI: платформа собирает данные у клиента и отправляет запросы в Систему МОНЕТА.РУ.

    Клиент маркетплейса в этом варианте не получает доступ к личному кабинету на сайте https://payanyway.ru; информация отображается в кабинете на сайте маркетплейса.

    Маркетплейс подключает клиента

    Подразделы Варианты подключения

    Результаты поиска
      Ничего не найдено
      Оглавление
      Маркетплейс подключает клиента

      Маркетплейс подключает клиента

      Запросы платформа отправляет в рамках интерфейса MONETA.MerchantAPI.

      Сценарии

      СценарийКогда использовать
      Полное наполнение профиляНужны ФИО, паспорт, УПРИД и счёт в одной цепочке
      Минимальное наполнение профиляДостаточно e-mail и телефона; счёт сразу после создания юнита (анонимный режим)

      Справочник методов

      ШагМетодСтраница
      1CreateProfileRequestСоздание профиля
      2CreateProfileDocumentRequestПаспортные данные
      3ApprovePhoneSendConfirmationRequestОтправка кода на телефон
      4ApprovePhoneApplyCodeRequestПроверка кода
      5SimplifiedIdentificationRequestУпрощённая идентификация
      6CreateAccountRequestСоздание счёта

      Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

      Полное наполнение профиля
      Пример 1: регистрация физического лица с полным набором данных.
      Минимальное наполнение профиля
      Пример 2: регистрация с e-mail и телефоном.
      Создание профиля
      Паспортные данные
      Отправка кода на телефон
      Проверка кода
      Упрощённая идентификация
      Ответы асинхронной задачи
      Создание счёта

      Подразделы Маркетплейс подключает клиента

      Результаты поиска
        Ничего не найдено
        Оглавление
        Полное наполнение профиля

        Полное наполнение профиля

        Последовательность запросов для регистрации физического лица с передачей полного набора данных клиента.

        sequenceDiagram participant P as Платформа participant M as МОНЕТА.РУ P->>M: CreateProfileRequest M-->>P: CreateProfileResponse (unitId) M-->>P: URL CREATE_UNIT P->>M: CreateProfileDocumentRequest M-->>P: CreateProfileDocumentResponse opt Телефон не подтверждён на площадке P->>M: ApprovePhoneSendConfirmationRequest P->>M: ApprovePhoneApplyCodeRequest end P->>M: SimplifiedIdentificationRequest (async) M-->>P: callbackUrl + IDENTIFICATION P->>M: CreateAccountRequest M-->>P: CreateAccountResponse

        Шаги

        1. CreateProfileRequest — создание кошелька (юнита) с данными физического лица. Адрес электронной почты обязателен. Телефон можно передать с approved: true, если номер уже подтверждён на стороне платформы.
        2. Дождаться URL-уведомления CREATE_UNIT (настройка).
        3. CreateProfileDocumentRequest — паспортные данные.
        4. При необходимости — подтверждение телефона и проверка кода.
        5. SimplifiedIdentificationRequest — упрощённая идентификация (УПРИД). Обычно занимает до часа.
        6. CreateAccountRequest — лицевой счёт кошелька (укажите prototypeAccountId).

        Примечание: Если работаете только с анонимными пользователями, после шага 1 можно сразу вызвать CreateAccountRequest, минуя паспорт и УПРИД — в пределах лимитов для неперсонифицированных пользователей.

        См. также минимальное наполнение профиля.

        Результаты поиска
          Ничего не найдено
          Оглавление
          Минимальное наполнение профиля

          Минимальное наполнение профиля

          Последовательность для создания кошелька с минимальным набором данных: e-mail обязателен, остальные поля — по необходимости.

          sequenceDiagram participant P as Платформа participant M as МОНЕТА.РУ P->>M: CreateProfileRequest (email, phone, alias) M-->>P: CreateProfileResponse (unitId) M-->>P: URL CREATE_UNIT P->>M: CreateAccountRequest M-->>P: CreateAccountResponse opt Нужна УПРИД P->>M: CreateProfileDocumentRequest P->>M: SimplifiedIdentificationRequest end

          Шаги

          1. CreateProfileRequest — вариант с минимальными атрибутами (email_for_notifications, cell_phone, при необходимости alias).
          2. Дождаться URL-уведомления CREATE_UNIT.
          3. CreateAccountRequest — создание счёта (для анонимных пользователей — сразу после создания юнита).
          4. При необходимости повысить уровень идентификации — добавить паспорт и вызвать SimplifiedIdentificationRequest по сценарию полного профиля.

          См. также полное наполнение профиля.

          Создание профиля

          Создание кошелька (юнита) для физического лица — клиента платформы.

          Параметры unitId — номер юнита группы «Анонимные пользователи» (см. структуру личного кабинета).

          profileType: CLIENT.

          Адрес электронной почты (email_for_notifications) обязателен.

          С подтверждением телефона на стороне платформы

          Если номер уже подтверждён у вас, передайте cell_phone с "approved": true.

          Запрос:

          {
            "Envelope": {
              "Header": {
                "Security": {
                  "UsernameToken": {
                    "Username": "USERNAME",
                    "Password": "PASSWORD"
                  }
                }
              },
              "Body": {
                "CreateProfileRequest": {
                  "unitId": 69804,
                  "profileType": "CLIENT",
                  "profile": {
                    "attribute": [
                      { "key": "last_name", "value": "Иванов" },
                      { "key": "first_name", "value": "Иван" },
                      { "key": "middle_initial_name", "value": "Иванович" },
                      {
                        "key": "cell_phone",
                        "value": "+79123456789",
                        "approved": true
                      },
                      { "key": "date_of_birth", "value": "1981-01-01" },
                      { "key": "email_for_notifications", "value": "test@test.ru" },
                      { "key": "snils", "value": "00000000000" },
                      { "key": "inn", "value": "000000000000" }
                    ]
                  }
                }
              }
            }
          }

          Без подтверждения телефона на стороне платформы

          Запрос тот же, но у cell_phone не указывайте approved (или approved: false). Далее используйте подтверждение телефона.

          {
            "Envelope": {
              "Header": {
                "Security": {
                  "UsernameToken": {
                    "Username": "USERNAME",
                    "Password": "PASSWORD"
                  }
                }
              },
              "Body": {
                "CreateProfileRequest": {
                  "unitId": 69804,
                  "profileType": "CLIENT",
                  "profile": {
                    "attribute": [
                      { "key": "last_name", "value": "Иванов" },
                      { "key": "first_name", "value": "Иван" },
                      { "key": "middle_initial_name", "value": "Иванович" },
                      { "key": "cell_phone", "value": "+79123456789" },
                      { "key": "date_of_birth", "value": "1981-01-01" },
                      { "key": "email_for_notifications", "value": "test@test.ru" },
                      { "key": "snils", "value": "00000000000" },
                      { "key": "inn", "value": "000000000000" }
                    ]
                  }
                }
              }
            }
          }

          Минимальный набор атрибутов

          {
            "Envelope": {
              "Header": {
                "Security": {
                  "UsernameToken": {
                    "Username": "USERNAME",
                    "Password": "PASSWORD"
                  }
                }
              },
              "Body": {
                "CreateProfileRequest": {
                  "unitId": 69804,
                  "profileType": "CLIENT",
                  "profile": {
                    "attribute": [
                      { "key": "cell_phone", "value": "79123456789" },
                      { "key": "email_for_notifications", "value": "test@test.ru" },
                      { "key": "alias", "value": "ALIAS" }
                    ]
                  }
                }
              }
            }
          }

          Ответ:

          {
            "Envelope": {
              "Body": {
                "CreateProfileResponse": 11111
              }
            }
          }

          Сохраните unitId в своей учётной системе. Базовый profileId можно получить через GetProfileInfoRequest / CheckProfileRequest.

          После создания профиля Система МОНЕТА.РУ направит URL-уведомление CREATE_UNIT — см. URL-уведомления.

          Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

          Результаты поиска
            Ничего не найдено
            Оглавление
            Паспортные данные

            Паспортные данные

            Добавление паспортных данных в кошелек (юнит) клиента — CreateProfileDocumentRequest.

            Запрос:

            {
              "Envelope": {
                "Header": {
                  "Security": {
                    "UsernameToken": {
                      "Username": "USERNAME",
                      "Password": "PASSWORD"
                    }
                  }
                },
                "Body": {
                  "CreateProfileDocumentRequest": {
                    "type": "PASSPORT",
                    "unitId": 11111,
                    "attribute": [
                      { "key": "SERIES", "value": "1111" },
                      { "key": "NUMBER", "value": "000000" }
                    ]
                  }
                }
              }
            }

            Ответ:

            {
              "Envelope": {
                "Body": {
                  "CreateProfileDocumentResponse": {
                    "id": 11334
                  }
                }
              }
            }

            Сохраните id документа — он понадобится для SimplifiedIdentificationRequest.

            Система может отправить URL-уведомление CREATE_DOCUMENT — см. URL-уведомления.

            Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

            Результаты поиска
              Ничего не найдено
              Оглавление
              Отправка кода на телефон

              Отправка кода на телефон

              Подтверждение номера телефона клиента, если платформа не подтверждает номер на своей стороне — ApprovePhoneSendConfirmationRequest.

              Запрос:

              {
                "Envelope": {
                  "Header": {
                    "Security": {
                      "UsernameToken": {
                        "Username": "USERNAME",
                        "Password": "PASSWORD"
                      }
                    }
                  },
                  "Body": {
                    "ApprovePhoneSendConfirmationRequest": {
                      "unitId": 11111,
                      "text": "{CODE}"
                    }
                  }
                }
              }

              В поле text укажите шаблон SMS; {CODE} будет заменён на код подтверждения.

              Ответ:

              {
                "Envelope": {
                  "Body": {
                    "ApprovePhoneSendConfirmationResponse": {
                      "phoneNumber": "+71234567890"
                    }
                  }
                }
              }

              Далее — проверка кода.

              Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

              Результаты поиска
                Ничего не найдено
                Оглавление
                Проверка кода

                Проверка кода

                Проверка кода подтверждения, введённого клиентом — ApprovePhoneApplyCodeRequest.

                Запрос:

                {
                  "Envelope": {
                    "Header": {
                      "Security": {
                        "UsernameToken": {
                          "Username": "USERNAME",
                          "Password": "PASSWORD"
                        }
                      }
                    },
                    "Body": {
                      "ApprovePhoneApplyCodeRequest": {
                        "unitId": 11111,
                        "confirmationCode": "27924"
                      }
                    }
                  }
                }

                Ответ:

                {
                  "Envelope": {
                    "Body": {
                      "ApprovePhoneApplyCodeResponse": {}
                    }
                  }
                }

                В ответе нет полезной нагрузки. Если в процессе подтверждения (или отмены подтверждения) произошла ошибка, вернётся исключение. Если исключения нет — сотовый телефон подтверждён (или подтверждение отменено).

                Предварительный шаг — отправка кода.

                Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                Результаты поиска
                  Ничего не найдено
                  Оглавление
                  Упрощённая идентификация

                  Упрощённая идентификация

                  Упрощённая идентификация (УПРИД) через СМЭВ — асинхронный запрос SimplifiedIdentificationRequest в обёртке AsyncRequest.

                  Требования к данным в юните

                  Перед запросом в профиле и документе должны быть заполнены:

                  1. Фамилия, имя, отчество (при наличии)
                  2. Дата рождения
                  3. ИНН и/или СНИЛС
                  4. Сотовый телефон (подтверждён)
                  5. Серия и номер паспорта

                  Минимальный набор для передачи платформой:

                  • ФИО, дата рождения, паспорт (серия, номер), телефон (если не передавался ранее)
                  • по связке ФИО + паспорт + дата рождения Система запрашивает ИНН в ФНС; если получить не удалось — передайте ИНН дополнительно

                  Упрощённая идентификация обычно выполняется в течение часа.

                  Запрос

                  {
                    "Envelope": {
                      "Header": {
                        "Security": {
                          "UsernameToken": {
                            "Username": "USERNAME",
                            "Password": "PASSWORD"
                          }
                        }
                      },
                      "Body": {
                        "AsyncRequest": {
                          "SimplifiedIdentificationRequest": {
                            "unitId": 12345678,
                            "personalInformation": {
                              "profile": {},
                              "document": {
                                "id": 12345
                              }
                            }
                          },
                          "callbackUrl": "https://your-platform.example/callback/uprid"
                        }
                      }
                    }
                  }

                  В document.id укажите идентификатор паспорта из ответа CreateProfileDocumentRequest.

                  Ответ (задача создана):

                  {
                    "Envelope": {
                      "Body": {
                        "AsyncResponse": {
                          "expirationDate": "2017-12-19T12:12:05.102+03:00",
                          "asyncId": 37027,
                          "asyncStatus": "CREATED"
                        }
                      }
                    }
                  }

                  Завершение

                  • О результате Система сообщит на callbackUrl, указанный в запросе.
                  • Дополнительно может прийти URL-уведомление IDENTIFICATION — см. URL-уведомления.
                  • Статус асинхронной задачи можно опросить повторным AsyncRequest с asyncId — варианты ответов на странице Ответы асинхронной задачи.

                  Если идентификация не завершилась

                  По истечении таймаута отправьте GetProfileInfoRequest: если parentId указывает на группу «Анонимные пользователи», идентификация не пройдена — проверьте данные в юните и повторите SimplifiedIdentificationRequest.

                  Примечание: Если не пришло URL-уведомление IDENTIFICATION, но пришёл callback — опросите асинхронную задачу по asyncId. Если callback не пришёл в течение 700 минут — используйте GetProfileInfoRequest и FindProfileDocumentsRequest, проверьте признак approved у полей идентификации.

                  Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.

                  Результаты поиска
                    Ничего не найдено
                    Оглавление
                    Ответы асинхронной задачи

                    Ответы асинхронной задачи

                    Варианты ответа при опросе AsyncRequest по asyncId после упрощённой идентификации.

                    Задача в обработке

                    {
                      "Envelope": {
                        "Body": {
                          "AsyncResponse": {
                            "asyncId": 37027,
                            "asyncStatus": "INPROGRESS"
                          }
                        }
                      }
                    }

                    Задача не найдена

                    {
                      "Envelope": {
                        "Body": {
                          "Fault": {
                            "detail": {
                              "faultDetail": "500.9.1"
                            },
                            "faultcode": "Client",
                            "faultstring": "Асинхронная задача не найдена"
                          }
                        }
                      }
                    }

                    Успешная идентификация

                    {
                      "Envelope": {
                        "Body": {
                          "AsyncResponse": {
                            "SimplifiedIdentificationResponse": {
                              "success": true,
                              "personalInformation": {
                                "profile": {
                                  "attribute": [
                                    {
                                      "approved": true,
                                      "value": "Иванов",
                                      "published": false,
                                      "key": "last_name"
                                    }
                                  ]
                                },
                                "document": {
                                  "id": 123,
                                  "type": "PASSPORT",
                                  "hasAttachedFiles": false,
                                  "attribute": [
                                    {
                                      "approved": true,
                                      "value": "0000",
                                      "published": false,
                                      "key": "series"
                                    },
                                    {
                                      "approved": true,
                                      "value": "000000",
                                      "published": false,
                                      "key": "number"
                                    }
                                  ]
                                }
                              }
                            }
                          }
                        }
                      }
                    }

                    Идентификация не пройдена

                    {
                      "Envelope": {
                        "Body": {
                          "AsyncResponse": {
                            "SimplifiedIdentificationResponse": {
                              "success": false,
                              "error": "Customer data did not pass ESIA check.",
                              "errorCode": "500.7.3",
                              "personalInformation": {
                                "profile": { "attribute": [] },
                                "document": { "id": 123, "type": "PASSPORT" }
                              }
                            }
                          }
                        }
                      }
                    }

                    При success: false исправьте данные клиента и повторите запрос упрощённой идентификации.

                    Результаты поиска
                      Ничего не найдено
                      Оглавление
                      Создание счёта

                      Создание счёта

                      Создание лицевого счёта для клиента платформы — CreateAccountRequest.

                      Важно: укажите prototypeAccountId — счёт-прототип, с которого наследуются настройки кошелька.

                      Запрос:

                      {
                        "Envelope": {
                          "Header": {
                            "Security": {
                              "UsernameToken": {
                                "Username": "Username",
                                "Password": "Password"
                              }
                            }
                          },
                          "Body": {
                            "CreateAccountRequest": {
                              "currency": "RUB",
                              "alias": "Alias",
                              "paymentPassword": "12345",
                              "unitId": 12345,
                              "prototypeAccountId": 1111111111,
                              "attribute": [
                                {
                                  "key": "ALIAS",
                                  "value": "Alias",
                                  "published": true
                                }
                              ]
                            }
                          }
                        }
                      }

                      Ответ:

                      {
                        "Envelope": {
                          "Body": {
                            "CreateAccountResponse": 87198713
                          }
                        }
                      }

                      Дополнительные поля

                      В запрос можно добавить:

                      ПолеНазначение
                      onSuccessfulDebitUrlURL callback при успешном списании
                      onSuccessfulCreditUrlURL callback при успешном зачислении
                      onCancelledDebitUrlURL callback при отмене списания
                      onCancelledCreditUrlURL callback при отмене зачисления
                      signatureПодпись для callback
                      lowBalanceThresholdПорог низкого баланса
                      highBalanceThresholdПорог высокого баланса

                      После создания счёта приходит URL-уведомление CREATE_ACCOUNT — см. URL-уведомления.

                      Для расширенного счёта ЮЛ/ИП см. также создание расширенного счёта — структура запроса совпадает.

                      Примечание: Интерфейс MONETA.MerchantAPI представляет собой Web-сервис, описанный по спецификации Web Services Description Language (WSDL), использующий протокол Simple Object Access Protocol (SOAP) для передачи информации.