Validate Voucher
Fetch voucher data for inspection and display. This function returns voucher details without performing validation checks - validation happens during redemption. This approach provides better UX by allowing applications to display voucher details without requiring redemption context.
import { validateVoucher } from '@verxioprotocol/core' import { publicKey } from '@metaplex-foundation/umi' const validation = await validateVoucher(context, { voucherAddress: publicKey('VOUCHER_ADDRESS'), })
Return Value
{ voucher: { type: string, value: number, currentUses: number, maxUses: number, expiryDate: number, conditions: Array<{ type: string, value: number, operator: string }>, description: string, merchantId: string, status: string, redemptionHistory: Array<{ timestamp: number, value: number, transactionId: string, items: string[], totalAmount: number, discountApplied: number }> }, errors: string[] // Empty array if voucher found successfully }
Important Note
Merchant validation and business logic validation (expiry, usage limits, etc.) are performed during theredeemVoucher
operation, not during validation. This separation allows for better user experience where voucher details can be displayed without requiring redemption context.