API / Reference / Bank Accounts
Create bank account
POST
https://api.light.inc/v1/bank-accounts
Creates a bank account along with its linked ledger (chart-of-accounts) entry in a single transaction. The ledger account code must be a unique 6-digit integer within the company's chart of accounts.
The ledger account is created with fixed attributes you cannot choose: type BANK, active, revalued for FX at end-of-month rates, in the bank account's currency, scoped to the one companyEntityId. Its label defaults to the bank account's name, not the bank name as the description says. code must be exactly six digits (LEDGER_ACCOUNT_CODE_LENGTH) and unused (BANK_ACCOUNT_LEDGER_ACCOUNT_CODE_ALREADY_EXISTS; nothing is created). bankProvider: OTHER requires bankName; other providers fill it in. The response's type and paymentSchedulingEligibility are derived from the provider (only Airwallex accounts are VIRTUAL; only providers Light can pay through are INTERNAL, everything else INELIGIBLE). Company-admin role only.
Authorization
Send one of these on every request. See Authentication for how to get credentials.
- API key
Basic authentication header of the form Basic <api_key>, where <api_key> is your api key.
- Bearer token
Request body
application/json;charset=UTF-8
-
companyEntityIdstring · uuidrequiredID of the company entity this bank account belongs to.
-
namestringrequiredBank account display name.
-
bankProviderstringrequiredBank provider. Use OTHER if no specific provider applies.
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
ABANCAABN_AMROAGRICULTURAL_BANK_OF_CHINAAIRWALLEXAKTIA_BANKALANDS_BANKENANZ_GROUPARBEJDERNES_LANDSBANKARION_BANKBANCA_MARCHBANCA_NAZIONALE_DEL_LAVOROBANCO_BPMBANCO_BRADESCOBANCO_DO_BRASILBANCO_SABADELLBANCO_SANTANDERBANK_NORWEGIANBANK_OF_AMERICABANK_OF_BEIJINGBANK_OF_CHINABANK_OF_COMMUNICATIONSBANK_OF_JIANGSUBANK_OF_MONTREALBANK_OF_NINGBOBANK_OF_SHANGHAIBANK2BANKINTERBANQUE_PALATINEBARCLAYSBAYERNLBBBVABCC_MILANOBN_BANKBNP_PARIBASBNY_MELLONBOURSORAMACAIXA_ECONOMICA_FEDERALCAIXABANKCANADIAN_IMPERIAL_BANK_OF_COMMERCECAPITAL_ONECHARLES_SCHWABCHINA_CITIC_BANKCHINA_CONSTRUCTION_BANKCHINA_EVERBRIGHT_BANKCHINA_GUANGFA_BANKCHINA_MERCHANTS_BANKCHINA_MINSHENG_BANKCHINA_ZHESHANG_BANKCITIGROUPCOMMERZBANKCOMMONWEALTH_BANKCREDIT_AGRICOLECREDIT_DU_NORDCREDIT_MUTUELCULTURA_SPAREBANKDANSKE_BANKDBS_GROUPDEUTSCHE_BANKDNBDNB_BANKDZ_BANKERSTE_GROUPFELLOW_BANKGOLDMAN_SACHSGRASSHOPPERGROUPE_BPCEHANA_FINANCIALHANDELSBANKENHDFC_BANKHELABAHSBCHSBC_FRANCEHUAXIA_BANKHYPOIKANO_BANKINDUSTRIAL_AND_COMMERCIAL_BANK_OF_CHINAINDUSTRIAL_BANKINDUSTRIAL_BANK_OF_KOREAING_DIBAING_GROUPING_SPAININSTABANKINTESA_SANPAOLOISLANDSBANKIITAU_UNIBANCOJAPAN_POST_BANKJPM_CHASEJYSKEKB_FINANCIAL_GROUPKBC_GROUPKFW_BANKKUTXABANKLA_BANQUE_POSTALELANDKREDITT_BANKLANDESBANK_BADEN_WURTTEMBERGLANDESBANK_BADEN_WURTTEMBERG_LBBWLANDESBANK_BERLINLANDSBANKINNLANSFORSAKRINGAR_BANKLLOYDS_BANKLLOYDS_BANKING_GROUPMERCURYMITSUBISHI_UFJ_FINANCIAL_GROUPMIZUHO_FINANCIAL_GROUPMONZOMORGAN_STANLEYNATIONAL_AUSTRALIA_BANKNATIONAL_BANK_OF_CANADANATIONWIDE_BUILDING_SOCIETYNATWESTNATWEST_GROUPNOMURA_HOLDINGSNONGHYUP_BANKNORDEANORDLBNORINCHUKIN_BANKNYKREDIT_BANKOCBCOP_BANKOTHERPARETO_BANKPAYPALPING_AN_BANKPNC_FINANCIAL_SERVICESPOP_PANKKIPOSTAL_SAVINGS_BANK_OF_CHINAQATAR_NATIONAL_BANKRABOBANKRAIFFEISEN_GROUPRESONA_HOLDINGSREVOLUTRINGKJOBING_LANDBOBANKROYAL_BANK_OF_CANADAS_PANKKISANTANDERSANTANDER_UKSAXO_BANKSBANKENSBERBANK_RUSSIASCOTIABANKSEBSHANGHAI_PUDONG_DEVELOPMENT_BANKSHINHAN_FINANCIALSMBC_GROUPSOCIETE_GENERALESPAR_NORD_BANKSTANDARD_CHARTEREDSTARLING_BANKSTATE_BANK_OF_INDIASTOREBRAND_BANKSTRIPESUMITOMO_MITSUI_TRUSTSVBSVENSKA_HANDELSBANKENSWEDBANKSYDBANKTORONTO_DOMINION_BANKTRUIST_FINANCIALTSB_BANKUBSUNICAJA_BANCOUNICREDITUNICREDIT_BANK_HYPOVEREINSBANKUNITED_OVERSEAS_BANKUS_BANCORPVEKSELBANKENVIRGIN_MONEYWELLS_FARGOWESTPACWISEWINTRUST_BANKWOORI_FINANCIALYA_BANKZKB -
currencystringrequired -
bankCountrystringrequiredBank country (ISO 3166-1 alpha-2).
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
UNDEFINEDACADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBLBMBNBOBQBRBSBTBUBVBWBYBZCACCCDCFCGCHCICKCLCMCNCOCPCRCSCUCVCWCXCYCZDEDGDJDKDMDODZEAECEEEGEHERESETEUEZFIFJFKFMFOFRFXGAGBGDGEGFGGGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUICIDIEILIMINIOIQIRISITJEJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMEMFMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNTNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORSRURWSASBSCSDSESFSGSHSISJSKSLSMSNSOSRSSSTSUSVSXSYSZTATCTDTFTGTHTJTKTLTMTNTOTPTRTTTVTWTZUAUGUKUMUSUYUZVAVCVEVGVIVNVUWFWSXIXUXKYEYTYUZAZMZRZW -
ledgerAccountobjectrequiredLedger account (chart of accounts entry) created and linked to this bank account.
-
codeinteger · int32requiredLedger account code. Must be a unique 6-digit integer within the company's chart of accounts.
-
labelstringLedger account label. Defaults to the bank name when omitted.
-
-
ibanstringIBAN. Required (with BIC) for IBAN countries.
-
bicstringBIC / SWIFT code. Required (with IBAN) for IBAN countries.
-
domesticBankAccountNumberstringDomestic bank account number. Used for non-IBAN countries; must be paired with domesticBankCode.
-
domesticBankCodestringDomestic bank code (e.g. routing/sort code). Must be paired with domesticBankAccountNumber.
-
bankNamestringBank name.
-
bankCitystringBank city.
-
bankAddressstringBank street address.
-
bankZipcodestringBank ZIP / postal code.
-
bankStatestringBank state / region.
-
defaultChargeBearerCodestringDefault charge bearer for international transfers. OUR = sender pays all fees, SHAR = fees shared.
OUR- Sender pays all feesSHAR- Fees are shared between sender and receiver
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
OURSHAR
Response
-
idstring · uuidUnique identifier for the bank account object
-
companyIdstring · uuidID of the company
-
companyEntityIdstring · uuidID of the entity
-
namestringBank account display name
-
typestringType of the bank account (physical or virtual)
PHYSICAL- A physical bank accountVIRTUAL- A virtual bank account
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
PHYSICALVIRTUAL -
bankProviderstringBank provider
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
ABANCAABN_AMROAGRICULTURAL_BANK_OF_CHINAAIRWALLEXAKTIA_BANKALANDS_BANKENANZ_GROUPARBEJDERNES_LANDSBANKARION_BANKBANCA_MARCHBANCA_NAZIONALE_DEL_LAVOROBANCO_BPMBANCO_BRADESCOBANCO_DO_BRASILBANCO_SABADELLBANCO_SANTANDERBANK_NORWEGIANBANK_OF_AMERICABANK_OF_BEIJINGBANK_OF_CHINABANK_OF_COMMUNICATIONSBANK_OF_JIANGSUBANK_OF_MONTREALBANK_OF_NINGBOBANK_OF_SHANGHAIBANK2BANKINTERBANQUE_PALATINEBARCLAYSBAYERNLBBBVABCC_MILANOBN_BANKBNP_PARIBASBNY_MELLONBOURSORAMACAIXA_ECONOMICA_FEDERALCAIXABANKCANADIAN_IMPERIAL_BANK_OF_COMMERCECAPITAL_ONECHARLES_SCHWABCHINA_CITIC_BANKCHINA_CONSTRUCTION_BANKCHINA_EVERBRIGHT_BANKCHINA_GUANGFA_BANKCHINA_MERCHANTS_BANKCHINA_MINSHENG_BANKCHINA_ZHESHANG_BANKCITIGROUPCOMMERZBANKCOMMONWEALTH_BANKCREDIT_AGRICOLECREDIT_DU_NORDCREDIT_MUTUELCULTURA_SPAREBANKDANSKE_BANKDBS_GROUPDEUTSCHE_BANKDNBDNB_BANKDZ_BANKERSTE_GROUPFELLOW_BANKGOLDMAN_SACHSGRASSHOPPERGROUPE_BPCEHANA_FINANCIALHANDELSBANKENHDFC_BANKHELABAHSBCHSBC_FRANCEHUAXIA_BANKHYPOIKANO_BANKINDUSTRIAL_AND_COMMERCIAL_BANK_OF_CHINAINDUSTRIAL_BANKINDUSTRIAL_BANK_OF_KOREAING_DIBAING_GROUPING_SPAININSTABANKINTESA_SANPAOLOISLANDSBANKIITAU_UNIBANCOJAPAN_POST_BANKJPM_CHASEJYSKEKB_FINANCIAL_GROUPKBC_GROUPKFW_BANKKUTXABANKLA_BANQUE_POSTALELANDKREDITT_BANKLANDESBANK_BADEN_WURTTEMBERGLANDESBANK_BADEN_WURTTEMBERG_LBBWLANDESBANK_BERLINLANDSBANKINNLANSFORSAKRINGAR_BANKLLOYDS_BANKLLOYDS_BANKING_GROUPMERCURYMITSUBISHI_UFJ_FINANCIAL_GROUPMIZUHO_FINANCIAL_GROUPMONZOMORGAN_STANLEYNATIONAL_AUSTRALIA_BANKNATIONAL_BANK_OF_CANADANATIONWIDE_BUILDING_SOCIETYNATWESTNATWEST_GROUPNOMURA_HOLDINGSNONGHYUP_BANKNORDEANORDLBNORINCHUKIN_BANKNYKREDIT_BANKOCBCOP_BANKOTHERPARETO_BANKPAYPALPING_AN_BANKPNC_FINANCIAL_SERVICESPOP_PANKKIPOSTAL_SAVINGS_BANK_OF_CHINAQATAR_NATIONAL_BANKRABOBANKRAIFFEISEN_GROUPRESONA_HOLDINGSREVOLUTRINGKJOBING_LANDBOBANKROYAL_BANK_OF_CANADAS_PANKKISANTANDERSANTANDER_UKSAXO_BANKSBANKENSBERBANK_RUSSIASCOTIABANKSEBSHANGHAI_PUDONG_DEVELOPMENT_BANKSHINHAN_FINANCIALSMBC_GROUPSOCIETE_GENERALESPAR_NORD_BANKSTANDARD_CHARTEREDSTARLING_BANKSTATE_BANK_OF_INDIASTOREBRAND_BANKSTRIPESUMITOMO_MITSUI_TRUSTSVBSVENSKA_HANDELSBANKENSWEDBANKSYDBANKTORONTO_DOMINION_BANKTRUIST_FINANCIALTSB_BANKUBSUNICAJA_BANCOUNICREDITUNICREDIT_BANK_HYPOVEREINSBANKUNITED_OVERSEAS_BANKUS_BANCORPVEKSELBANKENVIRGIN_MONEYWELLS_FARGOWESTPACWISEWINTRUST_BANKWOORI_FINANCIALYA_BANKZKB -
paymentSchedulingEligibilitystringPayment scheduling eligibility for this bank account
INTERNAL- Eligible for payment scheduling via Light internal capabilitiesBANK_PROVIDER- Eligible for payment scheduling via the bank providerINELIGIBLE- Not eligible for payment scheduling
⚠️ This enum is not exhaustive; new values may be added in the future.
Derived from the provider:
INTERNALfor banks Light can pay through, otherwiseINELIGIBLE. Accounts created here never come back asBANK_PROVIDER.One of
INTERNALBANK_PROVIDERINELIGIBLE -
ibanstringIBAN
-
bicstringBIC / SWIFT code
-
domesticBankAccountNumberstringDomestic bank account number
-
domesticBankCodestringDomestic bank code / routing code
-
currencystring -
bankCountrystringBank country (ISO 3166-1 alpha-2)
⚠️ This enum is not exhaustive; new values may be added in the future.
One of
UNDEFINEDACADAEAFAGAIALAMANAOAQARASATAUAWAXAZBABBBDBEBFBGBHBIBJBLBMBNBOBQBRBSBTBUBVBWBYBZCACCCDCFCGCHCICKCLCMCNCOCPCRCSCUCVCWCXCYCZDEDGDJDKDMDODZEAECEEEGEHERESETEUEZFIFJFKFMFOFRFXGAGBGDGEGFGGGHGIGLGMGNGPGQGRGSGTGUGWGYHKHMHNHRHTHUICIDIEILIMINIOIQIRISITJEJMJOJPKEKGKHKIKMKNKPKRKWKYKZLALBLCLILKLRLSLTLULVLYMAMCMDMEMFMGMHMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZNANCNENFNGNINLNONPNRNTNUNZOMPAPEPFPGPHPKPLPMPNPRPSPTPWPYQARERORSRURWSASBSCSDSESFSGSHSISJSKSLSMSNSOSRSSSTSUSVSXSYSZTATCTDTFTGTHTJTKTLTMTNTOTPTRTTTVTWTZUAUGUKUMUSUYUZVAVCVEVGVIVNVUWFWSXIXUXKYEYTYUZAZMZRZW -
bankCitystringBank city
-
bankAddressstringBank address
-
bankZipcodestringBank ZIP / postal code
-
bankNamestringBank name
-
bankStatestringBank state / region
-
ledgerAccountCodeinteger · int32Ledger account code linked to this bank account
-
createdAtstring · date-timeTimestamp when the bank account was created