In brief, the payment flow is comprised of the following steps (please also see the flow-charts on the following pages):
- The customer checks out.
- The merchant sends an Initialize Payment request to Paynova’s MPI containing information regarding the order and the payment. Please see the “MPI Messaging” document for further information on how the messaging platform works.
- Paynova responds to the merchant with either:
- A success response message which includes a URL to which the merchant should either display in an inline-frame (I-Frame) or redirect the customer’s browser to, depending on the chosen Aero layout.
- An error response message indicating why the Initialize Payment request failed. In this case, the payment cannot continue any further.
- The merchant either redirects the customer’s browser or displays the URL received in 3(a) above in an I-Frame.
- The customer chooses the payment method they wish to pay with and enters their payment information. In some cases, this may also require that Paynova displays the customer’s bank to the customer. Depending on the chosen Aero layout, this may involve redirecting the full page or displaying the bank in a pop-up window.
- Paynova processes the payment.
- Paynova sends a synchronous Payment Status Notification (callback) via HTTPS POST to the merchant’s notification URL (as specified in the Initialize Payment request) indicating the status of the payment. Parameters such as the order ID and order Data (a free-text field) will be echoed back to the merchant as received in the Initialize Payment request for convenience of identifying the transaction to which the notification belongs.
- The merchant sends its status notification callback response message back to Paynova.
- Depending on the status of the payment, Paynova redirects the customer to either:
- Upon success or pending status, Paynova will redirect to the Success/OK URL as received in the Initialize Payment request.
- Upon failed status, Paynova will redirect to the Fail URL as received in the Initialize Payment request.
- (Conditional) If a "pending URL" was submitted in the Initialize Payment request and the payment is in a pending state, Paynova will redirect to the Pending URL.
- (Conditional) Depending on the type of the payment, Paynova may send additional status notifications to the merchant’s notification URL; therefore, your integration should be able to support receiving of additional status notifications.
Flow Diagram #1