post https://api-sandbox.setel.com/v1/retail/external-orders
This API endpoint allows user to collect Mesra points even without using Setel's payment methods.
Alert
Customers who used a physical card to redeem or PETRONAS non-PDRM SmartPay card to pay are not eligible for loyalty points.
The
isEligibleForPoint
value will befalse
.
Successful response payload data
Parameter name | Data type | Description |
---|---|---|
id | string | The ID of the external checkout order. |
userId | string | The ID of the Setel user. |
referenceId | string | A unique string to reference the wallet transaction. This can be an order ID, a cart ID, or something similar generated by the merchant’s side. |
amount | string | The amount to be charged. |
currency | string | The three-letter ISO currency code of the payment. Currently, only supports MYR. |
taxInvoiceNumber | string | The tax invoice number. |
paymentMethod | object | The payment method for this session. |
paymentMethod.family | string | The family the payment method belongs to. |
paymentMethod.type | string | The payment method type. |
paymentMethod.brand | string | The payment method brand. |
isEligibleForPoint | boolean | The parameter that decides if the user will be granted points. |
products | array<object> | Stores information about the product. |
products.loyaltyCategoryCode | string | A 4 digit code of the loyal category the product belongs to. |
products.unitPrice | float | The price per item. |
products.quantity | integer | The number of items. |
referenceMeta | object | An object to store additional information about the transaction (e.g: order details, etc.). |
referenceMeta.items | object | Stores an array of items that is included in the transaction. |
referenceMeta.items.itemName | string | Name and description of the item. |
referenceMeta.items.variationName | string | Item variation. E.g: M , Red . |
referenceMeta.items.unitPrice | float | The price per item. |
referenceMeta.items.quantity | integer | The number of this product purchased. |
referenceMeta.items.totalPrice | float | Total price = quantity x unit price |
referenceMeta.items.totalDiscountedPrice | float | The total price after discount. |
referenceMeta.totalDiscount | float | The total amount of discount given. |
referenceMeta.subtotal | float | The total amount before applying any taxes or discount, fee, etc. |
referenceMeta.shippingFee | float | The shipping fee (applicable for e-commerce). |
referenceMeta.pumpNumber | string | The code for the pump being operated. |
referenceMeta.stationName | string | The name of the station where the operating pump is located. |
loyalty | object | Stores information about the loyalty card. |
loyalty.issuedBy | string | The entity that issued the loyalty points. |
loyalty.status | string | The status of granting the loyalty points (failed / succeeded ). |
loyalty.loyaltyCardNumber | string | The card number the points will be awarded to. |
loyalty.earnedPoints | integer | The amount of points earned. |
loyalty.loyaltyCardBalance | integer | The new card balance after the points are added. |
loyalty.error | string | Displays the reason if granting loyalty points fail. |