Auth
- POSTAnonymous user
- POSTLogin with phone
- POSTLogin with email
- POSTLogin with whatsapp
- POSTLogin with password
- POSTVerify OTP
- POSTRegister with phone
- POSTRegister with email
- POSTRegister with whatsapp
- POSTRegister with password
- GETRetrieve a user
- PUTUpdate a user
- GETRetrieve a profile image
- PUTUpdate profile image
- POSTAdd profile image
- DELDelete profile image
- PUTDeactivate account
- POSTRefresh access token
- POSTChange password
- POSTForgot password
- POSTReset password
- GETRetrieve user notification preferences
- PUTUpdate user notification preferences
- POSTCreate user notification preferences
- POSTGenerate OTP
- POSTLogout user
- POSTCheck email/phone verification status
Catalog
Carts
- POSTCreate cart
- GETRetrieve cart detail
- DELDelete cart
- GETRetrieve cart using user id
- DELDelete cart using user id
- POSTAdd/delete cart item
- POSTUpdate cart address
- POSTApply coupon
- DELRemove coupon
- POSTRedeem loyalty points
- DELRemove loyalty points
- POSTUse credit balance
- DELRemove credit balance
- POSTRedeem gift card
- DELRemove gift card
- GETRetrieve wishlist
- POSTAdd product to wishlist
- DELDelete product from wishlist
Coupons & promotions
Customers
Orders
Shipping
Analytics
Campaigns
Retry payment
To generate new payment request if first payment request is failed or expired. Retry payment request can be made after 15 mins of last request or immediately after last payment request is marked as failed.
curl --request POST \
--url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/orders/{order_number}/retry-payment \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"payment_gateway_params": {
"payment_gateway": "<any>",
"furl": "<string>",
"surl": "<string>"
}
}'
{
"message": "<string>",
"success": true,
"content": {
"payment_required": true,
"payment_info": {
"payment_gateway": "<any>",
"key": "<string>",
"txnid": "<string>",
"amount": 123,
"productinfo": "<string>",
"firstname": "<string>",
"lastname": "<string>",
"email": "<string>",
"phone": "<string>",
"si": "<any>",
"si_details": {
"billingAmount": 123,
"billingCurrency": "<any>",
"billingCycle": "<any>",
"billingInterval": 123,
"paymentStartDate": "2023-12-25",
"paymentEndDate": "2023-12-25"
},
"furl": "<string>",
"surl": "<string>",
"hash": "<string>"
}
}
}
Authorizations
Access token
Path Parameters
order number
Body
Response
To be used in case we want to take consent for subscription payment. To create consent for subscription, value of this parameter must be 1.
Send this json object for creating subscription consent.
Maximum amount that can be charged in recurring payment.
Subscription frequency.
Billing Interval is closely coupled with the billingCycle field and denotes at what frequency, the subscription plan needs to be executed. For monthly subscriptions, parameter values need to be sent in the request are: billingCycle = MONTHLY billingInterval = 1 Similarly, by keeping the following values, customer will be charged once in every 3 days: billingCycle = DAILY billingInterval = 3
subscription start date
subscription end date
return url in case of payment failure.
return url in case of payment success.
curl --request POST \
--url https://staging.api.commercengine.io/api/v1/{store_id}/storefront/orders/{order_number}/retry-payment \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"payment_gateway_params": {
"payment_gateway": "<any>",
"furl": "<string>",
"surl": "<string>"
}
}'
{
"message": "<string>",
"success": true,
"content": {
"payment_required": true,
"payment_info": {
"payment_gateway": "<any>",
"key": "<string>",
"txnid": "<string>",
"amount": 123,
"productinfo": "<string>",
"firstname": "<string>",
"lastname": "<string>",
"email": "<string>",
"phone": "<string>",
"si": "<any>",
"si_details": {
"billingAmount": 123,
"billingCurrency": "<any>",
"billingCycle": "<any>",
"billingInterval": 123,
"paymentStartDate": "2023-12-25",
"paymentEndDate": "2023-12-25"
},
"furl": "<string>",
"surl": "<string>",
"hash": "<string>"
}
}
}