The document is intended for service-providers.
What is Payment Gateway?
Payment Gateway is an online service that allows businesses and individuals to accept payments from customers through their websites or mobile applications.
Purpose
The following document contains information about communication methods, available operations, exchange formats, authentication, pre-defined parameters & status codes, etc.
Protocol Description
The document describes a system, in which a user will interact with a service-provider via an interface. More specifically, the user may issue a web request to the service-provider through the BOG server, to which the service-provider will be obliged to respond. The received response will be processed by BOG and be displayed to the user.
The user may execute an arbitrary amount of operations. Additionally, some payment channels will restrict this number to two operations (information about debt and/or payment), although this can be bypassed at the expense of the time it takes to integrate the service.
The protocol will work in conjunction with a web-app, which will give service-providers the ability to define multiple operations per a single payment flow via an interface. All service providers will have the ability to customize both the number and the characteristics of each operation based on their service.
Requirements for the Service-Provider
The service-provider is required to set up a web-server, which can either be publicly accessible or only available through a VPN channel. In case the web-server is publicly accessible, it is required that it supports HTTPS.
The service-provider is allowed to use any API endpoint of their choice. E.g. http://serviceprovider:8088/api/mock
The following HTTP methods can be defined on custom operations: GET, POST, PUT, PATCH & DELETE; although BOG will not use the HTTP request body to transfer any information for custom operations, regardless of the HTTP method chosen by the service-provider.