Выплаты на банковские счета

Обзор

Введение

«Выплаты на банковские счета» — метод, позволяющий проводить платежи в киргизских сомах с использованием банковских счетов. Для этого метода в платёжной платформе Flashpay поддерживаются выплаты.

В этой статье представлена информация о работе с методом «Выплаты на банковские счета»: обзорный раздел с общими сведениями и последующие разделы с информацией о действиях, необходимых со стороны мерчанта для решения разных задач.

Характеристика

Тип платёжного метода банковские платежи
Платёжные инструменты банковские счета
Регионы использования KG
Валюты платежей KGS
Конвертация валют на стороне Flashpay
Разовые оплаты
Повторяемые оплаты
Полные возвраты
Частичные возвраты
Выплаты +
Опротестования
Особенности
Организация и стоимость подключения по согласованию с курирующим менеджером Flashpay

Схема работы

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



Основные операции

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

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

Суммы, KGS Время ¹
минимум максимум базовое предельное
Выплаты 15,00 15 000,00 24 часа
Прим.:
  1. Базовое и предельное время определяются следующим образом:
    • Базовое время — среднее расчётное время проведения платежа от момента его инициирования на стороне платёжной платформы до момента отправки инициатору оповещения о результате. Это время определяется для условий штатной работы всех технических средств и каналов связи, а также типичных действий со стороны пользователя (там, где они необходимы). Базовое время рекомендуется использовать для реагирования на отсутствие оповещений о результате платежа и выполнения опроса состояния платежа (подробнее).
    • Предельное время — максимально допустимое время проведения платежа от момента его инициирования на стороне платёжной платформы до момента отправки инициатору оповещения о результате. Если платёж не был проведён или отклонён за это время, он автоматически переводится в статус decline. Для индивидуальной настройки предельного времени следует обращаться к специалистам технической поддержки Flashpay.

Сценарии использования

Проведение выплат с использованием метода «Выплаты на банковские счета» осуществляется с уведомлением пользователей через веб-сервис мерчанта.

Рис. 1. Выплата через Gate


Выплаты через Gate

Общая информация

Для проведения выплаты через Gate с использованием метода «Выплаты на банковские счета» со стороны веб-сервиса необходимо отправить запрос, содержащий требуемые параметры и подпись, на рабочий URL Flashpay и принять оповещение о результате. Полная схема проведения выплаты выглядит следующим образом.



Рис. 2. Проведение выплаты через Gate. Описание шагов
  1. Пользователь на стороне веб-сервиса инициирует выплату через «Выплаты на банковские счета».
  2. От веб-сервиса на заданный URL Flashpay передаётся запрос на проведение выплаты через Gate.
  3. Запрос на проведение выплаты поступает в платёжную платформу.
  4. В платёжной платформе выполняется приём запроса с проверкой наличия обязательных параметров и корректной подписи.
  5. От платёжной платформы к веб-сервису направляется ответ с информацией о получении запроса и его корректности. Подробнее — в разделе Формат ответа.
  6. В платёжной платформе обеспечиваются дальнейшая обработка запроса (с проверкой согласованности параметров) и его отправка в сервис провайдера.
  7. В сервисе провайдера выполняется обработка выплаты.
  8. От сервиса провайдера к платёжной платформе направляется информация о результате выплаты.
  9. От платёжной платформы к веб-сервису направляется оповещение о результате выплаты.
  10. На стороне веб-сервиса обеспечивается информирование пользователя о результате выплаты.

Информация о форматах запросов и оповещений, используемых для проведения выплат методом «Выплаты на банковские счета» через Gate, приведена далее в этом разделе; общая информация о работе с Gate API — в отдельной статье Организация взаимодействия.

Формат запросов

При работе с запросами на выплаты с применением метода «Выплаты на банковские счета» необходимо учитывать следующее:

  1. Для инициирования каждой выплаты должен использоваться отдельный POST-запрос к конечной точке /v2/payment/bank-transfer/kyrgyzstan/payout. Эта точка относится к группе /v2/payment/bank-transfer/{payment_method}/payout.
  2. В каждом запросе должны использоваться следующие объекты и параметры:
    • general — объект, содержащий основные идентификационные сведения запроса:
      • project_id — идентификатор проекта, полученный от Flashpay при интеграции;,
      • payment_id — идентификатор платежа, уникальный в рамках проекта;,
      • signature — подпись запроса, составленная после указания всех целевых параметров (подробнее — в разделе Работа с подписью к данным); (подробнее),
    • payment — объект, содержащий сведения о платеже:
      • amount — сумма выплаты в дробных единицах валюты;,
      • currency — код валюты платежа в формате ISO-4217 alpha-3;,
    • customer — объект, содержащий сведения о пользователе:
      • id — идентификатор пользователя, уникальный в рамках проекта;,
      • ip_address — IP-адрес пользователя, актуальный для инициируемой выплаты;,
    • account — объект, содержащий сведения о счёте пользователя:
      • number — номер счёта.
  3. Дополнительно могут использоваться любые другие параметры из числа указанных в спецификации.

Таким образом, корректный запрос на выплату с применением метода «Выплаты на банковские счета» должен содержать идентификатор проекта, базовые сведения о платеже (его идентификатор, сумму и код валюты), идентификатор и IP-адрес пользователя, номер счёта и подпись.

{
  "general": {
    "project_id": 210,
    "payment_id": "test_payment",
    "signature": "PJkV8ej\/UG0Di8hTng6JvipTv+AWoXW\/9MTO8yJA=="
  },
  "payment": {
    "amount": 100000,
    "currency": "KGS"
  },
  "customer": {
    "id": "customer123",
    "ip_address": "192.0.2.0"
  },
  "account": {
    "number": "00004598"
  }
}
Рис. 3. Пример достаточного набора данных для запроса на выплату
{
  "general": {
    "project_id": 210,
    "payment_id": "test_payment",
    "signature": "PJkV8ej\/UG0Di8hTng6JvipTv+AWoXW\/9MTO8yJA=="
  },
  "payment": {
    "amount": 100000,
    "currency": "KGS"
  },
  "customer": {
    "id": "customer123",
    "ip_address": "192.0.2.0"
  },
  "account": {
    "number": "00004598"
  }
}

Формат оповещений

Для оповещений о результатах выплат с применением метода «Выплаты на банковские счета» используется типовой формат, описание которого представлено в разделе Работа с оповещениями.

В следующем примере оповещение свидетельствует о том, что в рамках проекта 438385 была проведена выплата в размере 1 000,00 KGS.

Рис. 4. Пример данных из оповещения о проведении выплаты
{
        "project_id": 438385,
        "payment": {
            "id": "ORDER_ID_155930150",
            "type": "payout",
            "status": "success",
            "date": "2025-02-13T14:59:31+0000",
            "method": "Bank transfer Kyrgyzstan",
            "sum": {
                "amount": 100000,
                "currency": "KGS"
            },
            "description": ""
        },
        "account": {
            "number": "ACC123******6789"
        },
        "customer": {
            "id": "123"
        },
        "decision": {
            "message": "T"
        },
        "operation": {
            "id": 214,
            "type": "payout",
            "status": "success",
            "date": "2025-02-13T14:59:31+0000",
            "created_date": "2025-02-13T14:59:24+0000",
            "request_id": "2fbe5a03094681-00000001",
            "sum_initial": {
                "amount": 10000,
                "currency": "KGS"
            },
            "sum_converted": {
                "amount": 10000,
                "currency": "KGS"
            },
            "code": "0",
            "message": "Success",
            "provider": {
                "id": 21432,
                "payment_id": "",
                "auth_code": ""
            }
        },
        "signature": "naH9t19ESBJadlkhz7MLi99exrbg=="
    }

В следующем примере оповещение свидетельствует об отклонённой выплате.

Рис. 5. Пример данных из оповещения об отклонении выплаты
 {
        "project_id": 438385,
        "payment": {
            "id": "ORDER_ID_232580020",
            "type": "payout",
            "status": "decline",
            "date": "2025-02-13T15:01:12+0000",
            "method": "Bank transfer Kyrgyzstan",
            "sum": {
                "amount": 33200,
                "currency": "KGS"
            },
            "description": ""
        },
        "account": {
            "number": "ACC123******6789"
        },
        "customer": {
            "id": "123"
        },
        "decision": {
            "message": "T"
        },
        "operation": {
            "id": 223,
            "type": "payout",
            "status": "decline",
            "date": "2025-02-13T15:01:12+0000",
            "created_date": "2025-02-13T15:01:05+0000",
            "request_id": "f9b853dc27f53e51f5d1-00000001",
            "sum_initial": {
                "amount": 33200,
                "currency": "KGS"
            },
            "sum_converted": {
                "amount": 33200,
                "currency": "KGS"
            },
            "code": "20000",
            "message": "General decline",
            "provider": {
                "id": 21432,
                "payment_id": "",
                "auth_code": ""
            }
        },
        "signature": "xvIMiPnXQ7UiAnXBfKWUWqsDvianX8ax1g=="
    }

Дополнительные материалы

Для организации работы с выплатами через Gate также могут быть полезны следующие материалы:

Выплаты через Dashboard

При использовании интерфейса Dashboard можно проводить одиночные и массовые выплаты методом «Выплаты на банковские счета» с единичной и пакетной отправкой запросов, называемые соответственно одиночными и массовыми.

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

    При этом должен использоваться файл формата CSV, структура которого соответствует требованиям, представленным в разделе Сведения о массовых платежах, а параметры выплат должны соответствовать требованиям, представленным в разделе Выплаты через Gate этой статьи (за исключением пункта о подписи).

Более подробная информация о проведении выплат через Dashboard представлена в отдельной статье.

Анализ результатов проведения платежей

Для анализа информации о платежах и операциях, как в отдельности по методу «Выплаты на банковские счета», так и в совокупности с другими методами, можно использовать:

  • инструментарий интерфейса Dashboard, с различными реестрами и аналитическими панелями;,
  • отчёты в формате CSV, выгружаемые (как разово, так и периодически) через раздел Отчёты интерфейса Dashboard;,
  • данные в формате JSON, получаемые по программным запросам через интерфейс Data API.

С вопросами по анализу информации можно обращаться к разделам документации (Dashboard и Использование Data API) и специалистам Flashpay.