The following guide explains how to accept payments using Satispay Meal Vouchers.
In this page, you can find the specific request parameters that you can use for Meal Voucher payments.
To read the generic API specification please refer to this page.
Payment update
While accepting a payment, if your shop has Meal Vouchers enabled, Meal Vouchers will be used based on the user's Meal Voucher availability.
These Meal Vouchers will be applied if the user sets the Meal Vouchers wallet as their primary wallet.
It is not possible to have a combination of Meal Vouchers and Fringe Benefits in the same payment, since these two payment methods are mutually exclusive; however, it is possible to include Satispay Meal Vouchers and e-money in the same payment.
Furthermore, while accepting the payment, it is possible to define the maximum number and the maximum amount of Meal Vouchers that can be used for that specific payment.
If you do not set these parameters, and if your shop has Meal Vouchers enabled, Meal Vouchers will be automatically used based on the consumer's Meal Vouchers availability, with a default limit of 8
Meal Vouchers per payment.
Partial payments
When integrating Satispay Meal Vouchers in cash registers / tills is required to implement what we call partial payment.
This will allow to accept payments from consumers that have Meal Vouchers only in their Satispay app.
Check-in integration
When you're integrating the check-in flow, be sure to always show all the available
PENDING
payments.
You can use this API to perform an update action on a specific payment.
The actions that you can perform are:
ACCEPT
ACCEPT
You can use this action to accept payments sent via check-in in PENDING
status.
CANCEL
CANCEL
You can use this action to cancel payments sent via check-in in PENDING
status.
CANCEL_OR_REFUND
⚠️
CANCEL_OR_REFUND
⚠️We strongly suggest you to use this action only if you are not able to retrieve the actual payment status.
This could be due to either temporary unavailability of Satispay or network issues.
By executing the CANCEL_OR_REFUND
action, we prevent situations where a user confirms a payment, the payment is accepted, but the product is not issued to the user.
What this action will do is:
- refund the payment if it is in an
ACCEPTED
status. - cancel the payment if it is in a
PENDING
status.
The response will also change accordingly, please check our response examples.
RETRY
If the API returns an error, such as a
500
, it does not necessarily mean that the payment has not already been accepted.If you encounter this error, we suggest retrying the request within a few seconds.
If you still do not receive a response, execute an Update Payment using theCANCEL_OR_REFUND
action.
CANCEL vs REFUND payments
A payment can only transition to
CANCELED
status if it has not yet reached theACCEPTED
status.
Once a payment reachesACCEPTED
, it can no longer be canceled.If an
ACCEPTED
payment needs to be refunded you need to create a payment with aREFUND
flow.