Understanding the Marketplace payment flow
Below is the step-by-step process of a payment on the Marketplace:
Stages | Actors | Actions |
---|---|---|
1 | Buyer | Validates his/her cart on the Marketplace website. |
2 | Marketplace | Creates an Order via the REST API (POST ORDER) containing items. |
3 | Marketplace | Fixes the Order via the REST API (GET ORDER). Finalizes the Order and prepares the payment page or the token of the embedded form. |
4 | Payment gateway | Creates the payment context of the Order. If the embedded form is enabled, returns a token (form-token) to the Marketplace, which must be inserted in the embedded form. Otherwise, returns a URL to the Marketplace for redirecting the buyer to the payment page. |
5 | Marketplace | If the embedded form is enabled, builds the form on the merchant website. Otherwise, it redirects the buyer to the URL provided by the payment gateway and retrieved by the GET ORDER. |
6 | Buyer | Fills in the bank details (+ 3D Secure authentication on the payment pages). |
7 | Payment gateway | Validates and records the transaction. |
8 | Payment gateway | Updates the status of the Items and the Order. |
9 | Payment gateway | Sends a notification to the Marketplace (and, potentially, to the embedded form) indicating that the Order status has changed. |
10 | Marketplace | Calls the payment gateway to find out the Order status and updates the system (GET ORDER). |
11 | Payment gateway | Redirects the buyer to the Marketplace (return URL provided by the Marketplace = merchant website). |
12 | Payment gateway | Performs a capture in the bank of the credit card (or another) transaction. Creates transfers in the Seller’s shop. Sends the order file of the transfer to the bank. |
13 | Payment gateway | Notifies the Marketplace about the modification of the Order and Items statuses. |
14 | Marketplace | Calls the payment gateway to find out the Order status and updates the system (GET ORDER). |
15 | Marketplace | Manually validates the order file of the transfer in the its bank's interface. |
16 | Bank | Executes the requested transfers. |
The status of resources varies throughout the entire payment process.
- Order resource life cycle
- Item resource life cycle
- Tokens resource life cycle
- Refunds resource life cycle