Generic Payment End-to-End Flow in OroCommerce¶
Any third party payment system integration involves the following steps to enable it for the OroCommerce Front Store customers:
A B2B seller signs up for payment provider services (e.g. PayPal Business Account).
A B2B seller administrator or integrator obtains integration information using the service information resulting from the first step (e.g. partner ID, partner login credentials, etc.). Integration information may include credentials, security tokens, etc. These details may be generated by the payment provider for a B2B seller, or a B2B seller may generate some of these items using the payment provider services.
Sometimes for secure connection, a B2B seller administrator or integrator supplies the payment provider with identification and authentication artefacts, like secure public key, secure certificate or authentication token. Private tunnel and proxy may be used for advanced security of the payment related traffic.
Every sandbox, testing, and production environment should use a unique, dedicated set of integration details. Usually, payment service providers allow test mode access with debug level information. It is crucially important to use the test and debug set of access details only for the test and sandbox environments.
Never use test integration access in production mode or on the production servers as this might expose your customers to the sever security risks.
Once the integration and connection details are available, the B2B seller administrator or integrator may setup an integration of the payment provider services into OroCommerce.
Next, the administrator may limit the availability of the particular payment methods (enabled by the payment provider services integration) using the payment rule configuration.
Once the payment configuration is complete, the payment methods may be used by customer users during the checkout. Payment may be captured immediately or authorized for delayed capture.
A sales person can view payment history and capture the delayed payment (e.g. when the order is complete and is ready for shipping).
These steps are detailed below with the detailed information about every supported payment service configuration and use.