Skip to main content

Retail

Endpoint:

https://api.cronosengine.com/api/retail

Method : POST

Streamline Retail Payments at Alfamart, Indomaret, and More with our API. Effortlessly integrate our API with popular retail chains to simplify payment processes. Enable seamless payment acceptance at Alfamart, Indomaret, and other supported retailers, providing convenient options for your customers. Expand your reach and tap into a vast network of retail locations, delivering a seamless payment experience across multiple channels. Enhance customer satisfaction and streamline transactions with our API's retail integration capabilities.

Request Parameters

ParameterMandatoryDescription
referenceYesA unique reference number or identifier for the transaction. all transaction references should be unique.
phoneNumberYesTransaction bills will be sent to this telephone number.
channelYesA type of retail channel to be used for the transaction. you can find the list of retail channels here.
amountYesAmount your user should paid to complete the transaction.
expiryMinutesNoIf you want the transaction to last for 1 hour, you would set the value of the expiryMinutes parameter to 60.
viewNameYesThe name or identifier of the receiver for the transaction.
additionalInfo.callbackYesThe callback URL where notifications or updates related to the transaction will be sent.

Headers

KeyValue
On-KeyProject Key
On-TokenProject Token
On-SignatureGenerated using : hash_hmac('sha512', key + json_encode(body), token)
Acceptapplication/json

Channels

ChannelName
alfamartAlfamart
indomaretIndomaret

Response Parameters

ParameterDescription
responseCodeThe HTTP response code indicating the status of the request. you can see the detailed information in the Error Codes Section.
responseMessageA descriptive message indicating the status of the request.
responseDataAn object containing the data related to the transaction response.
responseData.idCronos unique identifier for the transaction.
responseData.statusThe current status of the transaction. success, pending, expired, failed
responseData.feePayerThe party responsible for paying the transaction fee. customer, merchant
responseData.amountThe original amount associated with the transaction.
responseData.feeThe fee charged for the transaction.
responseData.totalAmountThe total amount (original amount + fee) for the transaction.
responseData.expiredDateThe date and time when the transaction will expire.
responseData.additionalInfo.callbackThe callback URL where notifications or updates related to the transaction will be sent.
responseData.retail.viewNameThe name or identifier associated.
responseData.retail.channelThe channel to be used for the transaction.
responseData.retail.paymentCodeThe identifier associated with the retail. This number will be informed by customer to the retail cashier.

Example

Request

curl --location 'https://api.cronosengine.com/api/retail' \
--header 'On-Key;' \
--header 'On-Token;' \
--header 'On-Signature;' \
--data '{
"reference": "123456",
"phoneNumber":"082195395779",
"channel":"alfamart",
"amount": 100000,
"expiryMinutes": 30,
"viewName": "Mr. Gentur",
"additionalInfo": {
"callback": "http://your-site-callback.com/notify"
}
}'

Response

{
"responseCode": 200,
"responseMessage": "success",
"responseData": {
"id": "574ef7b6-02b3-459f-834e-75f20a072f48",
"merchantRef": "123456",
"status": "pending",
"feePayer": "customer",
"amount": 100000,
"fee": 3000,
"totalAmount": 103000,
"expiredDate": "2023-07-13T11:05:59+07:00",
"additionalInfo": {
"callback": "http://your-site-callback.com/notify"
},
"retail": {
"viewName": "Mr. Gentur",
"channel": "alfamart",
"paymentCode": null
}
}
}