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

# Create a destination

> This endpoint creates a destination.



## OpenAPI

````yaml /openapi/api-production.yaml post /destinations
openapi: 3.1.0
info:
  version: 1.0.0
  title: Lumx API
  description: >-
    A cross-border banking API with instant settlements and unmatched liquidity,
    powered by stablecoins.
servers:
  - url: https://api.lumx.io
  - url: https://api-sandbox.lumx.io
security: []
paths:
  /destinations:
    post:
      tags:
        - Destinations
      summary: Create a destination
      description: This endpoint creates a destination.
      parameters:
        - $ref: '#/components/parameters/IdempotencyKey'
      requestBody:
        content:
          application/json:
            examples:
              PIX:
                value:
                  customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                  name: Lumx Brazil Operations Account
                  rail: PIX
                  currency: BRL
                  identifier:
                    keyType: CNPJ
                    keyValue: 42.887.120/0001-00
                  holder:
                    type: BUSINESS
                    relationship: SELF
                    legalName: Lumx S.A
                    taxId: 42.887.120/0001-00
                    incorporationDate: '2020-01-01'
                    email: hello@lumx.io
                    address:
                      line1: Rua Voluntarios da Patria 89
                      city: Rio de Janeiro
                      state: RJ
                      postalCode: 22270-000
                      country: BRA
              SWIFT:
                value:
                  customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                  name: Lumx Cayman Holdings Account
                  rail: SWIFT
                  currency: USD
                  identifier:
                    iban: KY12BUTT00001234567890123456
                    bic: BUTTKYKY
                  bank:
                    name: Butterfield Bank (Cayman) Limited
                    address:
                      line1: 65 Market Street
                      city: George Town
                      state: Grand Cayman
                      postalCode: KY1-1107
                      country: CYM
                  holder:
                    type: BUSINESS
                    relationship: HOLDING_COMPANY
                    legalName: Lumx Cayman Ltd.
                    taxId: 123456-7
                    incorporationDate: '2019-01-15'
                    email: holding@lumx.ky
                    address:
                      line1: Grand Pavilion, Hibiscus Way
                      city: George Town
                      state: Grand Cayman
                      postalCode: KY1-1205
                      country: CYM
                  intermediary:
                    name: JP Morgan Chase Bank N.A.
                    currency: USD
                    bic: CHASUS33
              SEPA:
                value:
                  customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                  name: Lumx France Subsidiary Account
                  rail: SEPA
                  currency: EUR
                  identifier:
                    iban: FR1420041010050500013M02606
                    bic: BNPAFRPP
                  bank:
                    name: BNP Paribas
                    address:
                      line1: 16 Boulevard des Italiens
                      city: Paris
                      state: IDF
                      postalCode: '75009'
                      country: FRA
                  holder:
                    type: BUSINESS
                    relationship: SUBSIDIARY_COMPANY
                    legalName: Lumx SAS
                    taxId: '98765432100015'
                    incorporationDate: '2021-06-10'
                    email: france@lumx.eu
                    address:
                      line1: 45 Avenue Montaigne
                      city: Paris
                      state: IDF
                      postalCode: '75008'
                      country: FRA
              ACH:
                value:
                  customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                  name: Lumx US Operations Account
                  rail: ACH
                  currency: USD
                  identifier:
                    type: CHECKING
                    accountNumber: '123456789012'
                    routingNumber: '021000021'
                  bank:
                    name: JPMorgan Chase Bank
                    address:
                      line1: 383 Madison Avenue
                      city: New York
                      state: NY
                      postalCode: '10179'
                      country: USA
                  holder:
                    type: BUSINESS
                    relationship: SUBSIDIARY_COMPANY
                    legalName: Lumx US Inc.
                    taxId: 12-3456789
                    incorporationDate: '2020-03-15'
                    email: us@lumx.io
                    address:
                      line1: 100 Wall Street
                      city: New York
                      state: NY
                      postalCode: '10005'
                      country: USA
              FEDWIRE:
                value:
                  customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                  name: Lumx US Wire Account
                  rail: FEDWIRE
                  currency: USD
                  identifier:
                    type: CHECKING
                    accountNumber: '123456789012'
                    routingNumber: '021000021'
                  bank:
                    name: JPMorgan Chase Bank
                    address:
                      line1: 383 Madison Avenue
                      city: New York
                      state: NY
                      postalCode: '10179'
                      country: USA
                  holder:
                    type: BUSINESS
                    relationship: SUBSIDIARY_COMPANY
                    legalName: Lumx US Inc.
                    taxId: 12-3456789
                    incorporationDate: '2020-03-15'
                    email: us@lumx.io
                    address:
                      line1: 100 Wall Street
                      city: New York
                      state: NY
                      postalCode: '10005'
                      country: USA
              SPEI:
                value:
                  customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                  name: Lumx Mexico Operations Account
                  rail: SPEI
                  currency: MXN
                  identifier:
                    keyType: CLABE
                    keyValue: '012180001234567897'
                  holder:
                    type: BUSINESS
                    relationship: SELF
                    legalName: Lumx S.A
                    taxId: 42.887.120/0001-00
                    incorporationDate: '2020-01-01'
                    email: hello@lumx.io
                    address:
                      line1: Calzada de Tlalpan 3465, Colonia Santa Úrsula Coapa
                      city: Mexico City
                      state: CDMX
                      postalCode: '04650'
                      country: MEX
            schema:
              oneOf:
                - type: object
                  title: PIX
                  allOf:
                    - $ref: '#/components/schemas/DestinationPixRequest'
                - type: object
                  title: SWIFT
                  allOf:
                    - $ref: '#/components/schemas/DestinationSwiftRequest'
                - type: object
                  title: SEPA
                  allOf:
                    - $ref: '#/components/schemas/DestinationSepaRequest'
                - type: object
                  title: ACH
                  allOf:
                    - $ref: '#/components/schemas/DestinationAchRequest'
                - type: object
                  title: FEDWIRE
                  allOf:
                    - $ref: '#/components/schemas/DestinationFedwireRequest'
                - type: object
                  title: SPEI
                  allOf:
                    - $ref: '#/components/schemas/DestinationSpeiRequest'
      responses:
        '201':
          description: Destination successfully created.
          content:
            application/json:
              examples:
                PIX:
                  value:
                    id: a72f5359-ffef-6913-d1da-8g58d491g406
                    customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                    name: Lumx Brazil Operations Account
                    type: EXTERNAL
                    rail: PIX
                    currency: BRL
                    identifier:
                      keyType: CNPJ
                      keyValue: 42.887.120/0001-00
                    holder:
                      type: BUSINESS
                      relationship: SELF
                      legalName: Lumx S.A
                      taxId: 42.887.120/0001-00
                      incorporationDate: '2020-01-01'
                      email: hello@lumx.io
                      address:
                        line1: Rua Voluntarios da Patria 89
                        city: Rio de Janeiro
                        state: RJ
                        postalCode: 22270-000
                        country: BRA
                      verification:
                        status: UNDER_VERIFICATION
                        level: BASIC
                    createdAt: '2025-10-16T15:30:22.456Z'
                    updatedAt: '2025-10-16T15:30:22.456Z'
                SWIFT:
                  value:
                    id: e80d3137-eddd-4791-b9b8-6e36b289f284
                    customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                    name: Lumx Cayman Holdings Account
                    type: EXTERNAL
                    rail: SWIFT
                    currency: USD
                    identifier:
                      iban: KY12BUTT00001234567890123456
                      bic: BUTTKYKY
                    bank:
                      name: Butterfield Bank (Cayman) Limited
                      address:
                        line1: 65 Market Street
                        city: George Town
                        state: Grand Cayman
                        postalCode: KY1-1107
                        country: CYM
                    holder:
                      type: BUSINESS
                      relationship: HOLDING_COMPANY
                      legalName: Lumx Cayman Ltd.
                      taxId: 123456-7
                      incorporationDate: '2019-01-15'
                      email: holding@lumx.ky
                      address:
                        line1: Grand Pavilion, Hibiscus Way
                        city: George Town
                        state: Grand Cayman
                        postalCode: KY1-1205
                        country: CYM
                      verification:
                        status: UNDER_VERIFICATION
                        level: BASIC
                    intermediary:
                      name: JP Morgan Chase Bank N.A.
                      currency: USD
                      bic: CHASUS33
                    createdAt: '2025-10-16T13:45:10.243Z'
                    updatedAt: '2025-10-16T13:45:10.243Z'
                SEPA:
                  value:
                    id: f91e4248-feed-5802-c0c9-7f47c390f395
                    customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                    name: Lumx France Subsidiary Account
                    type: EXTERNAL
                    rail: SEPA
                    currency: EUR
                    identifier:
                      iban: FR1420041010050500013M02606
                      bic: BNPAFRPP
                    bank:
                      name: BNP Paribas
                      address:
                        line1: 16 Boulevard des Italiens
                        city: Paris
                        state: IDF
                        postalCode: '75009'
                        country: FRA
                    holder:
                      type: BUSINESS
                      relationship: SUBSIDIARY_COMPANY
                      legalName: Lumx SAS
                      taxId: '98765432100015'
                      incorporationDate: '2021-06-10'
                      email: france@lumx.eu
                      address:
                        line1: 45 Avenue Montaigne
                        city: Paris
                        state: IDF
                        postalCode: '75008'
                        country: FRA
                      verification:
                        status: UNDER_VERIFICATION
                        level: BASIC
                    createdAt: '2025-10-16T14:20:35.187Z'
                    updatedAt: '2025-10-16T14:20:35.187Z'
                ACH:
                  value:
                    id: b82e4359-feed-6913-d1da-9h69e502h517
                    customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                    name: Lumx US Operations Account
                    type: EXTERNAL
                    rail: ACH
                    currency: USD
                    identifier:
                      type: CHECKING
                      accountNumber: '123456789012'
                      routingNumber: '021000021'
                    bank:
                      name: JPMorgan Chase Bank
                      address:
                        line1: 383 Madison Avenue
                        city: New York
                        state: NY
                        postalCode: '10179'
                        country: USA
                    holder:
                      type: BUSINESS
                      relationship: SUBSIDIARY_COMPANY
                      legalName: Lumx US Inc.
                      taxId: 12-3456789
                      incorporationDate: '2020-03-15'
                      email: us@lumx.io
                      address:
                        line1: 100 Wall Street
                        city: New York
                        state: NY
                        postalCode: '10005'
                        country: USA
                      verification:
                        status: UNDER_VERIFICATION
                        level: BASIC
                    createdAt: '2025-10-16T16:30:45.123Z'
                    updatedAt: '2025-10-16T16:30:45.123Z'
                FEDWIRE:
                  value:
                    id: c93f5460-gffe-7024-e2eb-0i70f613i628
                    customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                    name: Lumx US Wire Account
                    type: EXTERNAL
                    rail: FEDWIRE
                    currency: USD
                    identifier:
                      type: CHECKING
                      accountNumber: '123456789012'
                      routingNumber: '021000021'
                    bank:
                      name: JPMorgan Chase Bank
                      address:
                        line1: 383 Madison Avenue
                        city: New York
                        state: NY
                        postalCode: '10179'
                        country: USA
                    holder:
                      type: BUSINESS
                      relationship: SUBSIDIARY_COMPANY
                      legalName: Lumx US Inc.
                      taxId: 12-3456789
                      incorporationDate: '2020-03-15'
                      email: us@lumx.io
                      address:
                        line1: 100 Wall Street
                        city: New York
                        state: NY
                        postalCode: '10005'
                        country: USA
                      verification:
                        status: UNDER_VERIFICATION
                        level: BASIC
                    createdAt: '2025-10-16T17:45:00.789Z'
                    updatedAt: '2025-10-16T17:45:00.789Z'
                SPEI:
                  value:
                    id: a72f5359-ffef-6913-d1da-8g58d491g406
                    customerId: 3c90c3cc-0d44-4b50-8888-8dd25736052a
                    name: Lumx Mexico Operations Account
                    type: EXTERNAL
                    rail: SPEI
                    currency: MXN
                    identifier:
                      clabe: '012180001234567897'
                    holder:
                      type: BUSINESS
                      relationship: SELF
                      legalName: Lumx S.A
                      taxId: LMX123456789
                      incorporationDate: '2020-01-01'
                      email: hello@lumx.io
                      address:
                        line1: Calzada de Tlalpan 3465
                        city: Ciudad de México
                        state: CDMX
                        postalCode: '04650'
                        country: MEX
                      verification:
                        status: UNDER_VERIFICATION
                        level: BASIC
                    createdAt: '2025-10-16T15:30:22.456Z'
                    updatedAt: '2025-10-16T15:30:22.456Z'
              schema:
                oneOf:
                  - type: object
                    title: PIX
                    description: Destination's rail is PIX.
                    allOf:
                      - $ref: '#/components/schemas/DestinationPixResponse'
                  - type: object
                    title: SWIFT
                    description: Destination's rail is SWIFT.
                    allOf:
                      - $ref: '#/components/schemas/DestinationSwiftResponse'
                  - type: object
                    title: SEPA
                    description: Destination's rail is SEPA.
                    allOf:
                      - $ref: '#/components/schemas/DestinationSepaResponse'
                  - type: object
                    title: ACH
                    description: Destination's rail is ACH.
                    allOf:
                      - $ref: '#/components/schemas/DestinationAchResponse'
                  - type: object
                    title: FEDWIRE
                    description: Destination's rail is FEDWIRE.
                    allOf:
                      - $ref: '#/components/schemas/DestinationFedwireResponse'
                  - type: object
                    title: SPEI
                    description: Destination's rail is SPEI.
                    allOf:
                      - $ref: '#/components/schemas/DestinationSpeiResponse'
      security:
        - apiKey: []
components:
  parameters:
    IdempotencyKey:
      name: Idempotency-Key
      in: header
      required: false
      schema:
        type: string
        format: uuid
      description: >-
        Optional UUID v4 idempotency key. If you resend the same key with a
        different request body, the API returns a 409 error. Cached responses
        include the header `X-Idempotency-Cached: true`. Keys expire after 24
        hours.
  schemas:
    DestinationPixRequest:
      type: object
      properties:
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Destination 1
        rail:
          type: string
          enum:
            - PIX
          description: Destination's payment rail.
          example: PIX
        currency:
          type: string
          enum:
            - BRL
          description: Destination's currency.
          example: BRL
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            keyType:
              type: string
              enum:
                - CPF
                - CNPJ
                - EMAIL
                - PHONE
                - RANDOM
              description: Identifier PIX key type.
              example: CNPJ
            keyValue:
              type: string
              description: >-
                Identifier PIX key value. For phone keys, use E.164
                international format starting with + (e.g., +5511987654321).
              example: 123.456.789-00
          required:
            - keyType
            - keyValue
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
          required:
            - relationship
            - taxId
            - email
            - address
      required:
        - customerId
        - name
        - rail
        - currency
        - identifier
    DestinationSwiftRequest:
      type: object
      properties:
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Destination 1
        rail:
          type: string
          enum:
            - SWIFT
          description: Destination's payment rail.
          example: SWIFT
        currency:
          type: string
          enum:
            - USD
            - EUR
          description: Destination's currency.
          example: USD
        identifier:
          type: object
          description: >-
            Destination's identifier. Must provide either iban or accountNumber,
            along with bic.
          properties:
            iban:
              type: string
              description: Identifier IBAN. Either iban or accountNumber is required.
              example: GB82WEST12345698765432
            accountNumber:
              type: string
              description: >-
                Identifier account number. Either iban or accountNumber is
                required.
              example: '1234567890'
            bic:
              type: string
              description: Identifier BIC (SWIFT Code).
              example: DEUTDEFF
          required:
            - bic
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
              example: Deutsche Bank AG
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
          required:
            - name
            - address
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
          required:
            - relationship
            - taxId
            - email
            - address
        intermediary:
          type: object
          description: Intermediary bank information (optional).
          properties:
            name:
              type: string
              description: Intermediary name.
              example: Chase Bank Frankfurt
            bic:
              type: string
              description: Intermediary BIC (SWIFT Code).
              example: CHASDEFX
            country:
              type: string
              enum:
                - USA
                - GBR
                - DEU
                - FRA
                - NLD
                - ITA
                - ESP
                - IRL
                - LUX
                - BEL
                - SGP
                - HKG
                - JPN
                - CHN
                - IND
                - MYS
                - CAN
                - PAN
                - BHS
              description: Intermediary country (ISO 3166-1 alpha-3 code).
              example: GBR
      required:
        - customerId
        - name
        - rail
        - currency
        - identifier
        - holder
        - bank
    DestinationSepaRequest:
      type: object
      properties:
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Destination 1
        rail:
          type: string
          enum:
            - SEPA
          description: Destination's payment rail.
          example: SEPA
        currency:
          type: string
          enum:
            - EUR
          description: Destination's currency.
          example: EUR
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            iban:
              type: string
              description: Identifier IBAN.
              example: FR1420041010050500013M02606
            bic:
              type: string
              description: Identifier BIC (SWIFT Code).
              example: BNPAFRPP
          required:
            - iban
            - bic
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
              example: BNP Paribas
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
          required:
            - name
            - address
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
          required:
            - relationship
            - taxId
            - email
            - address
      required:
        - customerId
        - name
        - rail
        - currency
        - identifier
        - holder
        - bank
    DestinationAchRequest:
      type: object
      properties:
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx US Operations Account
        rail:
          type: string
          enum:
            - ACH
          description: Destination's payment rail.
          example: ACH
        currency:
          type: string
          enum:
            - USD
          description: Destination's currency.
          example: USD
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            type:
              type: string
              enum:
                - CHECKING
                - SAVINGS
              description: Identifier account type.
              example: CHECKING
            accountNumber:
              type: string
              description: Identifier account number.
              example: '123456789012'
            routingNumber:
              type: string
              description: Identifier account routing number (ABA routing number).
              example: '021000021'
          required:
            - type
            - accountNumber
            - routingNumber
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
              example: JPMorgan Chase Bank
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
          required:
            - name
            - address
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name.
              example: Lumx US Inc.
            taxId:
              type: string
              description: Holder's tax ID.
              example: 12-3456789
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-03-15'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: us@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
          required:
            - relationship
            - taxId
            - email
            - address
      required:
        - customerId
        - name
        - rail
        - currency
        - identifier
        - holder
        - bank
    DestinationFedwireRequest:
      type: object
      properties:
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx US Wire Account
        rail:
          type: string
          enum:
            - FEDWIRE
          description: Destination's payment rail.
          example: FEDWIRE
        currency:
          type: string
          enum:
            - USD
          description: Destination's currency.
          example: USD
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            type:
              type: string
              enum:
                - CHECKING
                - SAVINGS
              description: Identifier account type.
              example: CHECKING
            accountNumber:
              type: string
              description: Identifier account number.
              example: '123456789012'
            routingNumber:
              type: string
              description: Identifier account routing number (ABA routing number).
              example: '021000021'
          required:
            - type
            - accountNumber
            - routingNumber
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
              example: JPMorgan Chase Bank
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
          required:
            - name
            - address
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name.
              example: Lumx US Inc.
            taxId:
              type: string
              description: Holder's tax ID.
              example: 12-3456789
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-03-15'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: us@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
          required:
            - relationship
            - taxId
            - email
            - address
      required:
        - customerId
        - name
        - rail
        - currency
        - identifier
        - holder
        - bank
    DestinationSpeiRequest:
      type: object
      properties:
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Mexico Account
        rail:
          type: string
          enum:
            - SPEI
          description: Destination's payment rail.
          example: SPEI
        currency:
          type: string
          enum:
            - MXN
          description: Destination's currency.
          example: MXN
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            clabe:
              type: string
              description: >-
                Identifier CLABE (Clave Bancaria Estandarizada) - 18-digit
                standardized bank account number.
              example: '012180001234567897'
              pattern: ^[0-9]{18}$
          required:
            - clabe
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx Mexico S.A. de C.V.
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: Juan Default
            taxId:
              type: string
              description: Holder's tax ID (RFC for Mexico).
              example: LMX123456789
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2021-06-20'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: mx@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
          required:
            - relationship
            - taxId
            - address
            - type
      required:
        - customerId
        - name
        - rail
        - currency
        - identifier
        - bank
    DestinationPixResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Destination's unique identifier.
          example: e80d3137-eddd-4791-b9b8-6e36b289f284
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Destination 1
        type:
          type: string
          enum:
            - EXTERNAL
          description: Destination's type.
        rail:
          type: string
          enum:
            - PIX
          description: Destination's payment rail.
        currency:
          type: string
          enum:
            - BRL
          description: Destination's currency.
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            keyType:
              type: string
              enum:
                - CPF
                - CNPJ
                - EMAIL
                - PHONE
                - RANDOM
              description: Identifier PIX key type.
              example: CNPJ
            keyValue:
              type: string
              description: >-
                Identifier PIX key value. For phone keys, use E.164
                international format starting with + (e.g., +5511987654321).
              example: 123.456.789-00
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
            verification:
              type: object
              description: Holder verification information.
              properties:
                status:
                  type: string
                  enum:
                    - UNDER_VERIFICATION
                    - APPROVED
                    - TEMPORARY_REJECTION
                    - FINAL_REJECTION
                  description: Verification status.
                  example: APPROVED
                level:
                  type: string
                  description: Verification level.
                  example: BASIC
        createdAt:
          type: string
          format: date-time
          description: Creation date and time (UTC).
        updatedAt:
          type: string
          format: date-time
          description: Last update date and time (UTC).
    DestinationSwiftResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Destination's unique identifier.
          example: e80d3137-eddd-4791-b9b8-6e36b289f284
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Destination 1
        type:
          type: string
          enum:
            - EXTERNAL
          description: Destination's type.
        rail:
          type: string
          enum:
            - SWIFT
          description: Destination's payment rail.
        currency:
          type: string
          enum:
            - USD
            - EUR
          description: Destination's currency.
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            iban:
              type: string
              description: Identifier IBAN.
            accountNumber:
              type: string
              description: Identifier account number.
            bic:
              type: string
              description: Identifier BIC (SWIFT Code).
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
            verification:
              type: object
              description: Holder verification information.
              properties:
                status:
                  type: string
                  enum:
                    - UNDER_VERIFICATION
                    - APPROVED
                    - TEMPORARY_REJECTION
                    - FINAL_REJECTION
                  description: Verification status.
                  example: APPROVED
                level:
                  type: string
                  description: Verification level.
                  example: BASIC
        intermediary:
          type: object
          description: Intermediary bank information.
          properties:
            name:
              type: string
              description: Intermediary name.
            bic:
              type: string
              description: Intermediary BIC (SWIFT Code).
            country:
              type: string
              enum:
                - USA
                - GBR
                - DEU
                - FRA
                - NLD
                - ITA
                - ESP
                - IRL
                - LUX
                - BEL
                - SGP
                - HKG
                - JPN
                - CHN
                - IND
                - MYS
                - CAN
                - PAN
                - BHS
              description: Intermediary country (ISO 3166-1 alpha-3 code).
        createdAt:
          type: string
          format: date-time
          description: Creation date and time (UTC).
        updatedAt:
          type: string
          format: date-time
          description: Last update date and time (UTC).
    DestinationSepaResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Destination's unique identifier.
          example: e80d3137-eddd-4791-b9b8-6e36b289f284
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Destination 1
        type:
          type: string
          enum:
            - EXTERNAL
          description: Destination's type.
        rail:
          type: string
          enum:
            - SEPA
          description: Destination's payment rail.
        currency:
          type: string
          enum:
            - EUR
          description: Destination's currency.
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            iban:
              type: string
              description: Identifier IBAN.
            bic:
              type: string
              description: Identifier BIC (SWIFT Code).
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
        holder:
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
            verification:
              type: object
              description: Holder verification information.
              properties:
                status:
                  type: string
                  enum:
                    - UNDER_VERIFICATION
                    - APPROVED
                    - TEMPORARY_REJECTION
                    - FINAL_REJECTION
                  description: Verification status.
                  example: APPROVED
                level:
                  type: string
                  description: Verification level.
                  example: BASIC
        createdAt:
          type: string
          format: date-time
          description: Creation date and time (UTC).
        updatedAt:
          type: string
          format: date-time
          description: Last update date and time (UTC).
    DestinationAchResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Destination's unique identifier.
          example: b82e4359-feed-6913-d1da-9h69e502h517
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx US Operations Account
        type:
          type: string
          enum:
            - EXTERNAL
          description: Destination's type.
          example: EXTERNAL
        rail:
          type: string
          enum:
            - ACH
          description: Destination's payment rail.
          example: ACH
        currency:
          type: string
          enum:
            - USD
          description: Destination's currency.
          example: USD
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            type:
              type: string
              enum:
                - CHECKING
                - SAVINGS
              description: Identifier account type.
              example: CHECKING
            accountNumber:
              type: string
              description: Identifier account number.
              example: '123456789012'
            routingNumber:
              type: string
              description: Identifier account routing number (ABA routing number).
              example: '021000021'
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
              example: JPMorgan Chase Bank
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
        holder:
          $ref: '#/components/schemas/DestinationHolderResponse'
        createdAt:
          type: string
          format: date-time
          description: Creation date and time (UTC).
          example: '2025-10-16T16:30:45.123Z'
        updatedAt:
          type: string
          format: date-time
          description: Last update date and time (UTC).
          example: '2025-10-16T16:30:45.123Z'
    DestinationFedwireResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Destination's unique identifier.
          example: c93f5460-gffe-7024-e2eb-0i70f613i628
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx US Wire Account
        type:
          type: string
          enum:
            - EXTERNAL
          description: Destination's type.
          example: EXTERNAL
        rail:
          type: string
          enum:
            - FEDWIRE
          description: Destination's payment rail.
          example: FEDWIRE
        currency:
          type: string
          enum:
            - USD
          description: Destination's currency.
          example: USD
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            type:
              type: string
              enum:
                - CHECKING
                - SAVINGS
              description: Identifier account type.
              example: CHECKING
            accountNumber:
              type: string
              description: Identifier account number.
              example: '123456789012'
            routingNumber:
              type: string
              description: Identifier account routing number (ABA routing number).
              example: '021000021'
        bank:
          type: object
          description: Bank information.
          properties:
            name:
              type: string
              description: Bank's name.
              example: JPMorgan Chase Bank
            address:
              $ref: '#/components/schemas/DestinationAddress'
              description: Bank's address.
        holder:
          $ref: '#/components/schemas/DestinationHolderResponse'
        createdAt:
          type: string
          format: date-time
          description: Creation date and time (UTC).
          example: '2025-10-16T17:45:00.789Z'
        updatedAt:
          type: string
          format: date-time
          description: Last update date and time (UTC).
          example: '2025-10-16T17:45:00.789Z'
    DestinationSpeiResponse:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: Destination's unique identifier.
          example: d04g6571-hggf-8135-f3fc-1j81g724j739
        customerId:
          type: string
          description: Customer's unique identifier.
          format: uuid
          example: 3c90c3cc-0d44-4b50-8888-8dd25736052a
        name:
          type: string
          description: Destination's display name.
          example: Lumx Mexico Operations Account
        type:
          type: string
          enum:
            - EXTERNAL
          description: Destination's type.
          example: EXTERNAL
        rail:
          type: string
          enum:
            - SPEI
          description: Destination's payment rail.
          example: SPEI
        currency:
          type: string
          enum:
            - MXN
          description: Destination's currency.
          example: MXN
        identifier:
          type: object
          description: Destination's identifier.
          properties:
            clabe:
              type: string
              description: >-
                Identifier CLABE (Clave Bancaria Estandarizada) - 18-digit
                standardized bank account number.
              example: '012180001234567897'
              pattern: ^[0-9]{18}$
        holder:
          holder: null
          type: object
          description: Destination's holder.
          properties:
            type:
              type: string
              enum:
                - BUSINESS
                - INDIVIDUAL
              description: Holder's type.
              example: BUSINESS
            relationship:
              type: string
              enum:
                - SELF
                - HOLDING_COMPANY
                - SUBSIDIARY_COMPANY
                - BRANCH_OFFICE
                - BUSINESS_PARTNER
                - SUPPLIER
                - CUSTOMER
                - CREDITOR
                - DEBTOR
                - FRANCHISEE
                - FRIEND
                - RELATIVE
                - EMPLOYEE
              description: Holder's relationship to customer.
              example: SELF
            legalName:
              type: string
              description: Holder's legal name. Required for business holders.
              example: Lumx S.A
            name:
              type: string
              description: Holder's full name. Required for individual holders.
              example: William Default
            taxId:
              type: string
              description: Holder's tax ID.
              example: 42.887.120/0001-00
            incorporationDate:
              type: string
              format: date
              description: Holder's incorporation date.
              example: '2020-01-01'
            birthDate:
              type: string
              format: date
              description: Holder's birth date.
              example: '1990-01-01'
            email:
              type: string
              format: email
              description: Holder's email address.
              example: hello@lumx.io
            address:
              $ref: '#/components/schemas/DestinationAddress'
            verification:
              type: object
              description: Holder verification information.
              properties:
                status:
                  type: string
                  enum:
                    - UNDER_VERIFICATION
                    - APPROVED
                    - TEMPORARY_REJECTION
                    - FINAL_REJECTION
                  description: Verification status.
                  example: APPROVED
                level:
                  type: string
                  description: Verification level.
                  example: BASIC
        createdAt:
          type: string
          format: date-time
          description: Creation date and time (UTC).
          example: '2025-10-16T18:20:30.456Z'
        updatedAt:
          type: string
          format: date-time
          description: Last update date and time (UTC).
          example: '2025-10-16T18:20:30.456Z'
    DestinationAddress:
      type: object
      description: Holder's address.
      properties:
        line1:
          type: string
          description: Address line 1.
          example: 123 Main Street
        line2:
          type: string
          description: Address line 2.
          example: Apt 4B
        city:
          type: string
          description: Address city.
          example: Frankfurt
        state:
          type: string
          description: Address state.
          example: HE
        postalCode:
          type: string
          description: Address postal code.
          example: '60311'
        country:
          type: string
          description: Address country code (ISO 3166-1 alpha-3).
          example: DEU
      required:
        - line1
        - city
        - state
        - postalCode
        - country
    DestinationHolderResponse:
      type: object
      description: Destination's holder.
      properties:
        type:
          type: string
          enum:
            - BUSINESS
            - INDIVIDUAL
          description: Holder's type.
          example: BUSINESS
        relationship:
          type: string
          enum:
            - SELF
            - HOLDING_COMPANY
            - SUBSIDIARY_COMPANY
            - BRANCH_OFFICE
            - BUSINESS_PARTNER
            - SUPPLIER
            - CUSTOMER
            - CREDITOR
            - DEBTOR
            - FRANCHISEE
            - FRIEND
            - RELATIVE
            - EMPLOYEE
          description: Holder's relationship to customer.
          example: SELF
        name:
          type: string
          description: Holder name.
          example: John Doe
        address:
          $ref: '#/components/schemas/DestinationAddress'
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: Bearer authentication header on the format `Bearer <API_KEY>`.

````