An account is a structure that is owned by an identity and has the underlying infratructure or connectivity to interact with stablecoins or fiat.
It is important to configure this correctly, including the web3 wallet provider choice. Please contact us if you have any questions during this process.
Accounts are ultimately linked to identities as a way to streamline and coalesce all places you may hold funds. This is generally a web3 wallet with stablecoins, but can also be your balance with a PFI in local fiat currency. Either way, an account is a flexible object to facilitate streamlined and standardized interactions with any PFI, or underlying infrastructure that suites you best.
Account structure diagram
Overview
Accounts help you group and organize multiple blockchain wallet addresses under a single logical entity, allowing you to operate on an account level rather than dealing with raw blockchain addresses directly. Accounts also facilitate seamless workflows between your blockchain wallets and your local fiat accounts held at some PFIs.
Structure
- Each Identity in the system is associated with: One Account and Multiple SubAccounts
- Each Account (including SubAccounts) can hold multiple Assets, but an asset cannot be duplicated within the same Account.
It is important to note, Borderless is never in the flow of funds. These accounts are either custodied with the PFI, the wallet provider, or self-custodied by the identity itsself. We do not provide any form of custody and we never initiate any movement of funds on behalf of the identity.
SubAccounts
SubAccounts function the same way as standard Accounts but follow the configuration and rules defined by the Primary Account. The only difference lies in the creation process, which is covered in the sections below on Account Creation and SubAccount Creation.
In all other operations â including Virtual Accounts, Withdrawals, Deposits, Transfers, and Asset Deposits â there is no difference between an Account and a SubAccount.
Throughout this documentation, the term Account refers to both Accounts and SubAccounts, unless explicitly stated otherwise.
Web3 wallet infrastructure
Web3 wallet infrastructure enables your organization to interact with web3 in a fast and convenient way. We offer several integration options depending on your infrastructure setup and needs. Please click through the tabs below to explore the different options you have available.
Bring Your Own Wallet
Utila
Dfns
Fireblocks
Multi-Provider
Standalone wallet infrastructure details
Best for advanced teams with custom infrastructure, or those looking for ultimate flexibility.
We support direct blockchain address usage, allowing you to connect with any web3 infrastructure you prefer. You manage all web3 interactions yourself â we provide the necessary endpoints and flexibility.In this setup, an Account within Borderless acts only as a wrapper around your existing blockchain addresses.Borderless can:
- Read and display on-chain data: balances, transactions
- Execute asset deposits to your addresses (Deposits, Asset-Deposits)
- We cannot execute any outbound transactions from your address.
Instead, for operations like withdrawals, we generate a transaction instructions, which includes all necessary transaction data, and a pre-built blockchain transaction payload.You are responsible for executing this transaction on-chain using your own infrastructure.Once the transaction is confirmed, the withdrawal flow continues as expected on the Borderless platform.All outbound transaction signing happens on your side using your standalone wallet â Borderless does not manage key material or signing operations.
Utila wallet infrastructure details
Best for Organizations already working with Utila.
We also support direct integration with Utila. If Utila is already part of your infrastructure, this option enables a smooth transition to our platform.Utila uses non-custodial wallets, meaning you are the sole-custodian of your assets, and Borderless does not have access at any time to move the funds on your behalf. These are also using MPC technology for additional layers of security.An MPC wallet is a multi-party computational wallet, meaning your private key, which is used to secure the wallet, is encrypted and then broken into three parts which are managed by yourself, and Utila technology separately. Itâs important to note, that Borderless never receives a copy of this private key, and does not gain controlling access at any point.All outbound transaction signing happens on your side using Utila â Borderless does not manage key material or signing operations.
Dfns wallet infrastructure details
Best for Organizations already working with Dfns.
If youâre already using Dfns as your wallet infrastructure, we offer seamless integration.We connect Borderless to your existing Dfns account structure with minimal configuration.Dfns uses non-custodial wallets, meaning you are the sole-custodian of your assets, and Borderless does not have access at any time to move the funds on your behalf. These are also using MPC technology for additional layers of security.An MPC wallet is a multi-party computational wallet, meaning your private key, which is used to secure the wallet, is encrypted and then broken into three parts which are managed by yourself, and Dfns technology separately. Itâs important to note, that Borderless never receives a copy of this private key, and does not gain controlling access at any point.All outbound transaction signing happens on your side using Dfns â Borderless does not manage key material or signing operations.
Fireblocks wallet infrastructure details
Best for Organizations already working with Fireblocks.
If youâre already using Fireblocks as your wallet infrastructure, we offer seamless integration.We connect Borderless to your existing Fireblocks account structure with minimal configuration. Simply configure your onchain address into our âBring Your Own Walletâ configuration.Fireblocks uses non-custodial wallets, meaning you are the sole-custodian of your assets, and Borderless does not have access at any time to move the funds on your behalf. These are also using MPC technology for additional layers of security.An MPC wallet is a multi-party computational wallet, meaning your private key, which is used to secure the wallet, is encrypted and then broken into three parts which are managed by yourself, and Fireblocks technology separately. Itâs important to note, that Borderless never receives a copy of this private key, and does not gain controlling access at any point.Multi-wallet infrastructure details
Best for power users needing maximum flexibility and managing multiple infrastructures.
This mode allows you to assign different providers on a main account basis rather than organization-wide. While powerful, it introduces complexity in account management and is not recommended for users unfamiliar with web3 wallet management.Unlike other providers, MultiProvider does not offer its own Web3 infrastructure integration. Instead, it shifts the provider selection from the organization level to the account level.With MultiProvider, each identity account can be created using a different Web3 provider. SubAccounts automatically inherit the Web3 provider of the main Account of Identity.All outbound transaction signing happens on your side using your standalone wallet â Borderless does not manage key material or signing operations.
Web3 Accounts
Step 1: Web3 Account creation
Letâs create our first account. Please use the tabs to explore specific account creation examples for the web3 infrastructure you use. After this, we will add stablecoin assets.
Please capture account id from the response to use it as needed later.
Bring Your Own Wallet
Utila
Dfns
With this provider, Account-level configuration is not required. Blockchain addresses are linked directly to Account Assets, not the Account itself. As such, no additional fields are required for creating Accounts or SubAccounts: Enable Utila as your infrastructure provider
Before using the Utila provider, you must already have access to Utila infrastructure and it must be integrated with your system. To enable Borderless-Utila integration, follow these steps:
-
Go to your Utila console and open your organization.
-
Open the Service Accounts tab.
-
Create a new Service Account.
-
Copy the Service Account Id and private RSA Key and use them to configure your Borderless integration.
Important: Ensure you grant read-only permissions only. Do not include Write, Create, Sign, or Update permissions. Borderless does not require them and assumes no responsibility if they are granted.
To configure Borderless, use the following API endpoint:Create account and add assets with Utila
Once you have linked your Utila account for streamlined interoperability, you can set up an account with your Utila infrastructure similarly to how you would for standalone wallets.The main difference is when adding an asset to a Borderless Account, you must include the corresponding utilaServiceAccount of a wallet that already exists in your Utila setup.When using Utila, Borderless does not link the Account entity directly to a Utila wallet.
Instead, the linkage is done at the Asset level, during asset address assignment. Therefore, no additional fields are required when creating an Account or SubAccount under Utila.Enable Dfns as your infrastructure provider
Before using the Dfns provider, you must already have access to Dfns infrastructure and it must be integrated with your system. To enable Borderless-Dfns integration, follow these steps:
-
Go to your Dfns console and open your organization.
-
From the left menu, navigate to Settings.
-
Open the Service Accounts tab.
-
Create a new Service Account (e.g. named Borderless Integration) and fill in all required fields.
-
Create a new Permission set including only:
âWallets:Transactions:Readâ, âWallets:Transfers:Readâ, âWallets:ReadTransactionâ, âWallets:ReadTransferâ
Important: Ensure you grant read-only permissions only. Do not include Write, Create, Sign, or Update permissions. Borderless does not require them and assumes no responsibility if they are granted.
-
After creation, open the Service Account and assign Permissions.
-
Copy the auth token and use it along with your appId to configure your Borderless integration. To configure Borderless, use the following API endpoint:
Create account and add assets with Dfns
Once you have linked your Dfns account for streamlined interoperability, you can set up an account with your Dfns infrastructure similarly to how you would for standalone wallets.The main difference is when adding an asset to a Borderless Account, you must include the corresponding dfnsWalletId of a wallet that already exists in your Dfns setup.When using Dfns, Borderless does not link the Account entity directly to a Dfns wallet.
Instead, the linkage is done at the Asset level, during asset address assignment. Therefore, no additional fields are required when creating an Account or SubAccount under Dfns.
Step 2: Adding assets to account
With an account set up for this identity, itâs necessary to add assets to the account. Specifically, these assets are the stablecoin funds that will be used to initiate off-ramp payments into local fiat currencies. These accounts will also be used to receive funds when on-ramping payments between local fiat currencies and stablecoins.
Please note that when you add new assets to your account, this is a configuration for the stablecoin wallet infrastructure to track these assets correctly. This does not mean you are sending real stablecoin funds to this account with this endpoint. Borderless is fully non-custodial, you will need to transfer your stablecoins directly to this wallet address yourself, or receive funds from an on-ramp transaction.
Please use the account id from the response to the previous request above.
Please double check the walletâs blockchain matches the blockchain of the Asset youâre adding.
If not, the operation will fail with an error, and funds may be lost.
Please check for Tron-based assets, that the generated address is activated by sending a minimum of 0.1 TRX to it.
Step 3: Check account balances
Once you receive funds to this account, and added the stablecoin assets to be tracked on the account, you can easily check the balances at any time. Just pass the account id as a parameter in the request, and the balance is returned.
PFI Accounts
Step 1: Account creation
Letâs create our first PFI account. After this, we will add fiat currencies.
Please capture account id from the response to use it as needed later.
Before creating a PFI Account, you must first configure Borderless access to the specific PFI you want to use. To do this, use the Integrations API request for that PFI.
For example to configure Finity, use the following API endpoint:
Endpoint: PUT /organizations/integrations/finity
Once access to the PFI provider is configured, you can create a PFI Account that will operate with it. To do this, use the standard Account creation request and include the pfi property with the name of the PFI you want to link to this Account.
Make sure the fiat currency is supported by chosen PFI provider before adding it to the PFI Account.
Endpoint: POST /accounts/
Step 2: Adding fiat to account
With a PFI Account set up for this identity, it is necessary to add fiat currencies to the account (for example, COP, USD, BRL) that will be used to send payouts, perform exchanges into this PFI Account.
Please use the account id from the response to the previous request above.
Endpoint: POST /accounts/{id}/assets
Step 3: Check account balances
Once you receive funds to this account, and added the stablecoin assets to be tracked on the account, you can easily check the balances at any time. Just pass the account id as a parameter in the request, and the balance is returned.
Endpoint: GET /accounts/{id}/balances
If you have any questions, please donât hesitate to reach out to us via email or slack.