OMS Custom Payment Integrations
This section helps System Integrators (SI) set up their payment integrations within the Order Management System (OMS) and Magento Commerce (MC) ecosystem.
Magento OMS Custom Payment Integration Guide
Before starting development, it is recommended to engage with Magento Technical Support team, to:
- Agree on a suitable custom payment endpoint name.
- Receive an OAuth 2.0 client id and client secret that could be used to authorize the HTTP requests being sent to the Magento Integration Bus (MIB).
During deployment
During application deployment process, or periodically by some scheduled process:
- Registration of the MIB custom payment end-point
At runtime
A custom payment integration is expected to:
Deal with incoming payment commands in the following way:
- Accept payment commands forwarded by MIB to the URL specified in the MIB registration message.
- Adapt and transform the payment command received to a format suitable for the payment gateway systems.
- Interact with the payment provider API to perform the action requested in the payment command.
- In the event of an error in the communication with the payment gateway (e.g., due to a network outage) the custom payment integration is expected to keep trying until the message is successfully delivered to the gateway.
Generate payment events in the following way:
- Either poll the payment provider for a payment action outcome or expose a web hook where the payment gateway can push notifications.
- Adapt and transform the payment action outcome response or the web hook notification received from the payment gateway to a payment event.
- Send the payment event to the MIB OMS endpoint delegate URL.
Before starting development
Before starting development, it is recommended to engage with the Magento Technical Support team, or your assigned Technical Account Manager (TAM), to:
- Agree on a suitable custom payment endpoint name.
- Receive an OAuth 2.0 client ID and client secret that could be used to authorize the HTTP requests being sent to MIB.
Use the received values to configure the following fields in the /config/parameters.yml
file:
service_bus.endpoint_name
mom_client
service_bus.secret
If you want to configure these values, contact your Magento Technical Support team, or your assigned TAM.
During deployment
During application deployment process, or periodically by some scheduled process:
- Registration of the MIB custom payment end-point.
The following command easily registers the custom payment endpoint in your MC:
bin/magento oms:service-bus:register
In case you need to manually register the custom payment endpoint use the magento.service_bus.remote.register
message.