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

Вопросы и ответы

Ошибки

Ошибка 403

При получении ошибки 403 проверьте:

  • Актуально для тестового слоя: совпадает ли IP‑адрес, с которого посылается запрос, с IP из whitelist. Еесли нет — обратитесь в поддержку.
  • Корректность кодировок: все входящие запросы должны быть в UTF‑8.
  • Вычисляется ли хэш от тела сообщения без переносов строк: переносы в заголовке HTTP критичны, их нужно удалить.
  • Корректность формирования подписи (смотрите в разделе «Подписание запросов»).

Бенефициар не добавляется в мастер‑систему (is_added_to_ms: false)

Среднее время добавления бенефициара — около 20 секунд, но иногда процесс может занять до 20 минут. Если ожидание дольше — обратитесь в поддержку с id запроса или id бенефициара.

Ошибка 504 (Gateway Time Out)

При получении ошибки 504 необходимо проверить установленный таймаут. Рекомендуемое значение — 60 секунд.

Сделка долго находится в статусе in_process

В нормальных условиях карточные выплаты обрабатываются не больше 1 часа. Если вы ждёте дольше, напишите в поддержку.

Карточная выплата не дошла до получателя

Сперва необходимо проверить статус платежа card-*. Если он успешен, тогда можете запросить RRN платежа с помощью метода Получить данные сделки и передать его получателю средств для дальнейшего поиска платежа в своём банке.

RRN — это идентификатор перевода, который используется для обработки платежей.

Ошибка 4953 при активации и деактивации бенефициара

Операции активации и деактивации бенефициара, как правило, выполняются системой не мгновенно (не синхронно). После того как вы отправляете запрос, он принимается в обработку, и статус бенефициара переходит в процесс изменения.

Текст ошибки 4953 Beneficiary already in upgrading state указывает на то, что бенефициар находится в процессе изменения своего состояния. То есть:

  • Вы дали команду системе что-либо сделать с бенефициаром (например, активировать)
  • Система находится ещё в процессе выполнения этой команды
  • И если вы сразу же отправляете запрос по данному бенефициару (например, ещё раз активировать или деактивировать), то получаете в ответ 4953.

В таком случае нужно немного подождать между запросами.

Ошибка 4408 при загрузке документов

Ошибка 4408 Document not yet uploaded может возникнуть, когда вы начали загрузку документов по сделке, и не дождавшись завершения загрузки приступили к исполнению сделки.

Поэтому перед исполнением сделки рекомендуем проверить статус загрузки документов при помощи метода Получить данные загруженного документа, поле success_added говорит об успешности загрузки документа.

Загрузка документов происходит до 5 минут, но обычно это происходит быстрее. Если вы получили статус код 200, то документ загружен.

Ошибка 4436 при создании или обновлении сделки

Ошибка 4436 An error occurred while requesting compliance возникает, когда платёж не проходит проверку комплаенс и по операции есть риск по 115-ФЗ.

Выплаты по реквизитам

Банк плательщика не может зачислить деньги из-за некорректных реквизитов

Иногда банк плательщика не может зачислить деньги из-за некорректных реквизитов, которые не выявила валидация. Например, нельзя проверить, что указан номер закрытого счёта в банке получателя.

Процесс:

  1. Вы отправили деньги по реквизитам с помощью сервиса «Расчёты по номинальному счёту».
  2. Банк получателя понимает, что деньги потенциально предназначены для их действующего клиента, но не может их зачислить получателю, поскольку нет достаточной информации. В таком случае в Точка Банк отправляется запрос на уточнение реквизитов. В нём просят уточнить реквизиты по конкретному платежу.
  3. На основании этого уточнения Точка Банк отправит в чат интернет-банка сообщение: «Ошибка в реквизитах. (наименование банка получателя) передал нам, что в вашем платеже №(номер платежа) от (дата платежа) есть ошибка в реквизитах. Поэтому пока зачислить деньги на счёт (наименование получателя) нельзя. Укажите верные данные платежа, чтобы ваш контрагент смог получить деньги». В течение 5 рабочих дней банк получателя может ожидать уточнение.
  4. Чтобы уточнить реквизиты, нужно в чате интернет-банка отправить ответное сообщение, указав верные реквизиты получателя. Примерный текст сообщения есть в документации сервиса.
  5. После получения уточнения с верными реквизитами банк получателя зачислит деньги на счёт получателя.
инфо

Банки имеют право зачислять платежи по двум верным реквизитам: ИНН и номеру счёта. Но это не исключает поступления запроса на уточнение.

Возвраты выплат на номинальный счёт

Если не поступило уточнение реквизитов в отведённый срок или банк никак не сможет зачислить деньги на счёт получателя, то деньги будет отправлены обратно. Это может случиться, когда, например, указан закрытый счёт в банке и нет другого открытого или указан не тот банк.

Такие случаи редкие, но у некоторых банков контрольное число при валидации может совпасть. При поступлении возвратов на номинальный счёт их поможет идентифицировать назначение платежа. Обычно банки прописывают его со слова «Возврат...», а также указывают данные возвращаемого платежа: его номер и дату. Как правило, у возврата совпадает номер платежа с изначальным исходящим.

инфо

По закону на возврат у банков есть 5 рабочих дней с момента поступления денег к ним. Но при этом не редки случаи, когда возвраты приходят и на следующий день.

Поиск данных исходящего платежа

При вызове метода Создать сделку с получателем payment_contract вы сами можете заполнять значение номера платежа (document_number), сохранять его в таблицах, чтобы легче было идентифицировать платёж при потенциальном возврате.

Валидация номера платежа: максимум 6 цифр. Ноль не рекомендуем делать ведущим, так как некоторые банки обрезают их. Обычная практика передачи значения n+1, где n — значение предыдущего платежа. При наступлении нового периода (день, месяц, год), можно начать со значения 1.

Если вы не планируете управлять значением номера платёжного поручения, то понять, что это за возврат, можно, получив значение даты и номера платежа из назначения входящего платежа.

Затем через метод Получить список платежей с помощью фильтров "type": "payment_contract" и create_date = дата из назначения входящего платежа получите список платежей. Затем, узнав идентификатор платежа, с помощью метода Получить данные платежа получите подробности о платеже. Нужны параметры deal_id и document_number. При совпадении номера платежа в рамках сделки с номером входящего платежа, значение идентификатора сделки — то, что вы искали.

Далее детали по самой сделке можете стандартно увидеть через запрос Получить данные сделки. На основании правил вашего сервиса можно реализовать 2 сценария: переотправить вернувшиеся деньги по верным реквизитам или зачислить деньги бенефициару на его виртуальный счёт для дальнейшей работы.

  • Если хотите отправить деньги по актуальным реквизитам, то для начала нужно использовать метод Идентифицировать возврат. С помощью него вы даёте Точка Банку понять, что данный входящий платёж — это возврат по указанной сделке, и мы переводим указанную сделку в статус Correction. Это действие позволит вам отправить деньги получателю уже по верным реквизитам.
  • Если вы хотите идентифицировать деньги на виртуальный счёт бенефициара, то на основании полученных ранее данных (в том числе о плательщике в сделке), используйте запрос Идентифицировать платёж.

Если в рамках сделки была списана комиссия (commission) на ваш расчётный счёт, то эти деньги с помощью сервиса не вернуть. Это можно сделать вручную через интернет-банк или автоматизировать с помощью сервиса «API Pro». Предварительно согласуйте назначение платежа, само действие внутри компании и будьте готовы идентифицировать нестандартные платежи в вашем сервисе.

Если требуется автоматизация через API Pro, сообщите нам в чате поддержки, мы познакомим вас с командой сервиса.

Выплаты на счета нерезидентов

В контексте сервиса нерезидентом называем лиц, у которых нет паспорта РФ, но при этом есть счета в российских банках. Конто счетов можно посмотреть в документации. Чаще всего можно встретить конто 40820.

При переводах на такие счета нужно указывать код валютной операции в назначении платежа. Например, в методе Создать сделку при указании реквизитов для получателя с типом payment_contract нужно будет заполнить поле purpose. Пример заполнения назначения:

{VO21200} По лицензионному договору за использование платформы 'Таксиагрегатор', НДС не облагается.

инфо

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

В примере указан код 21200 — это означает расчёты резидента за выполненные нерезидентом работы, оказанные услуги, переданную информацию и результаты интеллектуальной деятельности, в том числе исключительные права на них, включая выполнение указанных обязательств по договору комиссии (агентскому договору, договору поручения), а также расчёты, связанные с выплатой вознаграждения нерезиденту-доверительному управляющему по договору доверительного управления имуществом, нерезиденту-брокеру по договору о брокерском обслуживании, нерезиденту-клиринговой организации по договору об оказании клиринговых услуг (отсрочка платежа), за исключением расчетов по коду 21400, расчётов, указанных в группе 23 настоящего перечня.

С полным списком кодов можно ознакомиться здесь.

При стандартных условиях при выявлении платежа нерезиденту, платёж попадает на проверку валютного контроля. В чате интернет-банка сотрудники валютного контроля запрашивают документы по данной выплате или просят подтвердить, что выплата производится по договору менее 1 миллиона рублей.

Если вы прогнозируете, что у вас будет много выплат нерезидентам, то сообщите нам в чате поддержки сервиса примерные объёмы выплат и количество платежей в месяц. Мы можем запустить согласование проверок, при которых платежи будут быстро проводиться, как обычные расчёты по реквизитам между резидентами. На основании вашего подтверждения, что все проводимые платежи по договорам менее 1 миллиона рублей. Но, если договор с нерезидентом превысит 1 миллион рублей, то вы обязаны самостоятельно предоставить документы коллегам из валютного контроля через интернет-банк.

Мы как банк работаем в рамках 181-И, а вы можете ориентироваться на Правила Банковского Обслуживания - пункт 3.5.6 раздела 3 порядка 2.

инфо

Текущий договор с Точка Банком предусматривает комиссию за каждый успешно проведённый платёж. Если вы отправили деньги по неверным реквизитам, и этот платёж дошёл до банка плательщика или РКЦ ЦБ, но был возвращён из-за невозможности зачислить, то для нас это успешно проведённый платёж.

Эквайринг

По вопросам эквайринга Точка Банка пишите на почту public-api@tochka.com.

Документация:

Платежи

Идентификатор карточного платежа proc-p2p-payout и card-*

При выплате на карту деньги с номинального счёта сначала перечисляются на внутрибанковский счёт 30232*, а уже оттуда отправляются получателю или возвращаются обратно на номинальный счёт.

Из‑за этой особенности при карточной выплате образуются две сущности:

  • proc-p2p-* — отражают реальное движение средств между счетами, бывают входящими и исходящими. Исходящие появляются в момент начала операции по переводу денег на карту. Входящие — если выплата на карту завершилась неуспешно и деньги вернулись на номинальный счёт.
  • card-* — нужны для удобства и отражают успешность перевода на карту. Если платёж типа card успешен, значит деньги ушли получателю — это единственный способ понять успешность перевода.

В текущей реализации id типа card передаётся в методе Получить данные сделки, а id типа proc-p2p — в методе Получить список платежей.

Сделка долго находится в статусе in process

В нормальных условиях карточные выплаты могут обрабатываться до 1 часа. Если ожидание дольше — обратитесь в поддержку.

Карточная выплата не дошла до получателя

Сначала проверьте статус платежа card-*. Если он успешен, узнайте RRN платежа методом Получить данные сделки и передайте его получателю средств, чтобы он обратился в свой банк и нашёл платёж.

RRN — идентификатор перевода, который используется для обработки платежей.

Другое

Что передавать в purpose метода generate_sbp_qrcode

В поле purpose указывается назначение платежа, которое отображается у плательщика. Это пояснение клиенту, за что он платит. В самом платеже будет стандартное назначение: идентификатор QR‑кода, дата и НДС.

Пример:

Списание по QR‑коду ID AS1A001131S6KAA29TEATMDI72CKLQ8K от 09.08.2024. НДС не предусмотрен.

Почему при возврате платежа приходит "payment_id": null

При возврате входящего СБП-платежа с помощью метода Вернуть платёж в ответе на запрос параметр payment_id придет со значением null.

Чтобы понять, успешно ли прошёл возврат, необходимо вызвать метод Получить список платежей с ожиданием появления нужного платежа (с нужным счётом/БИК, суммой и прочими данными) с типом unrecognized_refund_sbp.

Лимиты на переводы

  • По физлицам сейчас можно установить технический лимит на 1 идентификатор в месяц — 400 тысяч рублей. Чтобы этот этот лимит cтал срабатывать, напишите нам в чат, и поддержка установит его. Это касается карт, СБП и реквизитов (все выплаты суммируем).
  • СБП — ограничение составляет до 1 000 000 рублей на одну операцию. По физлицам — с учётом предыдущего пункта можно установить технический лимит на выплаты. СБП на тестовом слое. Минимальная сумма для вывода составляет 100 рублей, если сумма меньше, то будет отказ.
  • Карты по типам (минимальное значение — 1 рубль):
    • Mastercard: 15 000 USD на одну операцию и 50 000 USD на одну карту получателя в месяц
    • Visa: 15 000 USD на одну операцию, месячных лимитов нет
    • Мир: лимитов никогда не видели
  • Реквизиты — по реквизитам ИП и юрлиц можно переводить любые суммы. По физлицам — тоже, но им с учётом пункта выше можно установить технический лимит на выплаты.

Назначение платежа

Назначение платежа формируется благодаря двум полям — purpose и purpose_nds.

Если purpose указано:

  • Мы не смотрим на значение "purpose_nds". Решение о передаваемом значении принимаете вы. Приставка «без НДС» автоматически не добавляется.
  • При переводе денег нерезиденту (маски '40820', '426', '40807', '30111', '30231') проходит проверка обязательного указания НДС.

Если для резидентов не указать НДС, платёж успешно создастся, но позже уйдёт в отказ — поскольку НДС необходимо указывать согласно Положению ЦБ РФ 762-П. Если поле purpose не указано, то назначение генерируется автоматически, используя значение purpose_nds.

Если не передавать ни purpose, ни purpose_nds, назначение генерируется автоматически с приставкой «…, без НДС: (автоматический текст назначения), без НДС».

Хранение карт

важно

Чтобы хранить данные банковских карт на своей стороне, они должны быть защищены в соответствии с ФЗ-152 и ГОСТ 57580.1-2017. Также нужно соответствовать международному стандарту защиты PCI DSS — этого требует Национальная система платёжных карт (НСПК).

Для хранения таких данных используйте сторонние сервисы, которые соответствуют всем требуемым нормам.

Заблокированные деньги на виртуальном счёте

Заблокированные деньги — это деньги, которые в текущее время участвуют в незавершённых операциях. Например:

  • При создании сделки на виртуальном счёте блокируются деньги
  • При выводе средств бенефициара до момента проведения платежа деньги будут заблокированы
  • После исполнения сделки они уйдут из-под блокировки

Если вы наблюдаете, что деньги на каком-либо виртуальном счёте заблокированы, и у вас это вызывает вопросы, то для начала необходимо самостоятельно:

  • Проверить статус сделки. Если сделка находится в любом статусе, кроме «Готово» и «Отменена», то можно сравнить по суммам. Если сумма денег в блоке совпадает с суммой в сделке, значит деньги заблокированы до перехода сделки в статус в «Готово» или «Отменена».
  • Проверить ограничения на бенефициара методом Получить список ограничений по бенефициарам.

Как заполнять платёжки при расчётах с бюджетом

Узнать все детали об этом вы можете в нашей Справочной.