# maib e-commerce API

Interaction with **maib ecomm** occurs through HTTPS (POST / GET / DELETE) requests to API endpoints with data in **JSON** format.&#x20;

The responses received on the website/app from **maib ecomm** will be HTTPS POST requests with data in **JSON** format.

All endpoints are structured according to the following pattern: *{base-url}/{api-version}/{point}*

Base URL: *<https://api.maibmerchants.md>*

Current API version: *v1*

### API Endpoints

<table><thead><tr><th width="461">Endpoint</th><th>Description</th></tr></thead><tbody><tr><td>https://api.maibmerchants.md/v1/generate-token</td><td><a href="access-token-generation">Access Token generation</a></td></tr><tr><td>https://api.maibmerchants.md/v1/pay</td><td><a href="direct-payment">Direct payment</a></td></tr><tr><td>https://api.maibmerchants.md/v1/hold</td><td><a href="two-step-payment/payment-authorization">Payment authorization </a>(two-step payments)</td></tr><tr><td>https://api.maibmerchants.md/v1/complete</td><td><a href="two-step-payment/payment-capture">Payment capture</a> (two-step payments)</td></tr><tr><td>https://api.maibmerchants.md/v1/refund</td><td><a href="payment-refund">Payment refund</a></td></tr><tr><td>https://api.maibmerchants.md/v1/pay-info</td><td><a href="payment-information">Payment information</a></td></tr><tr><td>https://api.maibmerchants.md/v1/savecard-recurring</td><td><a href="recurring-payments/register-card-in-the-maib-ecomm-system">Register card</a> (recurring payments)</td></tr><tr><td>https://api.maibmerchants.md/v1/execute-recurring</td><td><a href="recurring-payments/execute-recurring-payment">Execute recurring payment </a>(recurring payments)</td></tr><tr><td>https://api.maibmerchants.md/v1/savecard-oneclick</td><td><a href="one-click-payments/register-card-in-the-maib-ecomm-system">Register card</a> (one-click payments)</td></tr><tr><td>https://api.maibmerchants.md/v1/execute-oneclick</td><td><a href="one-click-payments/execute-one-click-payment">Execute one-click payment</a> (one-click payments)</td></tr><tr><td>https://api.maibmerchants.md/v1/delete-card</td><td><a href="deleting-the-card-from-maib-ecomm">Deleting the card</a> (recurring and one-click payments)</td></tr></tbody></table>

### Interaction via API

E.g for Direct Payment:

1. Customer chooses product or service in Merchant online shop (website/app) and adds it to his cart.
2. The Customer presses the «**Place order**» button, and the Merchant sends an HTTPS POST request (with transaction data) to the API endpoint.
3. **maib ecomm** returns an *intermediate response* containing the link (*payUrl*).
4. The Customer is redirected to the *payUrl* link and access the **maib ecomm checkout** page.
5. The Customer enters the card data (or pay via Apple Pay/Google Pay).
6. The **maib ecomm** processes the transaction.
7. The Customer is redirected back to the Merchant online shop (website/app), on *okUrl* or *failUrl* (depending on the status of the transaction).
8. The Merchant online shop receives (on *callbackUrl* via HTTPS POST request) a final response containing the status and basic transaction data.

### Postman Collection

{% file src="<https://2209855812-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPDIM0OxcpQbz9TdR5jZJ%2Fuploads%2Fp9RTaA6EqBKFV6WLOGjn%2FAPI_maib_e-commerce.postman_collection.zip?alt=media&token=def47a8d-39ad-4b72-bc6f-b76bf27280b3>" %}
