---
title: "Create an account"
method: POST
path: "/v2/users/{userId}/accounts"
tags: ["Account"]
---

# Create an account

`POST /v2/users/{userId}/accounts`

Create an onramp or offramp account for different account types by providing your bank account information.

## Path parameters

- `userId` string, required

## Request body

- union
  - CreateAccount
    - `rail` 'onramp' | 'offramp', required
    - `type` 'us' | 'brazil' | 'colombia' | 'argentina' | 'mexico' | 'africa' | 'brazilGlobalNetwork' | 'nigeriaGlobalNetwork' | 'mexicoGlobalNetwork' | 'hongKongGlobalNetwork' | 'chinaGlobalNetwork' | 'singaporeGlobalNetwork', required — The type of account.
    - `accountHolder` AccountHolder
      - `type` 'individual' | 'business', required
      - `name` string, required — The name of the account holder. `individual`: first name and last name seperated by space. `business`: legal name of the business.
      - `email` string, email
      - `phone` string
      - `address` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `idType` 'CC' | 'CE' | 'NIT' | 'PASS' | 'PEP' — The type of ID document provided by the account holder. `CC`: Citizenship ID `CE`: Foreign ID `NIT`: National ID `PASS`: Passport `PEP`: Special Stay Permit
      - `idNumber` string — The ID number of the account holder.
    - `us` UsAccount
      - `transferType` 'ach' | 'wire' | 'swift', required — The type of transfer this account facilitates. `rtp` will come shortly.
      - `accountType` 'Checking' | 'Savings', required — The type of account.
      - `accountNumber` string — The account number of the account.
      - `routingNumber` string — The routing number of the account.
      - `iban` string — Only one of `accountNumber` or `iban` can be provided.
      - `swiftCode` string — The SWIFT code of the bank where the account is held. Required if `transferType` is `swift`.
      - `bankName` string, required — The name of the bank where the account is held.
      - `bankAddress` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `currency` 'usd', required — The currency of the account.
    - `brazil` BrazilAccount
      - `pixKey` string, required — The PIX key of the account.
      - `currency` 'brl', required — The currency of the account.
    - `colombia` ColombiaAccount
      - `bankName` 'MOVII' | 'Banco de Bogotá' | 'Banco Popular' | 'Banco Corpbanca ITAU' | 'Bancolombia' | 'Citibank' | 'Banco GNB Sudameris' | 'BBVA' | 'ITAU' | 'Scotiabank Colpatria' | 'Banco de Occidente' | 'Bancoldex' | 'Banco Caja Social' | 'Banco Agrario' | 'Jpmorgan Corporacion Financier' | 'BNP PARIBAS' | 'Davivienda' | 'Banco AVVillas' | 'Banco W' | 'Banco Procredit Colombia' | 'Bancamia' | 'Inversora Pichincha S.A.' | 'Bancoomeva' | 'Banco Falabella S.A.' | 'Banco Finandina S.A.' | 'Banco Santander Negocios' | 'Banco Cooperativo Coopcentral' | 'Serfinanza S.A' | 'LULO BANK SA' | 'Banco JP Morgan' | 'Compensar' | 'Gestion y Contacto S.A.' | 'Fedecajas' | 'Simple S.A.' | 'Enlace Operativo' | 'Corp. Financiera Colombiana' | 'Financiera Juriscoop' | 'Rappi' | 'Coop. Financiera de Antioquia' | 'Cotrafa Cooperativa Financiera' | 'Confiar Cooperativa Financiera' | 'Giros y Finanzas' | 'COLTEFINANCIERA' | 'Banco OLD Mutual' | 'NEQUI' | 'DECEVAL' | 'Daviplata' | 'Banco Credifinanciera' | 'Financiera Dann (IRIS)' | 'DGCPTN' — The name of the bank where the account is held. Required if `bankCode` is not provided.
      - `bankCode` string — The bank code of the bank where the account is held. Required if `bankName` is not provided. If provided, this will take precedence over `bankName`.
      - `accountNumber` string, required — The account number of the account.
      - `accountType` 'checking' | 'savings', required — The type of account.
      - `currency` 'cop', required — The currency of the account.
    - `argentina` ArgentinaAccount
      - `accountType` 'CVU' | 'CBU' | 'ALIAS', required — The type of account.
      - `accountNumber` string, required — The account number of the account.
      - `currency` 'ars', required — The currency of the account.
    - `mexico` MexicoAccount
      - `speiProtocol` 'clabe' | 'debitcard' | 'phonenum', required — The SPEI protocol of the account.
      - `speiInstitutionCode` string — The institution code of the account. Required only if `speiProtocol` is `debitcard` or `phonenum`.
      - `speiClabe` string, required
      - `currency` 'mxn', required — The currency of the account.
    - `africa` AfricaAccount
      - `financialInstitute` string, required — The financial institute of the account. Financial institue type has to match the accountType. eg. accountType of bank requires financialInstitute of bank. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `financialInstitute` enum is supported under the `country` and `currency`.
      - `accountType` 'momo' | 'bank', required — The type of account.
      - `accountNumber` string — The account number of the account. Not required for `rail`: "onramp" with `accountType`: "bank". Required otherwise.
      - `currency` string, required — The currency of the account. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `currency` enum is supported under the `country` and `financialInstitute`.
      - `country` string, required — The country code of the account. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `country` enum is supported under the `currency` and `financialInstitute`.
    - `brazilGlobalNetwork` BrazilGlobalNetworkAccount
      - `email` string, email — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `phone` string — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `pix` string — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `currency` 'brl', required — The currency for the account
    - `nigeriaGlobalNetwork` NigeriaGlobalNetworkAccount
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `currency` 'ngn', required — The currency for the account
    - `mexicoGlobalNetwork` MexicoGlobalNetworkAccount
      - `speiClabe` string — SPEI CLABE number for the account
      - `currency` 'mxn', required — The currency for the account
    - `hongKongGlobalNetwork` HongKongGlobalNetworkAccount
      - `bankName` string, required — Bank name for the account
      - `accountNumber` string, required — Bank account number
      - `swiftCode` string, required — Bank code
      - `currency` 'hkd' | 'usd', required — The currency for the account
      - `bankCode` string — Bank code. Only required when transferType is chats or fps.
      - `transferType` 'chats' | 'fps' | 'swift' — Transfer type of the account. `swift` is the default transfer type if not provided.
    - `singaporeGlobalNetwork` SingaporeGlobalNetworkAccount
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `swiftCode` string — Bank code
      - `currency` 'usd' | 'sgd', required — The currency for the account
  - CreateUsAccount
    - `rail` 'offramp', required
    - `type` 'us', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` UsAccountHolder, required
      - `type` 'individual' | 'business', required
      - `name` string, required — The name of the account holder. `individual`: first name and last name seperated by space. `business`: legal name of the business.
      - `address` Address, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
    - `us` UsAccount, required
      - `transferType` 'ach' | 'wire' | 'swift', required — The type of transfer this account facilitates. `rtp` will come shortly.
      - `accountType` 'Checking' | 'Savings', required — The type of account.
      - `accountNumber` string — The account number of the account.
      - `routingNumber` string — The routing number of the account.
      - `iban` string — Only one of `accountNumber` or `iban` can be provided.
      - `swiftCode` string — The SWIFT code of the bank where the account is held. Required if `transferType` is `swift`.
      - `bankName` string, required — The name of the bank where the account is held.
      - `bankAddress` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `currency` 'usd', required — The currency of the account.
  - CreateBrazilAccount
    - `rail` 'offramp', required
    - `type` 'brazil', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `brazil` BrazilAccount, required
      - `pixKey` string, required — The PIX key of the account.
      - `currency` 'brl', required — The currency of the account.
  - CreateBrazilGlobalNetworkAccountIndividual
    - `rail` 'offramp', required
    - `type` 'brazilGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `brazilGlobalNetwork` BrazilGlobalNetworkAccount, required
      - `email` string, email — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `phone` string — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `pix` string — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `currency` 'brl', required — The currency for the account
  - CreateBrazilGlobalNetworkAccountBusiness
    - `rail` 'offramp', required
    - `type` 'brazilGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `brazilGlobalNetwork` BrazilGlobalNetworkAccount, required
      - `email` string, email — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `phone` string — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `pix` string — Provide when idNumber does not serve as offramp destination identifier At most one of the following fields can be provided: pix, email, phone.
      - `currency` 'brl', required — The currency for the account
  - CreateColombiaAccount
    - `rail` 'offramp', required
    - `type` 'colombia', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` ColombiaAccountHolder, required
      - `type` 'individual' | 'business', required
      - `name` string, required — The name of the account holder. `individual`: first name and last name seperated by space. `business`: legal name of the business.
      - `email` string, email, required
      - `phone` string
      - `address` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `idType` 'CC' | 'CE' | 'NIT' | 'PASS' | 'PEP', required — The type of ID document provided by the account holder. `CC`: Citizenship ID `CE`: Foreign ID `NIT`: National ID `PASS`: Passport `PEP`: Special Stay Permit
      - `idNumber` string, required — The ID number of the account holder.
    - `colombia` ColombiaAccount, required
      - `bankName` 'MOVII' | 'Banco de Bogotá' | 'Banco Popular' | 'Banco Corpbanca ITAU' | 'Bancolombia' | 'Citibank' | 'Banco GNB Sudameris' | 'BBVA' | 'ITAU' | 'Scotiabank Colpatria' | 'Banco de Occidente' | 'Bancoldex' | 'Banco Caja Social' | 'Banco Agrario' | 'Jpmorgan Corporacion Financier' | 'BNP PARIBAS' | 'Davivienda' | 'Banco AVVillas' | 'Banco W' | 'Banco Procredit Colombia' | 'Bancamia' | 'Inversora Pichincha S.A.' | 'Bancoomeva' | 'Banco Falabella S.A.' | 'Banco Finandina S.A.' | 'Banco Santander Negocios' | 'Banco Cooperativo Coopcentral' | 'Serfinanza S.A' | 'LULO BANK SA' | 'Banco JP Morgan' | 'Compensar' | 'Gestion y Contacto S.A.' | 'Fedecajas' | 'Simple S.A.' | 'Enlace Operativo' | 'Corp. Financiera Colombiana' | 'Financiera Juriscoop' | 'Rappi' | 'Coop. Financiera de Antioquia' | 'Cotrafa Cooperativa Financiera' | 'Confiar Cooperativa Financiera' | 'Giros y Finanzas' | 'COLTEFINANCIERA' | 'Banco OLD Mutual' | 'NEQUI' | 'DECEVAL' | 'Daviplata' | 'Banco Credifinanciera' | 'Financiera Dann (IRIS)' | 'DGCPTN' — The name of the bank where the account is held. Required if `bankCode` is not provided.
      - `bankCode` string — The bank code of the bank where the account is held. Required if `bankName` is not provided. If provided, this will take precedence over `bankName`.
      - `accountNumber` string, required — The account number of the account.
      - `accountType` 'checking' | 'savings', required — The type of account.
      - `currency` 'cop', required — The currency of the account.
  - CreateArgentinaAccount
    - `rail` 'offramp', required
    - `type` 'argentina', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` AccountHolder, required
      - `type` 'individual' | 'business', required
      - `name` string, required — The name of the account holder. `individual`: first name and last name seperated by space. `business`: legal name of the business.
      - `email` string, email
      - `phone` string
      - `address` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `idType` 'CC' | 'CE' | 'NIT' | 'PASS' | 'PEP' — The type of ID document provided by the account holder. `CC`: Citizenship ID `CE`: Foreign ID `NIT`: National ID `PASS`: Passport `PEP`: Special Stay Permit
      - `idNumber` string — The ID number of the account holder.
    - `argentina` ArgentinaAccount, required
      - `accountType` 'CVU' | 'CBU' | 'ALIAS', required — The type of account.
      - `accountNumber` string, required — The account number of the account.
      - `currency` 'ars', required — The currency of the account.
  - CreateMexicoAccount
    - `rail` 'offramp', required
    - `type` 'mexico', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` AccountHolder, required
      - `type` 'individual' | 'business', required
      - `name` string, required — The name of the account holder. `individual`: first name and last name seperated by space. `business`: legal name of the business.
      - `email` string, email
      - `phone` string
      - `address` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `idType` 'CC' | 'CE' | 'NIT' | 'PASS' | 'PEP' — The type of ID document provided by the account holder. `CC`: Citizenship ID `CE`: Foreign ID `NIT`: National ID `PASS`: Passport `PEP`: Special Stay Permit
      - `idNumber` string — The ID number of the account holder.
    - `mexico` MexicoAccount, required
      - `speiProtocol` 'clabe' | 'debitcard' | 'phonenum', required — The SPEI protocol of the account.
      - `speiInstitutionCode` string — The institution code of the account. Required only if `speiProtocol` is `debitcard` or `phonenum`.
      - `speiClabe` string, required
      - `currency` 'mxn', required — The currency of the account.
  - CreateMexicoGlobalNetworkAccountIndividual
    - `rail` 'offramp', required
    - `type` 'mexicoGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `mexicoGlobalNetwork` MexicoGlobalNetworkAccount, required
      - `speiClabe` string — SPEI CLABE number for the account
      - `currency` 'mxn', required — The currency for the account
  - CreateMexicoGlobalNetworkAccountBusiness
    - `rail` 'offramp', required
    - `type` 'mexicoGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkBusinessAccountHolder, required
      - `name` string, required — Business name
      - `type` 'business', required
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `formationDate` string, date, required — Formation date in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
    - `mexicoGlobalNetwork` MexicoGlobalNetworkAccount, required
      - `speiClabe` string — SPEI CLABE number for the account
      - `currency` 'mxn', required — The currency for the account
  - CreateNigeriaGlobalNetworkAccountIndividual
    - `rail` 'offramp', required
    - `type` 'nigeriaGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `nigeriaGlobalNetwork` NigeriaGlobalNetworkAccount, required
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `currency` 'ngn', required — The currency for the account
  - CreateNigeriaGlobalNetworkAccountBusiness
    - `rail` 'offramp', required
    - `type` 'nigeriaGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkBusinessAccountHolder, required
      - `name` string, required — Business name
      - `type` 'business', required
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `formationDate` string, date, required — Formation date in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
    - `nigeriaGlobalNetwork` NigeriaGlobalNetworkAccount, required
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `currency` 'ngn', required — The currency for the account
  - CreateHongKongGlobalNetworkAccountIndividual
    - `rail` 'offramp', required
    - `type` 'hongKongGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `hongKongGlobalNetwork` HongKongGlobalNetworkAccount, required
      - `bankName` string, required — Bank name for the account
      - `accountNumber` string, required — Bank account number
      - `swiftCode` string, required — Bank code
      - `currency` 'hkd' | 'usd', required — The currency for the account
      - `bankCode` string — Bank code. Only required when transferType is chats or fps.
      - `transferType` 'chats' | 'fps' | 'swift' — Transfer type of the account. `swift` is the default transfer type if not provided.
  - CreateHongKongGlobalNetworkAccountBusiness
    - `rail` 'offramp', required
    - `type` 'hongKongGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkBusinessAccountHolder, required
      - `name` string, required — Business name
      - `type` 'business', required
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `formationDate` string, date, required — Formation date in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
    - `hongKongGlobalNetwork` HongKongGlobalNetworkAccount, required
      - `bankName` string, required — Bank name for the account
      - `accountNumber` string, required — Bank account number
      - `swiftCode` string, required — Bank code
      - `currency` 'hkd' | 'usd', required — The currency for the account
      - `bankCode` string — Bank code. Only required when transferType is chats or fps.
      - `transferType` 'chats' | 'fps' | 'swift' — Transfer type of the account. `swift` is the default transfer type if not provided.
  - CreateChinaGlobalNetworkAccountIndividual
    - `rail` 'offramp', required
    - `type` 'chinaGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `chinaGlobalNetwork` ChinaGlobalNetworkAccount, required
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `swiftCode` string — Bank code
      - `currency` 'usd' | 'cny', required — The currency for the account
  - CreateChinaGlobalNetworkAccountBusiness
    - `rail` 'offramp', required
    - `type` 'chinaGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkBusinessAccountHolder, required
      - `name` string, required — Business name
      - `type` 'business', required
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `formationDate` string, date, required — Formation date in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
    - `chinaGlobalNetwork` ChinaGlobalNetworkAccount, required
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `swiftCode` string — Bank code
      - `currency` 'usd' | 'cny', required — The currency for the account
  - CreateSingaporeGlobalNetworkAccountIndividual
    - `rail` 'offramp', required
    - `type` 'singaporeGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkIndividualAccountHolder, required — account holder information.
      - `name` string, required — Full name of the account holder
      - `type` 'individual', required — Type of account holder
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `dateOfBirth` string, date, required — Date of birth in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
      - `nationality` string, required — Three-letter country code (ISO 3166-1 alpha-3)
    - `singaporeGlobalNetwork` SingaporeGlobalNetworkAccount, required
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `swiftCode` string — Bank code
      - `currency` 'usd' | 'sgd', required — The currency for the account
  - CreateSingaporeGlobalNetworkAccountBusiness
    - `rail` 'offramp', required
    - `type` 'singaporeGlobalNetwork', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` GlobalNetworkBusinessAccountHolder, required
      - `name` string, required — Business name
      - `type` 'business', required
      - `address` object, required
        - `city` string, required
        - `country` string, required
        - `postalCode` string, required
        - `addressLine1` string, required
        - `addressLine2` string
        - `stateProvinceRegion` string, required
      - `formationDate` string, date, required — Formation date in YYYY-MM-DD format
      - `idNumber` string, required — Government issued ID number
    - `singaporeGlobalNetwork` SingaporeGlobalNetworkAccount, required
      - `bankName` string — Bank name for the account
      - `accountNumber` string — Bank account number
      - `swiftCode` string — Bank code
      - `currency` 'usd' | 'sgd', required — The currency for the account
  - CreateAfricaOnrampAccount
    - `rail` 'onramp', required
    - `type` 'africa', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `africa` AfricaAccount, required
      - `financialInstitute` string, required — The financial institute of the account. Financial institue type has to match the accountType. eg. accountType of bank requires financialInstitute of bank. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `financialInstitute` enum is supported under the `country` and `currency`.
      - `accountType` 'momo' | 'bank', required — The type of account.
      - `accountNumber` string — The account number of the account. Not required for `rail`: "onramp" with `accountType`: "bank". Required otherwise.
      - `currency` string, required — The currency of the account. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `currency` enum is supported under the `country` and `financialInstitute`.
      - `country` string, required — The country code of the account. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `country` enum is supported under the `currency` and `financialInstitute`.
  - CreateAfricaOfframpAccount
    - `rail` 'offramp', required
    - `type` 'africa', required — The type of account to create. The value of this field should match the acount info object field submitted. eg. if the type is `us`, only the `us` account object should be filled.
    - `accountHolder` AfricaAccountHolder, required
      - `type` 'individual' | 'business', required
      - `name` string, required — The name of the account holder. `individual`: first name and last name seperated by space. `business`: legal name of the business.
      - `email` string, email
      - `phone` string, required
      - `address` Address
        - `addressLine1` string, required
        - `addressLine2` string
        - `city` string, required
        - `stateProvinceRegion` string, required — The second part of the [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2). This must be provided if the country has subdivisions. An ISO 3166-2 code consists of two parts, separated by a hyphen (`-`): 1. The first part is the ISO 3166-1 alpha-2 code of the country (e.g., `US`, `CA`, `BR`); 2. The second part is a string of up to three alphanumeric characters representing a specific subdivision (e.g., state, province). This is typically based on national standards or developed by ISO. Only provide the second part of the code (e.g., `CA` for California in `US-CA`, or `SP` for São Paulo in `BR-SP`).
        - `postalCode` string, required — Must be supplied for countries that use postal codes.
        - `country` string, required — Three-letter alpha-3 country code as defined in the [ISO 3166-1 spec](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3).
      - `idType` 'CC' | 'CE' | 'NIT' | 'PASS' | 'PEP' — The type of ID document provided by the account holder. `CC`: Citizenship ID `CE`: Foreign ID `NIT`: National ID `PASS`: Passport `PEP`: Special Stay Permit
      - `idNumber` string — The ID number of the account holder.
    - `africa` AfricaAccount, required
      - `financialInstitute` string, required — The financial institute of the account. Financial institue type has to match the accountType. eg. accountType of bank requires financialInstitute of bank. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `financialInstitute` enum is supported under the `country` and `currency`.
      - `accountType` 'momo' | 'bank', required — The type of account.
      - `accountNumber` string — The account number of the account. Not required for `rail`: "onramp" with `accountType`: "bank". Required otherwise.
      - `currency` string, required — The currency of the account. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `currency` enum is supported under the `country` and `financialInstitute`.
      - `country` string, required — The country code of the account. Look at the list of supported combination of `country`, `currency`, and `financialInstitute` [here](https://docs.google.com/spreadsheets/d/1QxAWGoZMznB6_Ts4mzFcFD49ZOMUZNdNiR6wlr8NDL0/edit?gid=293141391#gid=293141391). Make sure the `country` enum is supported under the `currency` and `financialInstitute`.

## Response `200`

Success

- CreateAccountObject
  - `status` string
  - `message` string
  - `id` string

## Other responses

- `401` — Unauthorized
- `404` — Resource not found
- `500` — Internal Server Error

---

[API](https://skmtc.net/hifibridge/apis/hifi-api.md) · [All operations](https://skmtc.net/hifibridge/apis/hifi-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hifibridge/hifi-api/revisions/74d9e530fbea/schema)
