AlmondTill/G3N API

NewStoredValueInstrumentInput

input type

Create-input for the DIRECT instrument lanes. Dual-birth by initialBalanceMinor: PRESENT = immediate active (the issue entry rides the create transaction; reason REQUIRED — money is born); ABSENT = STAGED inactive stock (code REQUIRED — the plastic carries its number). The tenant is derived SERVER-SIDE; currency = the named issuing org's defaultCurrency (in-tenant + ACTIVE + a default set — the Order-create law); the RAW code normalizes + grammar-gates server-side and its org-group marker mints IN the transaction (ANY holder — doomed included — refuses CONFLICT/INSTRUMENT_CODE_TAKEN: the BURN law); store_credit requires the customer block and never stages.

Fields

FieldTypeRequiredNotes
captionStringnoOptional: when omitted the per-type default applies — the instrumentType + the NORMALIZED code; when supplied it must be non-blank.
organizationIdID ID!yesThe ISSUING org (in-tenant + ACTIVE) — its defaultCurrency stamps the instrument.
instrumentTypeStoredValueInstrumentType StoredValueInstrumentType!yesNo further notes.
codeStringnoThe RAW code (1..64 pre-normalization) — REQUIRED on the staged arm (printed stock carries its number); omitted on the immediate arm = system-minted.
reloadableBooleannogift_card ONLY (default true there); REFUSED on certificate/credit (strict both ways).
initialBalanceMinorIntnoPRESENT = immediate-active birth loading this value (the issue entry rides the transaction); ABSENT = staged inactive stock.
customerOrderCustomerInputnoREQUIRED on store_credit; optional bearer-binding on gift instruments.
reasonStringnoREQUIRED on the immediate-active arm (money is born; ≤ 256).

Used by