Sending Discounts

What support does Deliverect have for discounts?

You may offer multiple forms of discount or special offers on selected items in cooperation with the restaurants/food businesses.

When orders are sent to Deliverect, we support an overall order discount on the total value of the order.

How will this show in orders?

When you send an order to us, the discount total should be sent as a minus value.

For example, discountTotal: -100 is a discount of 1 euro (or any currency used by the merchant) on the total order amount.


You have included a discount but when dispatching the order receives an error

If "discountTotal": "Invalid value passed." is shown, check that you are sending in the format "discountTotal": -100,.

You have added a discount but it is not showing in Deliverect

  • Check that the toggle is enabled for the Deliverect test channel to pass discounts onto the POS You can find this in the channel link settings page.

Extra Information on Discounts

Additionally, you can further specify information regarding the discount applied, as an array within the order payload.

"discounts": [
        "type": "order_flat_off",
        "provider": "restaurant",
        "name": "FLATOFF",
        "channelDiscountCode": "",
        "referenceId": 1,
        "value": -800,
        "amount": 800

You can learn more about what is the meaning of each parameter in the table below:

ParameterMeaningData Tye
typeMapped channel discount type from the list of Discount Types in Deliverect.string
providerThe issuer of the discount i.e. the one who bears the discounted amount.Enum
nameThe name was given to the discount.string
channelDiscountCodeThe unique discount code used by the channelstring
referenceIdA unique number assigned to the discount and used to reference the discount on individual items on the order.integer
valueIt is the flat amount of money or percentage covered by the discount which is stored with precision 2, so $1.50 -> 150,# 25.1% -> 2510integer
amountActual amount discounted e.g. For 10% off on $50 bill, the value will be 1000 and amount will be 500.integer