П Платёжка Документация

Счета и ссылки на оплату

Три способа принять оплату — и когда какой подходит:

ЧтоКогдаКак создаётся
Платёж (POST /payments)У вас есть сайт или приложение: вы сами создаёте заказ и отправляете плательщика на payment_urlТолько через API
Счёт (POST /invoices)Разовая оплата конкретному покупателю: известны сумма и получатель, есть срок. Ссылку отправляете письмом или в мессенджереВ кабинете (Счета → Выставить) или через API
Ссылка на оплату (POST /payment_links)Многоразовая ссылка или QR-код на товар или услугу: платят многие, сумма фиксированная или свободнаяВ кабинете (Ссылки на оплату) или через API

Счёт и ссылка не создают платёж заранее: платёж появляется, когда покупатель открывает страницу, поэтому срок жизни заказа в ПЦ не расходуется впустую. По каждой попытке оплаты создаётся отдельный объект платежа с payment_link_id.

Счета

POST /invoices — выставить счёт

ПараметрТипОписание
amountinteger, обязателенСумма в копейках
descriptionstring ≤ 120Назначение: видно покупателю и в чеке
customer{email, phone}Получатель; на email уходит письмо со счётом (при send_email: true) и чек
expires_atdatetimeОплатить до; без него счёт бессрочный
captureauto | manualСписание сразу или холд
itemsarrayПозиции чека, как у платежа
comment, return_url, send_emailКомментарий покупателю, куда вернуть после оплаты, отправить ли письмо сразу
{
  "id": "pl_9kZ1x9QmT0aBcDeFgHiJkL",
  "object": "invoice",
  "shop_id": "723612",
  "status": "sent",
  "amount": 150000,
  "currency": "RUB",
  "description": "Заказ 1001",
  "capture": "auto",
  "customer": {
    "email": "buyer@example.com"
  },
  "items": [],
  "url": "https://platezhka.online/l/pl_9kZ1x9QmT0aBcDeFgHiJkL",
  "sent_at": "2026-09-25T12:00:00+03:00",
  "expires_at": "2026-10-25T23:59:59+03:00",
  "created_at": "2026-09-25T12:00:00+03:00"
}

Статусы: issued → sent → paid | canceled | expired. Когда счёт оплачен, в объекте появляется payment_id. GET /invoices, GET /invoices/{id}, POST /invoices/{id}/cancel.

POST /payment_links

{
  "title": "Консультация",
  "amount": 300000,
  "description": "Онлайн-консультация 1 час",
  "expires_at": null,
  "success_url": "https://shop.example/thanks"
}

Без amount плательщик вводит сумму сам. Ответ содержит url — многоразовая страница; payments_count — сколько раз по ней заплатили. GET /payment_links/{id} — получить. Ссылку нельзя удалить, только отключить в кабинете.