Integrate our products into your software. Let's make payment happen together!
Look at all the possibilitiesThe goal of a voucher transaction is to be able to pay with a specific voucher which is delivered by a voucher brand (for example sodexo, monize, ..)
Todays Electronic Mealvouchers contain multiple purses. These purses, all present on one card, are listed in the table below. To access a specific purse or product code, the element ‘AcquirerDiscretionaryData’ must contain the corresponding string in the column Value.
The cashier has to send the message with the correct value for the acquirer discretionary data to the terminal, so the terminal knows which cardbrand has to be used on the customer’s card. The acquirer then knows for which brand on that card, the amount has to be reduced. It means the cashier has to implement for each cardbrand one button, behind which the correct value is set.
Product Code | Product Description | Value |
---|---|---|
01 | Lunch Pass - Meal Vouchers - lunch-Voucher | 200001# |
02 | Eco Pass - Eco Cheques - eco-Voucher | 200002# |
03 | Cadeau Pass - Gift Vouchers - cadeau-Voucher | 200003# |
04 | Sport Pass - Culture Vouchers - sport culture-Voucher | 200004# |
05 | Book Pass - Book Vouchers - book-Voucher | 200005# |
06 | Transport Pass - transport-Voucher | 200006# |
07 | Consumption Vouchers | 200007# |
201 | Meal Vouchers LU | 200201# |
203 | Gift Vouchers LU | 200203# |
Accepting vouchers means the POS must restrict the products in the Tender to what is allowed for the applicable voucher. That means the normal payments my only be done with regular debit and credit cards but not with vouchers.
To enable the restriction to regular debit and credit cards the POS must first know which brands are active on the terminal. It’s possible to receive the active brands via Get Card Circuits documented here.
To restrict the payment to debit and credit cards or in case the payment must be restricted to voucher cards the element ‘cardCircuits’ must be used. More information on how to do that can be found on this page.
The issuers of the Electronic Mealvouchers in Belgium are:
The issuers of Electronic Mealvouchers in Luxembourg are:
The respective cardCircuits for these brands are:
Card Brand | Card Circuit |
---|---|
Sodexo | SODX |
Monizze | EDRD |
Edenred | PAYF |
The following code snippet demonstrates a meal voucher transaction where partial approval is allowed.
createTerminal(ExternalTerminal.TerminalType.ATTENDED_OPI_NL); PaymentApi paymentService = new PaymentService(); PaymentDelegate paymentDelegate = new PaymentDelegate() { @Override public void onPaymentSuccess(PaymentResult result) { // The payment is completed successful! // The paymentResult contains all information about the transaction } @Override public void onError(Error error) { // The payment failed // The Error object contains information about what went wrong } }; CardCircuitCollectionRequest cardCircuitCollectionRequest = CardCircuitCollectionRequest.builder().cardCircuits(List.of("SODX", "EDRD", "PAYF")).build(); Payment payment = Payment .builder() .type(Payment.Type.SALE) .amount(new Money(amount, Currency.getInstance("EUR"))) .cardCircuitCollectionRequest(cardCircuitCollectionRequest) .supportOfPartialApproval(true) .build(); paymentService.payment(terminal, payment, delegate);