Documentation
¶
Overview ¶
Package packager assembles named ISO-8583 profiles — immutable iso8583 Schemas wired from the orthogonal fieldcodec/lengthcodec catalog. A profile is just a *Schema (there is no special packager type), so card-scheme dialects are deltas (Derive/Override) over a base, and the same composition is also expressible as declarative config via the generic loader.
Index ¶
- func CoralPay() *iso8583.Schema
- func ISO87A() *iso8583.Schema
- func ISO87B() *iso8583.Schema
- func ISO87C() *iso8583.Schema
- func ISO93A() *iso8583.Schema
- func ISO93B() *iso8583.Schema
- func Load(data []byte, reg *fieldcodec.Registry) (*iso8583.Schema, error)
- func LoadEmbedded(name string) (*iso8583.Schema, error)
- func Mastercard() *iso8583.Schema
- func Postilion() *iso8583.Schema
- func Profile(id string) (*iso8583.Schema, bool)
- func Profiles() map[string]func() *iso8583.Schema
- func VisaBaseI() *iso8583.Schema
- func Zone() *iso8583.Schema
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CoralPay ¶ added in v0.3.0
CoralPay is an ISO 8583:1987 profile for the CoralPay acquirer link, generated field-for-field from the certified jPOS GenericPackager definition (fields2.xml) used by the legacy switch-gateway. It reuses the postField/p* shorthands from postilion.go.
func LoadEmbedded ¶
LoadEmbedded builds a schema from an embedded schemadef/<name> document using the default registry.
func Mastercard ¶
Mastercard is a representative Mastercard dialect over ISO 8583:1993 variant A, redefining the additional-data private fields DE 48 and DE 63. It demonstrates a scheme overlay via Derive/Override.
func Postilion ¶ added in v0.2.0
Postilion is an ISO 8583:1987 profile for Postilion-style switch links (the layout used by many African/agency acquirers, e.g. Interswitch). It pins an ASCII MTI, a BINARY primary+secondary bitmap, ASCII fixed and LL/LLL variable fields, and a DE 127 reserved-private subfield group carried under a 6-digit length prefix over a BINARY sub-bitmap. It validated against a live host (sign-on 0810 + cashout 0210). It is a clean-room composition from the public ISO 8583:1987 field semantics, not a port of any vendor packager.
On the wire such links use a 2-byte big-endian length prefix and require a network sign-on (0800) before financial messages — both transport concerns, handled by the caller (see the link package), not the schema.
func Profiles ¶
Profiles maps every built-in profile id to its constructor, for discovery and name-based lookup (e.g. the generic loader, an admin API).
Types ¶
This section is empty.