# 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

| Field | Type | Required | Notes |
| --- | --- | --- | --- |
| `caption` | [String](/types/#scalars) | no | Optional: when omitted the per-type default applies — the instrumentType + the NORMALIZED code; when supplied it must be non-blank. |
| `organizationId` | [ID](/types/#scalars) `ID!` | yes | The ISSUING org (in-tenant + ACTIVE) — its defaultCurrency stamps the instrument. |
| `instrumentType` | [StoredValueInstrumentType](/types/StoredValueInstrumentType/) `StoredValueInstrumentType!` | yes | No further notes. |
| `code` | [String](/types/#scalars) | no | The RAW code (1..64 pre-normalization) — REQUIRED on the staged arm (printed stock carries its number); omitted on the immediate arm = system-minted. |
| `reloadable` | [Boolean](/types/#scalars) | no | gift_card ONLY (default true there); REFUSED on certificate/credit (strict both ways). |
| `initialBalanceMinor` | [Int](/types/#scalars) | no | PRESENT = immediate-active birth loading this value (the issue entry rides the transaction); ABSENT = staged inactive stock. |
| `customer` | [OrderCustomerInput](/types/OrderCustomerInput/) | no | REQUIRED on store_credit; optional bearer-binding on gift instruments. |
| `reason` | [String](/types/#scalars) | no | REQUIRED on the immediate-active arm (money is born; ≤ 256). |

## Used by

- [createStoredValueInstrument](/reference/stored-value-instrument/createStoredValueInstrument/)
