Создание платежа

Создание платежа (payin).

POSThttps://pipay.su/api/v2/payments

Создание платежа

Эндпоинт создаёт новый платёжный запрос.

Тело запроса

  • orderId (string): Идентификатор заказа.

  • merchantId (string): Уникальный идентификатор мерчанта.

  • amount (number): Сумма платежа.

  • assetOrBank (string, необязательно): Название банка или крипто-актива.

  • method (string): Метод оплаты.

    • q_ecom - квази-еком, AZN

    • p2p - перевод на карту, EUR/USD

    • upi - перевод по UPI ID, INR

    • intent - UPI Intent (редирект в UPI/банковское приложение по deep link)

    • krw - перевод на банковский счёт, KRW

    • kakaopay - оплата через мобильный кошелёк, KRW

    • mpesa - перевод по номеру телефона, KES

    • ars - перевод по CVU, ARS

    • sbp_kz - перевод по номеру телефона, KZT

    • c2c_kz - перевод на карту, KZT

    • c2c_uz - mix перевод на карту, UZS

    • humo - HUMO перевод на карту, UZS

    • uzcard - UZCARD перевод на карту, UZS

    • c2c_az - перевод на карту, AZN

    • kgs - перевод на карту, KGS

    • deeplink - в один клик перевод на карту, KGS

    • qris - оплата QRIS, IDR

    • jz - Jazz Cash JZ, PKR

    • ep - Easy Paisa EP, PKR

    • nagad - оплата через кошелёк Nagad, BDT

    • bkash - оплата через кошелёк bKash, BDT

    • upay - оплата через кошелёк Upay, BDT

    • c2cv - банковский перевод, VND

    • vietqr - оплата VietQR, VND

    • momo - оплата через кошелёк MoMo, VND

    • viettel - оплата через кошелёк/мобильный Viettel, VND

    • ewallet - оплата через e-wallet, VND

    • gcash_native - оплата GCash Native, PHP

    • maya - оплата через кошелёк Maya, PHP

    • mayab - метод оплаты MayaB, PHP

    • alipay - оплата через кошелёк Alipay, CNY

    • wechat_pay - оплата через WeChat Pay, CNY

    • ecny - оплата e-CNY (цифровой юань), CNY

    • c2c - перевод на карту, RUB

    • sbp - перевод по номеру телефона via Russia’s Faster Payments System (RUB)

    • c2cwt - перевод на карту, RUB (WT)

    • sbpwt - перевод по номеру телефона via Russia’s Faster Payments System (RUB) (WT)

    • spay - перевод SberPay по QR через Сбербанк Онлайн (RUB)

    • tpay - внутрибанковский перевод по номеру телефона in T-Bank (RUB)

    • vpay - внутрибанковский перевод по номеру телефона in VTB (RUB)

    • apay - внутрибанковский перевод по номеру телефона in Alfa-Bank (RUB)

    • ozon - внутрибанковский перевод по номеру телефона in OZON Bank (RUB)

    • psb - внутрибанковский перевод по номеру телефона in PSB (RUB)

    • gazprom - внутрибанковский перевод по номеру телефона in Gazprom (RUB)

    • abh - трансграничный, RUB

    • m2ctj - трансграничный перевод на карту в Таджикистан (RUB)

    • m2ntj - трансграничный перевод по номеру телефона to Tajikistan (RUB)

    • m2cvnd - трансграничный перевод Вьетнам (Сбер, VND)

    • m2vvnd - трансграничный перевод Вьетнам (ВТБ, VND)

    • m2ckz - трансграничный перевод Казахстан (KZT)

    • m2alfa - трансграничный перевод с Альфа-Банка (RUB)

    • m2tbank - трансграничный перевод с Т-Банка (RUB)

    • m2sber - трансграничный перевод через Сбер (RUB)

    • m2nam - трансграничный перевод по номеру телефона to Armenia (RUB)

    • tip - перевод по методу «Чаевые» (RUB)

    • sim - мобильная коммерция: перевод на номер телефона оператору сотовой связи (RUB)

    • connectc2c - подбор карты (matching), RUB

    • connectsbp - подбор номера через СБП, RUB

    • nspk - QR-перевод через Систему быстрых платежей

    • ecom - классический 3-DS эквайринг

    • revo - внутренний перевод, EUR

    • paypal - внутренний перевод, EUR

    • crypto - крипто-обработка (specify asset in assetOrBank)

  • currency (string, необязательно): Валюта платежа (RUB, UZS, KZT, IDR, PKR, BDT, VND, PHP, EUR и др.)

  • callbackUri (string): URI для отправки колбэков.

  • successUri (string): URI для редиректа при успешной оплате.

  • failUri (string): URI для редиректа при неуспешной оплате.

  • payer (object): Информация о плательщике.

Пример объекта payer

{
  "payer": {
    "userId": "u-4095",
    "userIp": "188.11.55.10",
    "customerName": "Иван Иванов",
    "phone" : "37434343434",
    "email" : "email@mail.ru",
    "senderBank": "sber", // (string, необязательно, conditional-обязательно for cross‑border methods) — Идентификатор банка плательщика. Используется для курсов, маршрутизации и лимитов трансграничных платежей. Передавайте slug в нижнем регистре ([a-z0-9_-], макс. 32 символа), например "tbank", "sber", "vtb", "alfa".
    "fingerprint": "device_id", // (string, необязательно) — Отпечаток устройства для антифрода.
    "type": "trusted", // (string, необязательно) ftd/std/trusted
    "payments": {
      "successful": 5,
      "expired": 1
    }
  }
}

  • payer.fingerprint (string, обязательно): Уникальный идентификатор устройства/сессии пользователя.

Варианты генерации:

  1. Browser: a hash of userAgent + screen + timezone

  2. Mobile app: device_id (Android ID / IDFV)

  3. Server-side integration: a session UUID or a hash of userId + userAgent

Примеры допустимых значений:

  • "7a3f2b1c" (hex hash)

  • "550e8400-e29b-41d4-a716-446655440000" (UUID)

  • "user_123_session_abc" (arbitrary string)

Максимальная длина: 64 characters

Пример тела запроса

json
{
  "amount": "2000",
  "orderId": "builders-twsesssts-UbsвDssыssHs7sOw2",
  "currency": "INR",
  "method": "upi",
  "merchantId": "lbjk0tqfpgbqeaainyuq6aye",
  "callbackUri": "https://test.local/callback"
}

Примеры ответов

AZN ECOM (200)

json
{
  "status": true,
  "result": {
    "id": "affea489a-d8bc-4bcd-9d78-99ae1a0fa82bg",
    "state": "created",
    "method": "az_ecom"
  },
  "url": "https://checkout.com/affea489a-d8bc-4bcd-9d78-99ae1a0fa82bg"
}

INR UPI (200)

json
{
  "status": true,
  "result": {
    "id": "ae5d4e8df-1aa3-4942-b79a-5acddba8d3f0g",
    "state": "pending",
    "address": "8986768",
    "bank": "indusind",
    "recipient": "Namrata Cherian",
    "rate": 85.26,
    "amount": 1000,
    "init_amount": 1000,
    "bankName": "Indusind Bank"
  },
  "url": "https://checkout.com/66dc4b308b78c"
}

RUB P2P (200)

json
{
  "status": true,
  "result": {
    "id": "pcafecfdf-b34a-4b33-897b-e081f227a472r",
    "state": "pending",
    "address": "11111111111",
    "bank": "rocketbank",
    "country": "RUB",
    "recipient": "vasya johnson",
    "rate": "80.58",
    "amount": "5500.00",
    "init_amount": "5500.00",
    "bankName": "Рокет Банк",
    "message": null,
    "commission": "10.00",
    "usdt_amount": 61.429635145197324,
    "expired_at": "2025-11-26T19:08:11.000000Z",
    "method": "c2c"
  },
  "url": "https://checkout-flow/pcafecfdf-b34a-4b33-897b-e081f227a472r"
}

Invalid amount (400)

json
{
  "status": false,
  "error": {
    "code": 400,
    "message": "Invalid amount",
    "details": "The amount should be between 500 and 300000."
  }
}

Merchant not found (404)

json
{
  "status": false,
  "error": {
    "code": 40401,
    "message": "Merchant not found",
    "details": "The specified merchantId does not exist or is invalid."
  }
}

RUB CrossBoard (200)

json
{
  "status": true,
  "result": {
    "id": "66dc4b308b78c",
    "state": "pending",
    "address": "+992200115507",
    "bank": "dcitybank",
    "recipient": "Иванов Иван Иванович",
    "rate": 91.93,
    "amount": 1000,
    "init_amount": 1000,
    "bankName": "Душанбе Сити Банк",
    "message": "Выберите перевод по номеру телефона, введите скопированный номер, выберете банк Душанбе Сити Банк, введите сумму, подтвердите перевод"
  },
  "url": "https://checkout.com/66dc4b308b78c"
}

Create Payment (payin) (400)

json
{
  "status": false,
  "error": {
    "code": 40003,
    "message": "No available methods",
    "details": "No payment methods configured for this merchant and type."
  }
}