> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bastion.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Mint Instructions

> Create a mint instruction for a given identity



## OpenAPI

````yaml /v2/openapi.yaml post /v2/issuance/mint-instructions
openapi: 3.1.0
info:
  title: Bastion APIs
  version: '2.0'
servers:
  - url: https://api.prod.bastion.com
    description: Production environment
  - url: https://api.sandbox.bastion.io
    description: Sandbox environment
security:
  - auth: []
tags:
  - name: Bastion APIs
paths:
  /v2/issuance/mint-instructions:
    post:
      tags:
        - Issuance
      summary: Create Mint Instructions
      description: Create a mint instruction for a given identity
      operationId: bastion.api.v2.API.CreateMintInstructions
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/bastion.api.v2.issuance.CreateMintInstructionsRequest
        required: true
      responses:
        '201':
          description: Success
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/bastion.api.v2.issuance.CreateMintInstructionsResponse
        '400':
          description: Bad request
        '422':
          description: >-
            Unprocessable Entity - identity or account state does not permit
            this operation
components:
  schemas:
    bastion.api.v2.issuance.CreateMintInstructionsRequest:
      type: object
      properties:
        identity_id:
          type: string
          title: identity_id
          description: >-
            Unique identifier of the identity that this mint instruction belongs
            to
        request_id:
          type: string
          title: request_id
          description: Request identifier in a UUID format. Serves as an idempotency key.
        stablecoin_symbol:
          type: string
          title: stablecoin_symbol
          description: Symbol of the stablecoin associated with this mint instruction
        mint_destination_address_id:
          type: string
          title: mint_destination_address_id
          description: >-
            Unique identifier of the mint destination address associated with
            this mint instruction
        payment_rail:
          $ref: >-
            #/components/schemas/bastion.api.v2.issuance.ISSUANCE_SUPPORTED_FIAT_PAYMENT_METHOD
          title: payment_rail
          description: >-
            Payment rail associated with this mint instruction, currently only
            'WIRE' is supported
        fiat_currency_symbol:
          $ref: >-
            #/components/schemas/bastion.api.v2.issuance.ISSUANCE_SUPPORTED_FIAT_CURRENCY
          title: fiat_currency_symbol
          description: >-
            Fiat currency symbol associated with this mint instruction,
            currently only 'USD' is supported
        label:
          type: string
          title: label
          description: Label for the mint instruction
      title: CreateMintInstructionsRequest
      required:
        - identity_id
        - request_id
        - stablecoin_symbol
        - mint_destination_address_id
        - payment_rail
        - fiat_currency_symbol
      additionalProperties: false
    bastion.api.v2.issuance.CreateMintInstructionsResponse:
      type: object
      properties:
        mint_instructions:
          $ref: '#/components/schemas/bastion.api.v2.issuance.MintInstructions'
          title: mint_instructions
      title: CreateMintInstructionsResponse
      additionalProperties: false
    bastion.api.v2.issuance.ISSUANCE_SUPPORTED_FIAT_PAYMENT_METHOD:
      type: string
      title: ISSUANCE_SUPPORTED_FIAT_PAYMENT_METHOD
      enum:
        - ISSUANCE_SUPPORTED_FIAT_PAYMENT_METHOD_UNSPECIFIED
        - WIRE
      description: Payment method for the fiat transaction
      example: WIRE
    bastion.api.v2.issuance.ISSUANCE_SUPPORTED_FIAT_CURRENCY:
      type: string
      title: ISSUANCE_SUPPORTED_FIAT_CURRENCY
      enum:
        - ISSUANCE_SUPPORTED_FIAT_CURRENCY_UNSPECIFIED
        - USD
      example: USD
    bastion.api.v2.issuance.MintInstructions:
      type: object
      properties:
        id:
          type: string
          title: id
          description: Unique identifier for the mint instruction
          readOnly: true
        identity_id:
          type: string
          title: identity_id
          description: >-
            Unique identifier for the identity that this mint instruction
            belongs to
          readOnly: true
        request_id:
          type: string
          title: request_id
          description: Request identifier in a UUID format. Serves as an idempotency key.
          readOnly: true
        stablecoin_symbol:
          type: string
          title: stablecoin_symbol
          description: Symbol of the stablecoin associated with this mint instruction
          readOnly: true
        chain:
          $ref: >-
            #/components/schemas/bastion.api.v2.issuance.ISSUANCE_SUPPORTED_CHAIN
          title: chain
          description: Chain associated with this mint instruction
          readOnly: true
        mint_destination_address_id:
          type: string
          title: mint_destination_address_id
          description: >-
            Unique identifier of the mint destination address associated with
            this mint instruction
          readOnly: true
        payment_rail:
          $ref: >-
            #/components/schemas/bastion.api.v2.issuance.ISSUANCE_SUPPORTED_FIAT_PAYMENT_METHOD
          title: payment_rail
          description: >-
            Payment rail associated with this mint instruction, currently only
            'WIRE' is supported
          readOnly: true
        fiat_currency_symbol:
          $ref: >-
            #/components/schemas/bastion.api.v2.issuance.ISSUANCE_SUPPORTED_FIAT_CURRENCY
          title: fiat_currency_symbol
          description: >-
            Fiat currency symbol associated with this mint instruction,
            currently only 'USD' is supported
          readOnly: true
        memo_id:
          type: string
          title: memo_id
          description: >-
            Memo ID associated with this mint instruction. Attach this to memo
            field of the WIRE transfer that will be used to initiate mints.
          readOnly: true
        bank_account_details:
          $ref: '#/components/schemas/bastion.common.BankAccountDetails'
          title: bank_account_details
          description: >-
            Details of the bank account that funds must be deposited into in
            order to initiate mints
          readOnly: true
        label:
          type: string
          title: label
          description: Label for the mint instruction
          readOnly: true
      title: MintInstructions
      additionalProperties: false
    bastion.api.v2.issuance.ISSUANCE_SUPPORTED_CHAIN:
      type: string
      title: ISSUANCE_SUPPORTED_CHAIN
      enum:
        - ISSUANCE_SUPPORTED_CHAIN_UNSPECIFIED
        - SOLANA_DEVNET
        - SOLANA_MAINNET
      example: SOLANA_DEVNET
    bastion.common.BankAccountDetails:
      type: object
      properties:
        bank_name:
          type: string
          title: bank_name
        account_holder_name:
          type: string
          title: account_holder_name
        account_number:
          type: string
          title: account_number
        routing_number:
          type: string
          title: routing_number
        type:
          type: string
          title: type
        address:
          $ref: '#/components/schemas/bastion.common.Address'
          title: address
        clabe:
          type: string
          title: clabe
          description: |-
            International corridor fields. Each field is populated only for its
             matching payment method (enforced by the bastion_apis validator). MX / SPEI
        ifsc_code:
          type: string
          title: ifsc_code
          description: IN / IMPS_FIRC
        bank_id:
          type: string
          title: bank_id
          description: JP, KR, etc. / BANK_TRANSFER — opaque institution ID
        swift_or_bic_number:
          type: string
          title: swift_or_bic_number
          description: EU / SEPA BIC or SWIFT code
        account_owner_type:
          type: string
          title: account_owner_type
          description: EU / SEPA account owner type
        first_name:
          type: string
          title: first_name
          description: EU / SEPA account owner first name
        last_name:
          type: string
          title: last_name
          description: EU / SEPA account owner last name
        bank_code:
          type: string
          title: bank_code
          description: |-
            JP Zengin code (format: "XXXX-XXX"), GB sort code, or ZA EFT branch
             code. CA / EFT combines its 3-digit institution number and 5-digit
             transit number into a single "III-TTTTT" string here instead.
        identifier_type:
          type: string
          title: identifier_type
          description: BR / PIX identifier type
        identifier_value:
          type: string
          title: identifier_value
          description: BR / PIX key value
        bank_account_number_type:
          type: string
          title: bank_account_number_type
          description: AR / COELSA account number type (CBU, CVU, ALIAS)
      title: BankAccountDetails
      additionalProperties: false
    bastion.common.Address:
      type: object
      properties:
        street_line_1:
          type: string
          title: street_line_1
          maxLength: 100
          minLength: 3
          description: >-
            Street address line 1. Must not be a PO box, and must be between 3
            and 100 characters inclusive.
        street_line_2:
          type: string
          title: street_line_2
          description: Street address line 2. Must not be a PO box.
        city:
          type: string
          title: city
          maxLength: 50
          minLength: 3
          description: City
        postal_code:
          type: string
          title: postal_code
          maxLength: 20
          description: Postal (zip) code. For US addresses, must be a valid US ZIP format.
        country:
          type: string
          title: country
          description: Two-letter ISO 3166-1 alpha-2 country code, e.g. "US".
        region_code:
          type: string
          title: region_code
          description: >-
            Two-letter subdivision code. For US addresses, must be a valid ISO
            3166-2 US
             subdivision code without the country prefix, e.g. "CA" (not "US-CA").
      title: Address
      required:
        - street_line_1
        - city
        - postal_code
        - country
        - region_code
      additionalProperties: false
  securitySchemes:
    auth:
      type: http
      description: Bearer authentication with an API token
      scheme: bearer

````

## Related topics

- [Mint Bastion-issued stablecoins from the Dashboard](/guides/dashboard/mint-bastion-stablecoin.md)
- [Mint Bastion-issued stablecoins with the Issuance API](/guides/quickstarts/mint-bastion-issued-stablecoins.md)
- [Stablecoin issuance concepts](/guides/concepts/stablecoin-issuance.md)
- [Issuance API overview](/v2/api-reference/issuance/overview.md)
- [List Mint Instructions](/v2/api-reference/issuance/list-mint-instructions.md)
