Skip to content
Documentation

User manual

How to set up and run your own NuVora Tokenization platform: for company admins and their staff, and for the investors who use it.

Updated 28 October 2026

Contents

Before you start

What NuVora is, who does what, and what to prepare.

How NuVora works#

NuVora gives your company its own, fully separate tokenization platform. It runs on your domain, on the blockchain you choose, and only your wallet controls it. NuVora provides the platform software. You own everything that runs on it.

WhoWhat they do
Company admin (you)Applies, deploys the platform from MetaMask, funds gas, connects the domain and providers, and approves admin actions.
StaffYour team: compliance, analysts, payments, gas, price feeds and reports. Each person gets only the roles they need.
IssuersCompanies that issue tokens on your platform. They request token launches and approve investments in their sales.
InvestorsPeople and companies who pass KYC on your platform, invest in sales and hold tokens.
NuVoraReviews your application, provides the software and the supported chains, and hosts the app on your domain. NuVora has no role in your contracts.

What you need#

  • A MetaMask wallet for your company admin. It will own your contracts. Use a wallet only your company controls. A hardware wallet connected to MetaMask is a good choice.
  • Your company documents for KYB: registration details and information about the people who own and run the company.
  • Native coins on your chain to pay gas for the deployment and to fund your paymaster.
  • A domain you control, with access to its DNS settings.
  • Your logo and brand colour for your own landing page and dashboards.
  • Optional: your own MongoDB if you want your database on your own infrastructure (planned). Otherwise NuVora hosts a separate database for you.
  • A Sumsub account for your investors' KYC. You can connect it after deployment.
  • A Fireblocks workspace for custody and secondary trading. You can add it later.

For company admins

From your application to a live platform, then day-to-day operations. Want a hand? Our free setup and onboarding help guides your team through KYB, network and chain, deployment, your database, your domain, Sumsub and Fireblocks. You still sign every transaction yourself.

1. Apply for access#

Applying is free. You apply on the NuVora website with the wallet that will become your company admin wallet.

  1. Open the NuVora website and select Apply.
  2. Connect your MetaMask wallet. This wallet becomes your company admin wallet.
  3. Sign the sign-in message. Signing is free. It sends no transaction.
  4. Fill in the application: legal name, country, registration number, contact email and the subdomain you would like.
  5. Upload your company documents and submit.

2. KYB verification#

KYB means Know Your Business. NuVora verifies your company before you can deploy a platform.

  • NuVora creates an on-chain identity for your company on NuVora's home chain: ADI Testnet for testnet companies and ADI Mainnet for mainnet companies.
  • Verification runs through NuVora's own Sumsub account. Follow the steps on screen.
  • Your documents are never written on-chain. Only a claim (a signed record that says your company is verified) is added to your company identity.

3. Review and approval#

NuVora reviews your application and your KYB result. You get an email with the decision.

  • Approved: NuVora adds a KYB claim to your company identity and marks your company as approved in the NuVora company registry. Your email has the link to continue.
  • Rejected: your email tells you the decision. Nothing was deployed and nothing was charged.

4. Choose your network and chain#

  1. Sign in with your admin wallet and open Setup.
  2. Choose Testnet (to try) or Mainnet (to go live). Our team reviews every mainnet launch before deployment, and we email you as soon as your platform is ready to deploy.
  3. Choose a chain. The list only shows chains of the type you picked.
  4. Confirm. MetaMask asks to add or switch to that chain. Approve it.
Supported networkChain ids and availability
ADI ChainMainnet 36900 · ADI Testnet 99999. Available.
EthereumMainnet 1 · Sepolia 11155111. Available.
BaseMainnet 8453 · Base Sepolia 84532. Available.
Arbitrum OneMainnet 42161 · Arbitrum Sepolia 421614. Available.
BNB Smart ChainMainnet 56 · BNB Smart Chain Testnet 97. Available.
OP MainnetMainnet 10 · OP Sepolia 11155420. Available.
Polygon PoSMainnet 137 · Polygon Amoy 80002. Available.
Avalanche C-ChainMainnet 43114 · Avalanche Fuji 43113. Available.
Lives on your chainNotes
Your contractsThe full suite you deploy in the next step.
TokensEvery token you launch.
Investor identities and claimsONCHAINID identities and their KYC claims.
Paymaster and gasYour gas deposit and your operational wallets.
StablecoinSet by NuVora for each chain: a test stablecoin on testnets, a real one on mainnets.

5. Deploy your platform#

The deploy wizard creates your own copy of the platform contracts (your suite) from your wallet. You send about seven transactions. Each one is a MetaMask popup, and you pay its gas.

StepWhat it creates
1Your access manager. It will hold every role and permission of your platform.
2The identity factory and its tools: key approval, reputation registry and signature validator.
3Identity policies and the list of claim topics.
4Your token registry: your own implementation authority, the T-REX factory and the investor identity registry.
5Onboarding, your paymaster, and your platform identities (admin, operations and KYC issuer).
6The role manager, permissions, and the issuer and staff roles.
7Compliance modules, token factory, price feeds, sale factory and stablecoin settings. Then the hand-over to you.

Run the wizard

  1. Check that your admin wallet has enough native coin for gas on your chain.
  2. Start the first step. MetaMask shows the transaction. Check that it goes to the NuVora suite factory on your chain, then confirm.
  3. Wait until the step is complete. The wizard shows the transaction hash and the new contract addresses, with links to the block explorer.
  4. Continue with the next step. You can close the page and come back later. The wizard continues where you stopped.
  5. If a step fails, run the same step again. Earlier steps are kept.

The hand-over

The last step gives the admin role and every permission to your admin identity. Its management key is your MetaMask wallet. The factory then gives up every role it held.

NuVora then checks your contracts: your admin identity holds the admin role, and neither the factory nor any NuVora address holds a role. Only after this check is your platform marked Deployed.

6. Fund your paymaster#

Your paymaster is an ERC-4337 contract that pays gas for your investors and staff. It spends a deposit that you fund from your own wallet. NuVora never pays into it and never holds it.

  1. In the funding step of Setup, enter the amount to deposit.
  2. Confirm the transaction in MetaMask. The deposit goes from your wallet to your paymaster on your chain.
  3. Fund the operational wallets that Setup lists, in the same way.

How much? It depends on your chain's gas price and on how active your investors are. Start small on testnet and watch the balance in your dashboard.

7. Your database: hosted, bring your own, or self-hosted#

At setup you choose where your company's database runs. It holds your investors' profiles, KYC records and settings. In every option the database is yours alone: nothing is shared with other companies.

OptionWhat it means
Hosted by NuVora (default)NuVora creates a separate database only for your company. It is the quickest way to start, and a good fit for testnet.
Bring your own database (planned)You create MongoDB in your own account (MongoDB Atlas or your own servers) and NuVora connects to it. All data stays in your own infrastructure.
Fully self-hosted (coming later)You run the platform software yourself (API and web app, as Docker images) on your own servers and domain. NuVora only keeps your registration and status.

Bring your own database, step by step

MongoDB must run as a replica set, version 7 or later. The platform needs this for transactions.

  1. Create the database. MongoDB Atlas: create a project and a cluster (Atlas clusters are already replica sets). Your own servers: run MongoDB as a replica set with authentication and TLS turned on. For production, use at least three members.
  2. Create a database user with access to one database only: read and write rights on that database (for example the readWrite role on nuvora_testnet) and nothing else. Use a long, random password.
  3. Allow NuVora's servers. Your dashboard lists NuVora's server IP addresses. Add them to your network allowlist (in Atlas, the IP access list; on your own servers, the firewall). Do not open the database to every address (0.0.0.0/0).
  4. Copy the connection string. In Atlas it is under Connect, for example mongodb+srv://user:password@cluster0.example.mongodb.net/nuvora_testnet. On your own servers it looks like mongodb://user:password@db1.example.com:27017,db2.example.com:27017,db3.example.com:27017/nuvora_testnet?replicaSet=rs0&tls=true.
  5. Paste the connection string in your admin dashboard. It is stored encrypted.
  6. Run the connection test. When it passes, NuVora sets up the tables (collections and indexes).

8. Connect your domain#

Investors use your platform on your own domain, for example invest.yourcompany.com.

  1. In Setup, add the domain or subdomain you want to use.
  2. The dashboard shows the DNS records to create: a TXT record with a verification token, and a record that points your domain to the platform.
  3. Add these records at your DNS provider. Copy the values exactly.
  4. Return to Setup and verify the domain. DNS changes can take from a few minutes to a few hours.
  5. After verification, a TLS certificate is set up, so your domain works over https.

From then on, wallets that connect on your domain become your users, stored in your database.

9. Brand your platform#

Your platform has its own landing page and dashboards, in your brand, on your domain. You set this up in Settings → Branding, with a live preview before you publish.

FieldWhat it does
Logo (light and dark)Shown in the header of your landing page and dashboards. Upload one version for light backgrounds and one for dark backgrounds.
FaviconThe small icon in the browser tab. Use a square image.
Company nameShown in the header and in the browser tab title.
TaglineA short line under your name on the landing page.
Primary brand colourUsed for buttons, links and highlights on your landing page and dashboards.
About usA short text about your company on the landing page.
Contact detailsYour contact email, website and social links, on the landing page and in the footer.
Terms and privacy linksLinks to your own terms and privacy pages, shown in the footer.
Hero image (optional)A large image at the top of your landing page.

What your users see

  • Your domain shows your landing page with a Connect wallet button.
  • Investors, issuers and staff connect there and land on their own dashboard. New wallets go to registration first.
  • The dashboards use your logo and your colour.
  • A small "Powered by NuVora" link appears in the footer.

10. Connect Sumsub (investor KYC)#

Your investors verify their identity in your own Sumsub account. Results come back to your platform. Approved results become claims on the investor's on-chain identity.

Value in NuVoraWhere to find it in Sumsub
App tokenIn the Sumsub dashboard, open the developer area (Dev space) and go to App tokens. Create a new app token.
Secret keyShown together with the app token when you create it. Copy it at once: Sumsub shows it only one time.
Webhook secretIn the developer area, open Webhooks and create a webhook with the URL from your NuVora settings. Set a secret key there and copy the same value into NuVora.
Individual level nameThe name of the verification level for individual investors, exactly as written in Sumsub (for example basic-kyc-level).
Company level nameThe name of the level for companies (KYB), for example basic-kyb-level.
  1. In your dashboard, open Settings and then Sumsub.
  2. Copy the webhook URL shown there. It is unique to your company.
  3. In Sumsub, create the app token and the webhook as described above.
  4. Paste the five values into NuVora and save.
  5. Run the connection test.

11. Connect Fireblocks (custody and trading)#

Fireblocks is used for custody and secondary trading. Investors can move tokens to Fireblocks addresses, and exchanges connect through Fireblocks.

Value in NuVoraWhere to find it in Fireblocks
API keyIn the Fireblocks Console, open the API users page in the developer area. Create an API user for NuVora. Its API key is shown in the list.
Secret keyThe private key you generated when you created the API user (it matches the certificate request you uploaded). Paste its contents.
Vault account ID(s)The vault accounts to use for your platform, from the vault accounts page. Copy each ID.
  1. Create the API user in Fireblocks. Give it only the permissions it needs, and use Fireblocks policy rules to limit what it can do.
  2. In your dashboard, open Settings and then Fireblocks.
  3. Paste the API key, the secret key and the vault account IDs. Save.
  4. Run test connection.

12. Roles and staff#

Your admin wallet holds every permission. Give your staff only what they need.

Default roleWhat it can do
System managerAdd staff, manage roles and assign them.
Compliance managerDecide KYC and KYB, add and revoke claims.
Identity managerRegister investors in the identity registry.
Claim policy managerManage claim topics.
AuditorRead only: users, reports and every transaction.
Gas managerPaymaster deposit, top-ups and gas usage.
Feeds managerPublish token prices.
AnalystApprove token launches and give the second approval on investments.
Payment managerConfirm bank transfer payments.
  1. Open Staff in your dashboard. Add the staff member's wallet and choose their roles.
  2. The staff member connects their own wallet on your domain and completes KYC.
  3. After compliance approval, the roles are assigned on-chain. You approve this in MetaMask (see Approvals in MetaMask).
  • You can create new roles, change their permissions (everyone with that role follows), and remove roles nobody uses.
  • Nobody can give a role to themselves.
  • Staff roles need a verified person (KYC and AML claims). The issuer role needs a verified company (KYB, AML and issuer jurisdiction claims).
  • Staff with the reports permission can export reports from Reports as Excel (.xlsx), Word (.doc) or CSV.

13. Launch a token#

Tokens are launched by issuers. An issuer registers on your domain and passes KYB. After approval it receives the issuer role, which you approve in MetaMask.

The launch request

The issuer requests a launch. Nothing is deployed yet. The request contains:

  • Name and symbol.
  • Description and an optional picture for investors.
  • Supply for this round and the price per token at launch.
  • Whether bank transfers are accepted.
  • Investor countries allowed, and an optional maximum per investor.

Approval

  1. An analyst reviews the request.
  2. On approval, one transaction deploys the token and opens its sale.
  3. The analyst can also reject it with a reason. The issuer can withdraw the request while it waits.

14. Run a primary sale#

  1. Investors invest in the sale. They pay in your chain's stablecoin, which is locked in the sale, or by bank transfer if the token accepts it. A payment manager confirms bank transfers.
  2. Each investment reserves its amount, so a sale cannot be oversold. The maximum per investor counts all of an investor's open investments.
  3. The issuer approves each investment first. Then an analyst gives the second approval.
  4. The sale settles when approved investments reach the round's supply, or when the issuer closes the sale, and no investment is still waiting for a decision.
  5. Settlement creates the tokens for each approved investor and pays the stablecoin to the issuer.

Refunds

  • A rejected investment is refunded.
  • An investor can cancel before the issuer approves, and is refunded.
  • An investment without a decision for 14 days can be expired, and is refunded.
  • An investor who is no longer eligible at settlement is refunded instead of receiving tokens.

Prices

A feeds manager publishes each token's price on-chain. Each update stores the hash of its source document. Until the first update, the launch price is used. If a published price is more than double or less than half the launch price, new investments stop until it is corrected. Investors always set the most they accept to pay.

15. Approvals in MetaMask#

Every admin decision is a normal transaction from your MetaMask to your admin identity. You pay its gas. NuVora prepares the call, you check and send it, and NuVora confirms it from the transaction hash.

Pending approvals and batch approvals

Some actions follow from other events. For example, an issuer gets its role after its KYB is approved. These actions do not happen on their own: they wait in your Pending approvals list.

  1. Open Pending approvals.
  2. Select one or more items.
  3. Approve. MetaMask shows one transaction for everything you selected.
  4. Check the details in MetaMask and confirm.

16. Gas and paymaster top-ups#

  • Platform & gas in your dashboard shows your paymaster deposit, your wallet balances and gas usage.
  • Staff with the gas manager role can watch gas usage and manage top-ups.
  • To top up, send the amount from your MetaMask to your paymaster. It works like the first funding.
  • Each sponsored transaction has a maximum cost, so a single transaction cannot empty the deposit.
  • Your own admin approvals are paid from your admin wallet, not from the paymaster.

17. Secondary trading addresses#

ERC-3643 tokens can only be held by registered addresses: wallets linked to a verified identity in your identity registry. A transfer to an unregistered address fails. This is what keeps your token compliant, so a Fireblocks address must be registered before it can receive tokens.

Address typeHow it is registered
Investor's own Fireblocks deposit addressLinked to the investor's existing identity, then registered. The investor's claims apply to it.
Exchange omnibus addressThe exchange gets its own identity with the required claims, and is registered like an investor.

Add trading addresses in Settings, under Trading addresses, and choose the type. After registration the address can receive tokens.

18. Move from testnet to mainnet#

  1. In your dashboard, select Request mainnet.
  2. NuVora reviews the request and approves or rejects it.
  3. On approval you get an email with a setup link.
  4. Run the setup again: choose Mainnet and a mainnet chain, deploy a new suite and fund a new paymaster from MetaMask. You get a new database for mainnet.
  5. When the mainnet platform is live, your domain switches to it.

For investors

For people and companies who invest through a company's platform. Companies can share this part with their investors.

1. Connect your wallet#

  1. Open the company's website. Each company has its own domain.
  2. Select Connect wallet. MetaMask opens.
  3. Sign the sign-in message. It is free and sends no transaction.
  4. If MetaMask asks to switch network, approve it.

2. Register#

  1. Choose whether you invest as an individual or as a company.
  2. Enter your email address.
  3. The platform creates your on-chain identity (ONCHAINID) and links it to your wallet.

3. Verify your identity (KYC)#

  1. Open My KYC and start the verification.
  2. Follow the steps in the Sumsub window: usually an ID document, a selfie and your address. The company decides what is asked.
  3. Wait for the result. The company's compliance team reviews it.
  4. When you are approved, claims are added to your identity and you are registered as an eligible investor.

4. Invest in a token#

  1. Open Tokenized assets and choose a token with an open sale.
  2. Select Invest and enter the number of tokens.
  3. Check the price and the most you accept to pay.
  4. Choose how to pay: stablecoin, or bank transfer if the token accepts it.
  5. Confirm. Your investment now waits for two approvals: first the issuer, then an analyst.
  6. Your tokens are delivered when the sale settles.
  • You can cancel before the issuer approves. Your payment comes back.
  • If your investment is rejected, you are refunded.
  • If nobody decides within 14 days, the investment can be expired and you are refunded.

5. Your portfolio#

Portfolio shows your tokens, their latest published prices and your investments with their status. Transactions lists every on-chain action made for you, with links to the block explorer.

6. Transfers and Fireblocks#

You can only transfer tokens to registered, verified wallets. This is how ERC-3643 keeps a token compliant.

  1. To use a Fireblocks address, ask the company to link your Fireblocks deposit address to your identity and register it.
  2. Select Transfer on your token, enter the receiver and the amount.
  3. The platform checks the token's rules before anything is sent. If the transfer is allowed, confirm it.

Roadmap

What comes next and where NuVora is heading. Nothing in this part is available today, and the landing page roadmap shows the same stages.

Asset class templates#

Today you tokenize funds as ERC-3643 security tokens with the four fund templates and the asset designer (see Launch a token). Templates for the other asset classes are next. They are not available yet.

GroupNext templates
CashCertificate of Deposit, Fiat-Backed Stablecoin, Tokenized Bank Deposit
EquityCommon Equity, Employee Equity Award, Preferred Equity
Fixed incomeCommercial Paper, Convertible Note, Corporate Bond, Green Bond, Sovereign Bond, Syndicated Loan, Treasury Bill
Real assetsCarbon Credit, Commercial Real Estate, Precious Metals, Tokenized Art
StructuredAsset-Backed Token, Autocallable Note, Principal-Protected Note

The NuVora Exchange and other capabilities#

  • NuVora Exchange: an on-chain orderbook with market and limit orders, with compliance checked on every trade. The NuVora Marketplace and its secondary trading by atomic on-chain swap are live today.
  • External tokens: bring tokens issued elsewhere to your platform.
  • Insights: analytics on your tokens, sales and investors.
  • Settlement: dedicated settlement workflows for your tokens.
  • XvP: atomic delivery-versus-payment settlement. The token and the payment move together, or not at all.

Glossary

Short explanations of the terms used on this site.

Terms#

ERC-3643 (T-REX)
The open standard for regulated, permissioned security tokens. The token checks the identity, eligibility claims and rules of every holder before each transfer.
Private Fund Tokenization
What NuVora offers today: fund units or LP interests issued as ERC-3643 security tokens, sold to verified investors in primary sales, with compliance enforced on-chain.
ONCHAINID
An on-chain identity for a person or a company. Wallets are linked to it, and verified claims are stored on it.
Claim
A signed record on an identity, such as "KYC passed" or "country". It is issued by a trusted claim issuer. Personal documents are never part of it.
Claim issuer
The identity trusted to sign claims. On your platform, it is your own KYC issuer.
Identity registry
The list of identities allowed to hold your tokens. Only registered addresses can receive them.
Compliance rules
Rules the token enforces on every transfer, such as allowed countries and a maximum balance per investor.
Paymaster
An ERC-4337 contract that pays gas for your users from a deposit you fund. Your investors do not need gas.
ERC-4337
The account-abstraction standard. It lets a paymaster pay transaction fees for users.
Gas
The fee a blockchain charges to process a transaction, paid in the chain's native coin.
Stablecoin
A token that keeps a stable value, used to pay in primary sales. Each supported chain has one, set by NuVora.
Testnet
A blockchain for testing. Its coins and tokens have no real value.
Mainnet
A live blockchain where tokens and payments have real value.
KYC
Know Your Customer: verifying a person's identity.
KYB
Know Your Business: verifying a company, its documents and the people behind it.
AML
Anti-money laundering checks, done together with KYC or KYB.
Suite
The full set of contracts deployed for one company: access manager, identities, registries, factories, price feeds and paymaster.
Admin identity
Your company's on-chain identity that holds the admin role. Your MetaMask wallet is its management key.
Home chain
The chain where NuVora's own records live: company identities, KYB claims and the company registry. It is ADI Testnet for testnet companies and ADI Mainnet for mainnet companies.
Settlement
The moment a sale closes: tokens are created for approved investors and the stablecoin is paid to the issuer.

Ready to start?

Applying is free. Choose testnet or mainnet and keep full control from day one.

Install MetaMask to continue

NuVora uses MetaMask so that you sign every action yourself, and your keys never leave your wallet.

  1. 01Install MetaMaskAdd the MetaMask extension to your browser from metamask.io.
  2. 02Create or import a walletFollow MetaMask's setup and keep your recovery phrase offline.
  3. 03Come back and connectReturn to this page and click Connect again.

NuVora never asks for your private key or recovery phrase.

Get MetaMask