Документация Accelera

API Online Engine

Модуль работает по принципам синхронного HTTP-адаптера и заключается в приеме входящих сообщений, обработки по правилам Online Engine и возврата ответа.

Состав полей входящего сообщения зависит только от логики правил Online Engine, по которой сообщение будет обработано.

Это делает HTTP адаптер универсальным решением по обработке сообщений. Любые системы могут отправлять сообщения в HTTP адаптер и получать обратно ответы после применения бизнес правил.

Авторизация происходит через указание api_key в заголовке сообщения. Генерация ключа доступна в кабинете администратора.

Входящее сообщение

Формат входящего сообщения - JSON, пример:

Headers:
{
	"Authorization": "api_key LLMQ47A4U6430ACT4XOLRKNNUE908LLU",
	"Content-Type": "application/json; charset=utf-8"
}
Body
{
  "TRANSACTION_DATE": "21-01-2021 11:36:30",
  "ACCOUNT_NUMBER": "123456789",
  "CUSTOMER_ID": "7uxGYceo9OfzIowDXxo6m7Fz6Ks5tPjfnQrb",
  "RECEPIENT_ID": "WYjykjwVFuZ1EFi8bW3isUiS2i1AFnGC4bAS",
  "AMOUNT": "5699.98",
	"CURRENCY_CODE": "978",
  "TRANSACTION_ID": "2PX8fvKuGSGk6u96m",
  "TRANSACTION_SOURCE": "MOBILE",
	"TRANSACTION_DESC": "Internal transfer"
}
  • JSON сообщение может быть любым.
  • Допускается плоская структура. Вложенные параметры в JSON-теле не поддерживаются.

Пример

Пример запроса:

## Event send
curl -X "POST" "http://system_address:system_port/message" \
     -H 'Content-Type: text/plain; charset=utf-8' \
     -d $'{
	  "TRANSACTION_DATE": "21-01-2021 11:36:30",
	  "ACCOUNT_NUMBER": "123456789",
	  "CUSTOMER_ID": "7uxGYceo9OfzIowDXxo6m7Fz6Ks5tPjfnQrb",
	  "RECEPIENT_ID": "WYjykjwVFuZ1EFi8bW3isUiS2i1AFnGC4bAS",
	  "AMOUNT": "5699.98",
		"CURRENCY_CODE": "978",
	  "TRANSACTION_ID": "2PX8fvKuGSGk6u96m",
	  "TRANSACTION_SOURCE": "MOBILE",
		"TRANSACTION_DESC": "Internal transfer"
  }
}'

Ответ

После обработки система отправит сообщение следующего типа:

{
	"message_id": "9a25bf2d-1f68-429f-a41a-247b2d14822b",
  "payload": {
	  "TRANSACTION_DATE": "21-01-2021 11:36:30",
	  "ACCOUNT_NUMBER": "123456789",
	  "CUSTOMER_ID": "7uxGYceo9OfzIowDXxo6m7Fz6Ks5tPjfnQrb",
	  "RECEPIENT_ID": "WYjykjwVFuZ1EFi8bW3isUiS2i1AFnGC4bAS",
	  "AMOUNT": "5699.98",
		"CURRENCY_CODE": "978",
	  "TRANSACTION_ID": "2PX8fvKuGSGk6u96m",
	  "TRANSACTION_SOURCE": "MOBILE",
		"TRANSACTION_DESC": "Internal transfer"
	},
	"processing_dttm": "2021-21-01 11:36:30.123",
	"response_code": "10"
}

message_id - уникальный идентификатор сообщения в системе.

payload - тело изначального сообщения.

processing_dttm - Дата обработки сообщения в формате YYYY-MM-DD hh:mm:ss.SSS.

response_code - Результат обработки.

Коды ответа

Варианты поля response_code, который интепретируются на стороне внешней системы, совершившей вызов Online Engine (ниже как возможный пример):

CodeValue
00Approve
10Suspend
20Reject

Коды ответов могут отличаться на уровне проекта и Заказчика

На этой странице