google analytics

Предложение

"Предложение" представляет собой объект, по которому создаются счета на оплату конкретному клиенту. Объект "Предложение" может быть связан со столиком или кассой ресторана, таксопарком или машиной этого таксопарка.

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

{
  "object": "offer",
  "id": "usr_ofr_5234FEF24gg354fdfe",
  "created": "2015-08-09T18:31:42.201+03:00",
  "modified": "2015-08-09T18:31:42.201+03:00",
  "payqrUserId": "000000000001",
  "offerId": "101.800.54321",
  "userData": "iZ16_oALL16\\78AYGs,dd-YXn3",
  "status": "personalized"
}

Атрибуты

object
строка, значение "offer".

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

ИД предложения.

Это значение только для чтения, и все попытки изменения будут игнорироваться.
created
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата создания предложения.

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

Уникальный номер абонента в PayQR, который совершает операции по этому объекту «Предложение», т.е. считал код покупки типа «Привязанный» (номера абонентов создаются PayQR)

modified
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата последнего изменения предложения.

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

Идентификационный номер для получения счета.

offerPreId
строка

Уточняющий идентификационный номер для получения счета.

userData
строка

Дополнительные служебные/аналитические данные.

Данные передаются в свободном формате.
status
строка: offered, paused, personalized, waitingInvoices, cancelled, failed

Статус объекта «Предложение» по внутренним правилам PayQR.

offered
Объект «Предложение» может быть предложен пользователям PayQR, то есть создан.
paused
Действие объекта «Предложение» временно приостановлено, то есть он недоступен для принятия пользователями PayQR.
personalized
Объект «Предложение»принят каким-либо пользователем PayQR, то есть считан код покупки типа «Привязанный» (сопровождается уведомлением получателя денежных средств offer.invoices.creating).
waitingInvoices
Список счетов на оплату по объекту «Предложение» не был получен в ответе от получателя денежных средств в реальном времени, но объект «Предложение» все еще ожидает получение счетов на оплату –применяется в обмене данными между получателем денежных средств и PayQRтолько посредством специальных протоколов, отличных от APIPayQR(WebAPI).
cancelled
Объект «Предложение» аннулирован.
failed
Действие объекта «Предложение» прекращено в связи с критической ошибкой.
invoices
объект

Запросы на создание объектов «Счет на оплату», передаваемые в объекте «Предложение»

Список создаваемых счетов на оплату.

Счета на оплату

Счет на оплату представляет собой обычный заказ на стороне интернет-сайта. В разные стадии совершения покупки через PayQR счет на оплату (заказ) может находиться в разной стадии наполненности, но перед его оплатой покупателем в счете на оплату всегда содержится вся информация, необходимая интернет-сайту для успешного создания и исполнения заказа на своей стороне.

Набор необходимых данных в счете на оплату перед формированием заказа на стороне интернет-сайта определяет интернет-сайт на уровне формирования кнопки, вызывающей popup-окно – PayQR обязуется собрать все эти сведения с покупателя перед осуществлением оплаты счета на оплату. Дополнительно можно заполнить данные в счете на оплату доступными способами доставки и точками самовывоза в процессе покупки, если в кнопке активировались параметры data-deliverycases-required и/или data-pickpoints-required, соответственно.
Осуществляется это через ответы на уведомления сервера PayQR о соответствующих событиях invoice.deliverycases.updating и/или invoice.pickpoints.updating.

При создании счета на оплату (через нажатие покупателем кнопки на интернет-сайте) критичными являются только сумма заказа (в кнопке – data-amount, в объекте счета на оплату – amount) и хотя бы один из идентификаторов заказа – либо номер заказа (в кнопке – data-orderid, в объекте счета на оплату – orderId), либо номер товарной группы (в кнопке – data-ordergroup, в объекте счета на оплату – orderGroup), либо содержание корзины (в кнопке – data-cart, в объекте счета на оплату – cart).

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

{
  "object": "invoice",
  "id": "usr_inv_gKSaFJxIv8xydXdOl3f4fm",
  "payqrNumber": "3334445556667778",
  "created": "2015-03-17T15:24:04.311+03:00",
  "modified": "2015-05-17T17:10:08.107+03:00",
  "livemode": true,
  "payqrUserId": "000000000007",
  "scenario": "buy",
  "amount": 1000.00,
  "cart": [{
    "article": "jl1uayq8",
    "name": "Историческая Книга",
    "imageUrl": "http://www.modastuff.ru/books/history-200x200.jpg",
    "quantity": "1",
    "amount": 650,
    "category": ""
  }],
  "customer": {
    "firstName": "Степан",
    "middleName": "Степанович",
    "lastName": "Степанов",
    "phone": "8-926-000-11-11",
    "email": "mail@mail.ru"
  },
  "delivery": {
    "country": "Россия",
    "region": "Москва",
    "city": "Москва",
    "zip": "115059",
    "street": "Партийный переулок",
    "house": "1",
    "unit": "46",
    "building": "",
    "flat": "217",
    "hallway": "",
    "floor": "4",
    "intercom": "",
    "comment": "Предварительно позвонить",
    "longitude": 37.237400,
    "latitude": 115.809000,
    "kladrId": "77000000000222600"
  },
  "deliveryCases": [{
    "article": "deliv01_Sl",
    "name": "Курьерская доставка",
    "description": "Курьерская доставка документов, посылок и корреспонденции",
    "amountFrom": 200,
    "amountTo": 350,
    "children": [{
      "article": "eliv01_Sl",
      "name": "Срочная доставка курьером",
      "description": "Экспресс-доставка в течение часа",
      "amountFrom": 350,
      "amountTo": 350
    }, {
      "article": "eliv01_S2",
      "name": "Курьером",
      "description": "На следующий день",
      "amountFrom": 200,
      "amountTo": 200
    }],

  }, {
    "article": "deliv02_Sl",
    "name": "Транспортная компания",
    "description": "Грузоперевозки и другие транспортные услуги в России",
    "amountFrom": 200,
    "amountTo": 1500
  }],
  "deliveryСasesSelected": {
    "article": "eliv01_Sl",
    "name": "Срочная доставка курьером",
    "description": "Экспресс-доставка в течение часа",
    "amountFrom": 350,
    "amountTo": 350
  },
  "promoCode": {
    "article": "bunuscode",
    "description": "Промо-код",
    "value": "0000111100001111"
  },
  "promoCard": {
    "article": "malinacard",
    "description": "Карта лояльности",
    "value": "9999000099990000"
  },
  "message": {
    "article": "thanxmes",
    "text": "Спасибо за заказ! Доставка будет осуществлена в течение 01:00. Телефон справочной службы: +7 (495) 669-67-56.",
    "imageUrl": "http://modastuff.ru/thanks.jpeg",
    "url": "http://modastuff.ru"
  },
  "upSale": {
    "article": "Gsv2mX93kdhsi2",
    "name": "Конституция Российской Федерации",
    "imageUrl": "http://www.modastuff.ru/books/constitut-300x300.jpg",
    "quantity": "1",
    "amount": 500,
    "category": ""
  },
  "userData": "82nZJKAKq2yyXU_1oQp2lffS",
  "validityInMinutes": 10080,
  "confirmWaitingInMinutes": 4320,
  "status": "ordered"
}

Атрибуты

object
строка, значение "invoice".

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

ИД счета на оплату.

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

Номер счета на оплату.

Это значение только для чтения, и все попытки изменения будут игнорироваться.
livemode
логическое значение: true/false

Режим тестирования (false) или "боевая" система (true).

В режиме тестирования удобно не сохранять изменения в БД магазина, но при том выполнять всю соответствующую логику расчетов.
Это значение только для чтения, и все попытки изменения будут игнорироваться.
payqrUserId
строка

ИД пользователя

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

Сценарий этого счета на оплату (pay – оплата, buy – покупка)

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

Итоговая сумма счета.

Если не заполнена, значит, система будет ждать, что сумма пока не известна и будет заполнена в процессе дальнейшего взаимодействия.
Пользователь не сможет оплатить заказ, пока сумма не будет заполнена.
orderId
строка

Номер заказа в системе клиента

livemode
логическое значение: true/false

Режим тестирования (false) или "боевая" система (true).

В режиме тестирования удобно не сохранять изменения в БД магазина, но при том выполнять всю соответствующую логику расчетов.
Это значение только для чтения, и все попытки изменения будут игнорироваться.
created
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата создания счета на оплату.

Это значение только для чтения, и все попытки изменения будут игнорироваться.
modified
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата последнего изменения счета на оплату.

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

Номер товарной группы.

Это может быть номер товарной группы или номер корзины в интернет-магазине.
cart
объект

Содержание счета (список покупок, корзина), отображаемое в телефоне пользователя

article
строка
Внутренний идентификатор позиции продавца (артикул)
name
строка
Название позиции, не более 100 символов.
category
строка
Категория позиции в классификаторе PayQR
quantity
число
Количество в позиции
amount
число
Стоимость всей товарной позиции
imageUrl
URL
Ссылка на изображение позиции
customer
объект

Пользователь, который совершает оплату.

firstName
строка
Имя пользователя.
middleName
строка
Отчество пользователя.
lastName
строка
Фамилия пользователя.
phone
строка
Телефон пользователя.
email
строка
Электронный адрес пользователя.
delivery
объект

Адрес доставки.

country
строка
Страна доставки.
region
строка
Регион доставки.
city
строка
Город доставки.
zip
строка
Почтовый индекс адреса доставки.
street
строка
Улица адреса доставки.
house
строка
Дом/владение в адресе доставки.
unit
строка
Корпус дома в адресе доставки.
building
строка
Строение в адресе доставки.
flat
строка
Квартира/офис в адресе доставки.
hallway
строка
Подъезд в адресе доставки.
floor
строка
Этаж в адресе доставки.
intercom
строка
Код домофона по адресу доставки.
comment
строка
Комментарий к доставке.
longitude
число
Географическая долгота места доставки.
latitude
число
Географическая широта места доставки.
kladrId
строка
ИД места доставки по КЛАДР.
deliveryCases
объект

Варианты доставки.

Список способов доставки заказа для выбора покупателем (только для сценария покупки), если при создании соответствующего счета на оплату получатель денежных средств активировал выбор покупателем способа доставки после указания адреса в мобильном приложении PayQR (через deliveryCasesRequired/data-deliverycases-required) – может фигурировать только в ответе получателя денежных средств на уведомление о событии invoice.deliverycases.updating

article
строка
Артикул/внутренний идентификатор способа доставки
name
строка
Название способа доставки
description
строка
Описание способа доставки
amountFrom
строка
Стоимость доставки этим способом "от"
Для передачи бесплатного варианта доставки нужно использовать 0
amountTo
строка
Стоимость доставки этим способом "до"
Для передачи бесплатного варианта доставки нужно использовать 0
children
объект
Список способов доставки уровнем ниже
deliveryСasesSelected
объект

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

Выбранный вариант доставки полностью соответствует одной из записей в вариантах доставки или принимает значение null.
Значение не может быть изменено магазином.

article
строка
Артикул/внутренний идентификатор способа доставки
name
строка
Название способа доставки
description
строка
Описание способа доставки
amountFrom
число
Стоимость доставки этим способом "от"
Для передачи бесплатного варианта доставки нужно использовать 0
amountTo
число
Стоимость доставки этим способом "до"
Для передачи бесплатного варианта доставки нужно использовать 0
pickPoints
объект

Точки самовывоза.

Если содержимое еще не известно, то точки самовывоза можно передавать в ответ на событие PayQR.
Формирование списка поддерживает множественную отправку подзначений. Каждый отправленный набор подзначений – новая позиция в списке.
Список поддерживает до двух уровней, сортировка позиций в рамках одного уровня происходит по номеру позиции (3 выше, чем 5), группировка по уровням происходит по содержанию номера раздела через разделитель «.» (1, 3, 8 – позиции списка первого уровня, 1.1, 3.6, 8.2 – позиции списка второго уровня). На каждом уровне не более 30 вариантов (всего не более 60 позиций).
Если у вас возникают сложности с настройкой точек самовывоза, передавайте список всех точек, мы берем отображение на себя.

article
строка
Артикул/внутренний идентификатор пункта самовывоза
name
строка
Название пункта самовывоза
description
строка
Описание пункта самовывоза
amountFrom
число
Стоимость самовывоза из этого пункта "от"
Если значения от и до совпадают, то выводится точная сумма.
amountTo
число
Стоимость самовывоза из этого пункта "до"
Если значения от и до совпадают, то выводится точная сумма.
longitude
число
Географическая долгота
latitude
число
Географическая широта
children
объект
Список способов доставки уровнем ниже
pickPointsSelected
строка

Выбранная покупателем точка самовывоза.

Выбранная точка самовывоза полностью соответствует одной из записей в предложенных вариантах самовывоза или принимает значение null.
Значение не может быть изменено магазином.

article
строка
Артикул/внутренний идентификатор пункта самовывоза
name
строка
Название пункта самовывоза
description
строка
Описание пункта самовывоза
amountFrom
строка
Стоимость самовывоза из этого пункта "от"
Если значения от и до совпадают, то выводится точная сумма.
amountTo
строка
Стоимость самовывоза из этого пункта "до"
Если значения от и до совпадают, то выводится точная сумма.
longitude
число
Географическая долгота
latitude
число
Географическая широта
promoCode
объект

Промо-код

Номер промо-кода, который пользователь PayQR передает получателю денежных средств через мобильное приложение PayQR, если это «допускалось» получателем денежных средств при создании соответствующего объекта «Счет на оплату» (через promoCodeRequired/data-promocode-required), а также возможные дополнительные данные, которыми получатель денежных средств снабдил сбор промо-кодов при создании объекта «Счет на оплату» (через promoCodeDetails/data-promocode-details)

article
строка
Артикул/внутренний идентификатор определенного типа промо-кодов/span>
description
строка
Использованное получателем денежных средств описание к полю ввода промо-кода
value
строка
Значение промо-кода, выбранное пользователем PayQR
promoCard
объект

Карта лояльности

Номер карты лояльности, который пользователь PayQR передает получателю денежных средств через мобильное приложение PayQR, если это «допускалось» получателем денежных средств при создании соответствующего объекта «Счет на оплату» (через promoCardRequired/data-promocard-required), а также возможные дополнительные данные, которыми получатель денежных средств снабдил сбор карт лояльности при создании объекта «Счет на оплату» (через promoСardDetails/data-promocard-details)

article
строка
Артикул/внутренний идентификатор определенного типа карт лояльности/span>
description
строка
Использованное получателем денежных средств описание к полю ввода номера карты лояльности
value
строка
Значение номера карты лояльности, выбранное пользователем PayQR
upSale
объект: в формате JSON

Поднятие суммы продажи (up-sale).

Мотивация покупателя потратить больше денег на покупку через предложение дополнительных опций к выбранному.
Список товаров будет отображаться в мобильном приложении.

article
строка
Внутренний идентификатор позиции продавца (артикул)
name
строка
Название позиции
imageUrl
URL
Ссылка на изображение позиции
quantity
число
Количество позиции
amount
число
Стоимость всей товарной позиции
category
строка
Категория позиции в классификаторе PayQR
poll
объект

Опрос пользователей PayQR

Опрос пользователей PayQR, совершивших покупку/платеж, получателем денежных средств – может фигурировать только в ответе получателя денежных средств на уведомление о событии invoice.order.creating

article
строка
Артикул/внутренний идентификатор вопроса
question
строка
Текст вопроса
answers
объект
article
строка
Артикул/внутренний идентификатор ответа
answer
строка
Тест ответа
pollSelected
объект

Выбранный покупателем вариант ответа

Выбранный пользователем PayQR вариант ответа, если он принял участие в опросе от получателя денежных средств (содержание вложенного объекта в параметре answers идентично какому-то конкретному объекту списка из значения параметра answers, переданного получателем денежных средств ранее)

article
строка
Артикул/внутренний идентификатор вопроса
question
строка
Текст вопроса
answers
объект
article
строка
Артикул/внутренний идентификатор ответа
answer
строка
Тест ответа
userData
строка

Данные пользователя.

Данные передаются из кнопки в свободном формате.
message
объект

Сообщение от получателя денежных средств, сопровождающее покупку/платеж

article
строка
Артикул/внутренний идентификатор сообщения.
text
строка
Сообщение в покупке после ее совершения.
imageUrl
строка
URL изображения в покупке после ее совершения.
Временная ссылка, доступна для скачивания минимум сутки.
url
строка
URL ссылка на сайта продавца в покупке после ее совершения.
Ссылка срабатывает при нажатии на изображение, загруженное по data-sell-imageurl. Если изображения нет, ссылка на сайт продавца не будет работать.
validityInMinutes
число

Срок действия счета на оплату, в течение которого пользователь может оплатить его – отсчет начинается с даты и времени получения счета на оплату пользователем PayQR, т.е. со значения параметра created
confirmWaitingInMinutes
число

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

Если значение не настроено (в том числе в личном кабинете) или null, то использование срока ожидания остается на усмотрение PayQR.
Если указано 0, то оплата счета будет подтверждена сразу же, денежные средства будут зачислены на рассчетный счет системы. В этом случае отмена счета будет возвращать денежные средства на банковскую карту.
Если указано отрицательное значение, оно будет игнорироваться.
status
строка: preparing, offered, paused, personalized, ordered, paying, paid, cancelled, revertedPartially, reverted, failed

Статус счета на оплату.

preparing
Счет на оплату находится в процессе формирования и носит ознакомительный характер (исключительно служебный статус)
offered
Счет на оплату может быть предложен пользователям PayQR, то есть создан.
paused
Действие счета на оплату временно приостановлено, то есть он недоступен для принятия пользователями PayQR.
personalized
Счет на оплату принят каким-либо пользователем PayQR.
ordered
Пользователь PayQR готов совершить оплату счета (и сообщил все сведения, запрошенные получателем денежных средств, если это сценарий покупки и такие сведения запрашивались)
paying
Пользователь PayQR оплатил счет, но еще не завершены все возможные организационные и технические процедуры по правилам PayQR(обычно в этом статусе счета на оплату находятся не больше нескольких секунд).
paid
Поступили денежные средства по счету на оплату в полном объеме, то есть совершение покупки/платежа подтверждено.
cancelled
Счет на оплату отменен до его оплаты пользователем PayQR или получателем денежных средств.
revertedPartially
Счет на оплату был полностью оплачен, но по нему зафиксированы частичные возвраты, инициированные получателем денежных средств.
reverted
Счет на оплату был полностью оплачен, но сейчас полностью возвращен по инициативе получателя денежных средств (одной операцией возврата на всю сумму или несколько частичными возвратами).
failed
Операция по счету на оплату прекращена в связи с критической ошибкой до его оплаты.
confirmStatus
строка: waiting, confirmed, confirmedEarly, ensured, transferred

Статус подтверждения перевода средств на счет пользователя.

waiting
Ожидает подтверждения (срок, указанный в confirmWaitingInMinutes, еще не достигнут).
confirmed
Списание денежных средств с пользователя PayQR подтверждено на уровне процессинга PayQR(достигнут срок, указанный в confirmWaitingInMinutes).
confirmedEarly
Списание денежных средств с пользователя PayQR досрочно подтверждено по инициативе получателя денежных средств (до истечения срока, указанного в confirmWaitingInMinutes).
ensured
Денежные средства пользователя PayQR получены расчетным банком PayQR (списание денежных средств с пользователя PayQR по счету на оплату подтверждено финансово).
transferred
Обработано перечисление денежных средств по счету на оплату получателю денежных средств.
reverts
объект

Возврат по счету

Перечень всех возвратов по счету на оплату (отмен по счету на оплату после его оплаты) по инициативе получателя денежных средств, если они были – может фигурировать только в результатах исполнения «прямой команды» на получение объекта «Счет на оплату». Подробнее в разделе Возвраты по счетам

Возвраты по счетам

В любой момент интернет-сайт может осуществить полную или частичную отмену любого из оплаченных счетов на оплату (заказов) посредством PayQR. В ручном или автоматическом режиме с помощью личного кабинета или запросами через API. Полная или частичная (на усмотрение интернет-сайта) отмена влечет за собой полный или частичный возврат уплаченных денежных средств покупателю.

Частичные возвраты (отмены) по одному счету на оплату (заказу) можно осуществлять неограниченное количество раз.

Только сам интернет-сайт может инициировать возврат денежных средств (отмену) по оплаченным счетам на оплату (заказам) в свою пользу.

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

{
  "object": "revert",
  "id": "rvt_T5JTgj544p45gG36g",
  "created": "2015-10-09T18:32:42.201+03:00",
  "modified": "2015-10-09T18:32:43.201+03:00",
  "invoiceId": "usr_inv_gKSaFJxIv8xydXdOl3f4fm",
  "revertedAmount": 500.00,
  "status": "succeeded"
}

Атрибуты

object
строка, значение "revert".
id
строка

ИД возврата.

created
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата создания возврата по счету.

Это значение только для чтения, и все попытки изменения будут игнорироваться.
modified
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата последнего изменения возврата по счету.

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

ИД счета на оплату.

revertedAmount
число

Сумма возврата.

status
строка: new, succeeded, failed

Статус возврата.

new
возврат создан, но еще не перешел в обработку
succeeded
успешно выполнен
failed
произошла ошибка

Квитанции

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

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

{
  "object": "event",
  "id": "evt_14EccV2eZvKYlo2C2j1B18pF",
  "created": "2015-08-09T18:31:42.201+03:00",
  "type": "receipt.paid",
  "data": {
    "object": "receipt",
    "id": "usr_rcp_14EeCA2eZvKYlo2C8nDrcXdp",
    "payqrNumber": "3213326680056410",
    "created": "2015-08-09T18:31:42.201+03:00",
    "payqrUserId": "000000000001",
    "amount": 13648.44,
    "receiver": {
      "name": "ООО «ФИТ»",
      "inn": "7731439244",
      "kpp": "772501001",
      "bic": "044583793",
      "account": "40702810800000000887"
    },
    "purpose": "Оплата по квитанции №010101-15 за январь 2015 г. П.П. Петров. Без НДС",
    "customer": {
      "firstName": "Иван",
      "middleName": "Иванович",
      "lastName": "Иванов",
      "inn": "0",
      "email": "test@user.com"
    },
    "customerAddress": {
      "country": "Россия",
      "region": "Москва",
      "city": "Москва",
      "zip": "115093",
      "street": "Дубининская ул.",
      "house": "80",
      "flat": "20"
    },
    "uin": "18810168140201541944",
    "kbk": "18210807030011000110",
    "parametersCustom": {
      "customPartner": "Sberbank"
    },
    "status": "paid"
  }
}

Атрибуты

id
строка

ИД квитанции.

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

строка, значение "receipt".

Это значение только для чтения, и все попытки изменения будут игнорироваться.
сreated
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm

Дата создания квитанции.

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

Номер квитанции.

Это значение только для чтения, и все попытки изменения будут игнорироваться.
payqrUserId
строка
Уникальный номер абонента в PayQR, который совершает оплату (номера абонентов создаются PayQR)
category
строка
Код категории платежа по классификатору товаров/услуг PayQR
amount
число
Сумма по квитанции.
purpose
строка
Назначение платежа
receiver
объект

Данные о получателе денежных средств (все обязательные параметры)

name
строка
Наименование получателя денежных средств
inn
строка
ИНН получателя денежных средств
kpp
строка
КПП получателя денежных средств
biс
строка
БИК банка получателя денежных средств
account
строка
Номер счета в банке получателя денежных средств
customer
объект

Данные о плательщике, которые плательщик передает через мобильное приложение PayQR

firstName
строка
Имя плательщика
middleName
строка
Отчество плательщика
lastName
строка
Фамилия плательщика
inn
строка
ИНН плательщика (если не указан/неизвестен, будет передан 0)
email
строка
E-mail плательщика
customerAddress
объект

Данные об адресе плательщика, которые плательщик передает через мобильное приложение PayQR

country
строка
Страна
region
строка
Регион
city
строка
Населенный пункт
zip
строка
Индекс
street
строка
Улица
house
строка
Дом
unit
строка
Корпус
building
строка
Строение
flat
строка
Квартира
receiptImageUrl
строка
Изображение, сопровождающее платеж
paidMessage
объект

Сообщение по платежу после его завершения

text
строка
Текст сообщения
imageUrl
строка
Изображение, сопровождающее сообщение
url
строка
Адрес перехода при нажатии на сообщение
uin
строка
УИН
kbk
строка
КБК
oktmo
строка
ОКТМО
taxPaymentReason
строка
Основание налогового платежа
taxPeriod
строка
Налоговый период
documentNumber
строка
Номер документа
documentDate
строка
Дата документа
paymentType
строка
Тип платежа
compilerStatus
строка
Статус составителя платежного документа
payerIdentifier
строка
Идентификатор физического лица по платежу
payerNumber
строка
Номер лицевого счета, по которому совершается платеж
payerDocumentType
строка
Тип документа, удостоверяющего личность физического лица по платежу
payerDocumentNumber
строка
Номер документа, удостоверяющего личность физического лица по платежу
contractNumber
строка
Номер договора, по которому совершается платеж
flatNumber
строка
Номер квартиры, по которой совершается платеж
phoneNumber
строка
Номер телефона, по которому совершается платеж
birthDate
строка
Дата рождения
studentName
строка
ФИО ребенка/учащегося
servicerName
строка
ФИО специалиста, оказывающего услуги
institutionNumber
строка
Номер образовательного или медицинского учреждения
groupNumber
строка
Номер группы детсада/класса школы
executoryNumber
строка
Номер исполнительного производства
billNumber
строка
Номер счета, извещения, начисления или др.
billRulingNumber
строка
Номер постановления
billDate
строка
Дата постановления, счета, извещения, начисления или др.
addAmount
строка
Сумма пени, страховки, дополнительного начисления или др., включенная в общую сумму
addAmountPurpose
строка
Назначение предлагаемой суммы увеличения основной суммы платежа
paymentDocumentIndex
строка
Индекс платежного документа
budgetReceiverAccount
строка
Лицевой счет бюджетного получателя
paymentTerm
строка
Крайний срок совершения платежа
paymentPeriod
строка
Период, по которому совершается платеж
paymentTypeName
строка
Вид платежа
paymentType
строка
Код вида платежа
parametersCustom
объект

Дополнительные свободные параметры, если они использовались

Перечень дополнительных свободных параметров и их значений, если они использовались при создании кода покупки типа «Квитанция»
status
paid строка
Статус квитанции

События

Логика всего платежного сервиса PayQR, по сути, заключена в событии invoice.order.creating и это наше основное отличие от обычного интернет-эквайринга. PayQR является интерфейсом получения информации от покупателя и передачи информации покупателю, своего рода аналог обычного интернет-браузера.
Раньше после формирования корзины покупатели регистрировались на интернет-сайте и заполняли данные о себе в браузере. И туда же в браузер интернет-сайт возвращал результат обработки данных покупателя – номер заказа (на основе содержания корзины) и сумму к оплате. Сейчас эту же информацию от покупателя интернет-сайт может получать еще и через PayQR, и в PayQR же он потом возвращает информацию для обработки покупателем (номер заказа и сумму к оплате).
Аналогично с оплатой – раньше покупатель выбирал способ оплаты и оплачивал покупки в браузере, сейчас за него эту процедуру может осуществить PayQR. Интернет-сайт точно так же, как из браузера, получает в свою систему учета информацию об оплате, чтобы изменить статус конкретного заказа на «Оплачен» (или любой другой для такого случая).

Мы используем события, чтобы уведомлять ваш интернет-сайт обо всем, что происходит с вашими счетами на оплату. Когда происходит определенное событие в PayQR, мы создаем событие (event) с необходимым объектом и посылаем его на URL интернет-сайта, указанный в личном кабинете. Например, когда оплата счета на оплату прошла успешно, мы создаем событие invoice.paid с объектом «Счет на оплату» (invoice), а когда обработан запрос интернет-сайта на возврат средств, мы создаем событие revert.succeeded с объектом «Возвраты по счетам» (revert). Основных события в логике PayQR два – это invoice.order.creating, вызывающий формирование заказа на стороне интернет-сайта, и invoice.paid, подтверждающий оплату по счету на оплату (заказу) покупателем.

Событие invoice.order.creating оповещает интернет-сайт о том, что PayQR собрал все сведения с покупателя, которые требуются интернет-сайту для формирования заказа (на основе атрибутов кнопки, вызывающей popup-окно), и теперь PayQR ждет от интернет-сайта номер заказа и сумму к оплате, если интернет-сайт решит их актуализировать или если этих данных еще не было (потому что без этих данных покупатель к оплате приступить не сможет).

Событие invoice.paid должно просто менять статус конкретного заказа в вашей системе учета, программном обеспечении и так далее на «Оплачен» стандартными средствами со всеми вытекающими отсюда процессами (доставка товара/услуги покупателю).

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

{
  "object": "event",
  "id": "evt_14EccV2eZvKYlo2C2j1B18pF",
  "created": "2015-08-09T18:31:42.201+04:00",
  "type": "invoice.order.creating",
  "data": {
    "id": "usr_inv_y1787SnkoiXuwj2ffZhaq",
    "object": "invoice",
    "livemode": false,
    ...
    "orderId": "GN15-IZY1AF.90r",
    "amount": 1000.00,
    "status": "ordered"
  }
}

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

{
  "id": "evt_14EccV2eZvKYlo2C2j1B18pF",
  "data": {
    "amount": 1000.00,
  }
}

Атрибуты

id
строка
ИД события.
object
строка , значение "event"
created
дата: в формате ISO 8601: YYYY-MM-DDThh:mm:ss.mmm
Дата создания события.
data
объект
Описание объекта, с которым произошло событие, с полным набором параметров. Например, событие invoice.order.creating содержит полное описание созданного счета на оплату.
type
строка
Описание событий: например, invoice.order.creating, revert.succeeded, и т.д.