Place Order V3
To place order with items and its quantity.
Place Order API has two flow:
Manual Flow : The available items are passed and order can be placed.
Prescription Digitization Flow : In this flow only prescription will be provided which will be digitized at our end then, order will be placed.
Order To a Particular Pharmacy (Pickup Order Only): For Pickup orders the order can be placed to a particular chemist directly which are nearby to the user location. Refer to API
checkout_with_pharmacyand use parameterassign_to_chemist_id.
In API request, You need to pass either provide patient_id or mobile & patient_name.
To Place an order you can try with below medicines:
LTK-25 ( BEXJIx1DBa0TyZQjJB+qDw== )
LTK-50 ( gv0GokYn9w4zFL51eouS2g== )
LTK-AM ( vVgL6Ggy5tYhqQr1qXOAzA== )
Rancil 10 ( kb/sYNrCj/A7lRqf7VCQOA== )
Vicks Vapourub 25 ml ( P50Ved5KnpFmBp9XGAIVUg== )
Things to know
Price Increase After Order Place: (very less probability to occur)
Scenario : While taking the payment if time difference is too large between checkout and place-order due to payment delay(from patient/user) then the
location_tokenmight change. This might resulting in price-increase.Solution-1: Every time Before taking the payment from user refresh the location-token, then call checkout-v3 to get updated price. After that only place-order to avoid price increase.
Solution-2: Compare the order-total from Place-Order API Response with the payment amount taken from patient(user). If order-total is increased then cancel the order and place a new another.
Solution-3: Place the order in
pendingstate and then take payment on order-total from Place-Order Response. And then call Payment-Webhook API to notify us.
Place Order
POST {{apiUrl}}fulfillment/orders/place_order_v3
Request Body
apikey*
String
Authentication token
location_token*
String
Get token from Check Serviceability V3 API
patient_id*
String
Id to uniquely identify the patient for whom the order is placed
if mobile and patient name is provided, then patient_id is optional.
items*
String
Stringified Array of items with quantity (in strip) and medicine_id.
i.e. [{"medicine_id":"Eli4pMFfzobV63G67jtjZw==","quantity": 2}]
Provide only available items which can be know from checkout V3.
Pass "discount_percentage" along with "medicine_id" and quantity to apply custom discount on the item.
delivery_type*
'pickup' | 'delivery'
delivery (Default): Order will be delivered. pickup : Order will be of pick-up type.
address*
String
Address of Patient for delivery. required if delivery_type is delivery
address_line2
String
Address Line 2 for long address
city*
String
City of Patient for delivery
state*
String
State of Patient for delivery
zipcode*
String
Zip code of Patient for delivery
latitude
Number
Latitude of the patient to search in nearby pharmacies.
longitude
Number
Longitude of the patient to search in the nearby pharmacies.
mobile
String
Patient's mobile no is optional if patient_id is provided, required otherwise.
patient_name
String
Patient's name is optional if patient_id is provided, required otherwise.
prescription_urls
String
Stringified Array of prescription URLs.
items param is optional, if prescription_urls param is passed.
prescription_urls is mandatory for RX medicine.(Check is_rx_required from checkout)
For eg.
["https://www.klippa.com/wp-content/uploads/2020/12/medical-prescription-ocr.png","https://as2.ftcdn.net/v2/jpg/00/56/61/71/500_F_56617167_ZGbrr3mHPUmLoksQmpuY7SPA8ihTI5Dh.jpg"]
full_address
String
Required If lat-long is not provided. This address is used to get the lat-long to find the nearest pharmacy store.
Only zipcode can also by passed in this param
like { "full_address": "560008" }
requestId
String
Partner order id
requested_client_source
String
Partner Order Source
assign_to_chemist_id
String
Chemist ID from checkout_with_pharmacy API to assign the order to a particular chemist
Last updated