Платеж

PORT: 8569

Команда: posPurchase

Структура data в запросе:

{
  amount: Вещественное (2 зн). Сумма платежа.
  device: {
    pid: Строка. Уникальный идентификатор POS-терминала.
    serial: Строка. Серийный номер POS-терминала.
  }
}

Данные ответа в data описаны в интерфейсе:

PosResponseInterface

Пример данных запроса:

{
  "cmd": "posPurchase",
  "data": "{\"amount\":123.45,\"device\":{\"pid\":\"7d3129d813bd078b9c579001775eedd6\",\"serial\":\"K33484357636\"}}",
  "number": 1
}

Пример данных ответа (успех):

{
  "cmd": "posPurchase",
  "number": 1,
  "code": 0,
  "msg": "",
  "debug": "",
  "data": "{\"rc\":\"0\",\"aid\":\"A0000000041010\",\"pan\":\"************0888\",\"rrn\":\"156206584413\",\"tid\":\"00849970\",\"amount\":123.45,\"expire\":\"2108\",\"cardholder\":\"\\n\",\"message\":\"ОДОБРЕHО\",\"authCode\":\"53Y736\",\"cardType\":\"Mastercard\",\"chequeNumber\":\"0002\",\"datetime\":\"2019-07-02T14:10:40.000+0000\",\"datetimePos\":\"2019-07-02T14:10:40\"}"
}

Пример данных ответа (ошибка):

{
  "cmd": "posPurchase",
  "number": 1,
  "code": 4134,
  "msg": "Сначала выполните сверку итогов",
  "debug": "",
  "data": ""
}

Универсальный возврат

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

Если требуется отправить на терминал команду отмены или возврата, необходимо воспользоваться командами posCancel или posRefund соответственно. Аргументы запроса и формат ответа аналогичен команде posUniversalRefund.

PORT: 8569

Команда: posUniversalRefund

Структура data в запросе:

{
  amount: Вещественное (2 зн). Сумма платежа.
  rrn: Строка. RRN платежа.
  device: {
    pid: Строка. Уникальный идентификатор POS-терминала.
    serial: Строка. Серийный номер POS-терминала.
  }
}

Данные ответа в data описаны в интерфейсе:

PosResponseInterface

Пример данных запроса:

{
  "cmd": "posUniversalRefund",
  "data": "{\"amount\":100.0,\"rrn\":\"156206584413\",\"device\":{\"pid\":\"7d3129d813bd078b9c579001775eedd6\",\"serial\":\"K33484357636\"}}",
  "number": 1
}

Пример данных ответа:

{
  "cmd": "posUniversalRefund",
  "number": 1,
  "code": 0,
  "msg": "",
  "debug": "",
  "data": "{\"rc\":\"0\",\"aid\":\"A0000000041010\",\"pan\":\"************0888\",\"rrn\":\"156206584413\",\"tid\":\"00849970\",\"amount\":100.00,\"expire\":\"2108\",\"cardholder\":\"\\n\",\"message\":\"ОДОБРЕHО\",\"authCode\":\"53Y736\",\"cardType\":\"Mastercard\",\"chequeNumber\":\"0002\",\"datetime\":\"2019-07-02T14:10:40.000+0000\",\"datetimePos\":\"2019-07-02T14:10:40\"}"
}

Отмена последней транзакции (автоматический роллбэк).

PORT: 8569

Команда: posCancelLast

Структура data в запросе:

{
  device: {
    pid: Строка. Уникальный идентификатор POS-терминала.
    serial: Строка. Серийный номер POS-терминала.
  }
}

Данные ответа в data описаны в интерфейсе:

PosResponseInterface

Пример данных запроса:

{
  "cmd": "posCancelLast",
  "data": "{\"device\":{\"pid\":\"7d3129d813bd078b9c579001775eedd6\",\"serial\":\"K33484357636\"}}",
  "number": 1
}

Пример данных ответа:

{
  "cmd": "posCancelLast",
  "number": 1,
  "code": 0,
  "msg": "",
  "debug": "",
  "data": "{}"
}

Сверка итогов

PORT: 8569

Команда: posReconciliation

Структура data в запросе:

{
  device: {
    pid: Строка. Уникальный идентификатор POS-терминала.
    serial: Строка. Серийный номер POS-терминала.
  }
}

Данные ответа в data описаны в интерфейсе:

PosResponseInterface

Пример данных запроса:

{
  "cmd": "posReconciliation",
  "data": "{\"device\":{\"pid\":\"7d3129d813bd078b9c579001775eedd6\",\"serial\":\"K33484357636\"}}",
  "number": 1
}

Пример данных ответа:

{
  "cmd": "posReconciliation",
  "number": 1,
  "code": 0,
  "msg": "",
  "debug": "",
  "data": "{\"rc\":\"0\",\"pan\":\"\",\"rrn\":\"\",\"tid\":\"00849970\",\"message\":\"Успешно\",\"authCode\":\"\",\"cardType\":\"\",\"chequeNumber\":\"    \",\"datetime\":\"2019-07-02T14:51:00.000+0000\",\"datetimePos\":\"2019-07-02T14:51:00\"}"
}