Payment Link - POS Integration

For customers to receive SMS on their phone to confirm payment

Your POS/ERP software should be updated to add Tamara as a payment option for your customers.

🚧

This page is a high-level explanation only.

Consult the API References for further details on how to use our APIs properly.

The Tamara in-store payment journey will always start with a customer reaching out to the cashier with items to be scanned from their cart and choose Tamara as the payment method to use.

Step 1. Create In-store SMS Payment Link Checkout Session API

When a customer decides to pay through Tamara, your server would need to create an in-store checkout session by using the Create In-store Checkout Session API that sends customer an SMS with the payment link (which is essentially the checkout URL returned to you in the API response).

The response of this API returns a unique order_id and a checkout_id for completing the transaction. Please store them as they are required for the subsequent steps.

Endpoint

post      /checkout/in-store-session

Sample Request and Response

https://docs.tamara.co/reference/createinstorecheckoutsession

Step 2: SMS is sent to the customer and opened by them on their phone

Order is now in the new status at Tamara, and the payment link expires in 15 mins by default or can be manually voided using our Void Checkout Session API, explicitly if needed.

Step 3: Check the status of the order via Push or Pull methods

You may also check the order status for an order, in case your server did not receive any update/notification from our side, for any unforeseen reason, using either of the below methods:

You will need to call Tamara via our Get order details API to check the status of the order if it has moved from new to fully_captured.

👍

Check the order status via the API every 5-10 seconds until you get fully_captured

Endpoint

get      /merchants/orders/{order_id}

by replacing {order_Id} with the Tamara order_id you got from response of the 1. Create In-store SMS Payment Link Checkout Session API

Sample Request and Response

https://docs.tamara.co/reference/getorderdetails

In order to receive real-time updates from Tamara for every status change that happens on your orders, you are encouraged to register a notification webhook URL with Tamara either using our **Register Webhook URL API ** or via our **Partners Portal Webhooks management ** section.

Step 4. Customer wants to return items and requested for a refund

Based on your store policy, if the customer requests for return, you can fully/partially refund the order using the **Refund API **

Endpoint

post      /payments/simplified-refund/{order_id}

Replace the {order_id} with the unique Tamara order_id from the response of the creation of the in-store checkout session and the amount that needs to be refunded as well as a comment for future reference.

Sample Request and Response

https://docs.tamara.co/reference/simplifiedrefund

⚠️

❗️Refund transactions are processed in realtime on Tamara's end but,

Refunds might take several hours to several days to reflect on the customer's bank account depending on the customer's bank's processing time.

Once the fully_refunded or partially_refunded state is reached, you can consider the amount to have been refunded by Tamara to the customer's card right away, and the refunded amount will be deducted from your next settlement.

You may have multiple refund_id if you perform multiple partial refunds for the same order_id, please try to store them all in your DBs.

Optional Steps

Optional: Check customer ID verification/onboarding status

To further optimise the checkout time, you can the implement **Customer's ID Verification Status API ** , to determine whether or not the customer has completed the onboarding previously

Endpoint

post      /merchants/customer/id-verification-status

While sending phone_number and country_code as query parameters.

Sample Request and Response

https://docs.tamara.co/reference/customersidverificationstatus

Optional: Update order_reference_id

If you wish to update your order's order_reference_id that is stored at our side since the creation of checkout session you can do so by using our API for updating this information.

Endpoint

put      /orders/{order_id}/reference-id

by replacing {order_Id} with the Tamara order_id you got from response of the 1. Create Checkout Session API and sending the new order_reference_id in the request body.

Sample Request and Response

https://docs.tamara.co/reference/updateorderreferenceid