Skip to main content
A META voucher is a collective code. The customer enters a single number, and in the background the shop redeems several stored vouchers at once. This is useful when a promotion consists of several components, for example ten percent off together with free shipping, but the customer should only have to remember one code. The mapping is not stored in the voucher generator but in a file that you maintain yourself.
This function does not need to be activated.

How redemption works

Only one META voucher can be redeemed at a time. As long as a voucher from a META code is in the basket, a second META code is not recognized and is treated like an unknown number.
The sub-vouchers occupy the same slots as multiple redeemed vouchers. This results in the upper limit of nine sub-vouchers per META code.
Guide: Redeeming multiple vouchers

The file meta_vouchers.json

Create the file manually in the shop’s configuration directory, i.e. in the directory that applies to all subshops. It contains one entry per META code.
The META code is looked up case-insensitively. A customer who enters sommer2026 therefore matches the entry SOMMER2026.
More than nine entries in vouchers have no effect. The shop processes the first nine and silently ignores the rest.
showAsBlock must be a real JSON boolean, i.e. true or false without quotation marks. The notation "true" is ignored, and the default from the configuration applies.
If the file is missing, the entered code is simply treated as unknown. If it exists but is malformed, the shop logs an error but behaves the same way externally. A META code that is not recognized is therefore first of all a reason to check the file.

The settings in the shop configuration

MetaVoucherErrorMode

reject-all is the default, and any unrecognized value also leads to it. It is the more honest option: the customer either gets the whole package or nothing at all, and is not puzzled by a partial discount.
With accept-valid, the shop only suppresses the error message if at least one sub-voucher has already been redeemed successfully. If the very first one fails, the customer sees its error message, even if the following sub-vouchers take effect.

MetaVoucherShowAsBlock

With no, the shop keeps count during deletion. Once the last sub-voucher has been removed, it also resets the META data, and the customer can enter a different META code.
The setting in the file overrides the setting in the configuration. This allows a single promotion to be handled differently without changing the default for all others.
Reference: Voucher-Txt section

Extending the templates (optional)

Four tags make it visible in the template that a voucher originates from a META code.
The notice about block handling is not a mere extra. Without it, the customer clicks delete to get rid of a single voucher and loses the entire promotion. If you leave MetaVoucherShowAsBlock set to yes, say so.
The tags are also available inside the loop over the additional vouchers. With multiple redeemed vouchers, you therefore need the block in both places: outside the loop for the first voucher and inside it for the others.
Reference: VOUCHER-MetaCode · VOUCHER-MetaSubCount · VOUCHER-IsFromMeta · VOUCHER-MetaShowAsBlock · VOUCHER-MultiVoucher
  • Guide: Offering vouchers: Overview
  • Guide: Providing voucher entry
  • Guide: Redeeming multiple vouchers