Versions in this module Expand all Collapse all v0 v0.1.0 Jun 25, 2026 Changes in this version + var ErrAlreadyDynamic = errors.New("qris: payload is already dynamic") + var ErrInvalidCRC = errors.New("qris: CRC validation failed") + var ErrInvalidLength = errors.New("qris: invalid length field") + var ErrInvalidTLVFormat = errors.New("qris: invalid TLV format") + var ErrMissingCRCTag = errors.New("qris: missing CRC tag") + var ErrPayloadTooShort = errors.New("qris: payload too short") + var ErrValidation = errors.New("qris: validation failed") + func ConvertStaticToDynamic(staticPayload string, amount string, opts ...ConvertOption) (string, error) + func Validate(p *Payload) error + type AdditionalData struct + BillNumber string + CustomerLabel string + LoyaltyNumber string + MobileNumber string + PurposeOfTransaction string + Raw map[string]string + ReferenceLabel string + StoreLabel string + TerminalLabel string + type Builder struct + func NewBuilder() *Builder + func (b *Builder) AddPSPAccount(tag, gui, mpan, mid, criteria string) *Builder + func (b *Builder) AddQRISAccount(mpan, mid, criteria string) *Builder + func (b *Builder) Build() (string, error) + func (b *Builder) Country(country string) *Builder + func (b *Builder) Currency(currency string) *Builder + func (b *Builder) Dynamic(amount string) *Builder + func (b *Builder) MCC(mcc string) *Builder + func (b *Builder) MerchantCity(city string) *Builder + func (b *Builder) MerchantName(name string) *Builder + func (b *Builder) PostalCode(code string) *Builder + func (b *Builder) SetAdditionalData(ad *AdditionalData) *Builder + func (b *Builder) Static() *Builder + type ConvertOption func(*convertConfig) + func WithReferenceLabel(ref string) ConvertOption + func WithStoreLabel(store string) ConvertOption + func WithTerminalLabel(terminal string) ConvertOption + type CountryCode string + const CountryID + const CountryJP + const CountryKR + const CountryMY + const CountrySG + const CountryTH + func (c CountryCode) Description() string + type CurrencyCode string + const CurrencyIDR + const CurrencyJPY + const CurrencyKRW + const CurrencyMYR + const CurrencySGD + const CurrencyTHB + const CurrencyUSD + func (c CurrencyCode) Description() string + type FieldError struct + Field string + Reason string + func (e *FieldError) Error() string + type GUI string + const GUIDana + const GUIGoPay + const GUILinkAja + const GUIOVO + const GUIQRISNational + const GUIShopeePay + func (g GUI) Description() string + type MerchantAccount struct + GloballyUniqueIdentifier string + MID string + MPAN string + MerchantCriteria string + Raw map[string]string + type MerchantCriteria string + const CriteriaUBE + const CriteriaUKE + const CriteriaUME + const CriteriaUMI + const CriteriaURE + func (c MerchantCriteria) Description() string + type Payload struct + AdditionalData *AdditionalData + CRC string + CountryCode string + MerchantAccountInfo map[string]MerchantAccount + MerchantCategoryCode string + MerchantCity string + MerchantName string + PayloadFormatIndicator string + PointOfInitiationMethod string + PostalCode string + TransactionAmount string + TransactionCurrency string + func Parse(payload string) (*Payload, error) + func (p *Payload) IsDynamic() bool + func (p *Payload) IsStatic() bool + func (p *Payload) MID() string + func (p *Payload) MPAN() string + func (p *Payload) PSPMerchantAccounts() []MerchantAccount + func (p *Payload) QRISMerchantAccount() (MerchantAccount, bool) + type ValidationError struct + Errors []*FieldError + func (e *ValidationError) Error() string + func (e *ValidationError) FieldErrors() []*FieldError + func (e *ValidationError) Is(target error) bool + func (e *ValidationError) Unwrap() []error