Skip to main content

Troubleshooting & FAQ

Stuck transfers, missing balances, fees, and where to get help

Answers to the questions our support team sees most often. If your issue isn’t covered here, message us via the chat bubble in the bottom-right corner.

What happened to the Osmosis integration and my Keplr positions or Earn deposits?

The Nolus x Osmosis Money Market integration was closed on 6 September 2026. At closure, all Earn assets were returned to users' wallets and all open margin positions were closed, so there are no remaining Cosmos positions and no active Cosmos markets. The announcement has the full details.

If you connect with Keplr and your margin positions or Earn deposits are no longer listed, this is why. The assets went back to the Nolus account tied to your Keplr wallet. They are held by that account on the Nolus network, but the Nolus app no longer lists Cosmos-era assets, so they do not appear in the app's Balances. You see and move them in the Keplr extension or the Keplr mobile app: select the Nolus chain there and the balances are listed. Switching to Phantom or Solflare will not show them either: a Solana wallet session is a separate Nolus account that never held these positions.

The Keplr interface is being deprecated as the focus shifts to Solana, and the wallet picker now lists it under Legacy Support. To move them, for example back to Osmosis, use Keplr itself: select the Nolus chain in the Keplr extension or app and send or transfer the asset from there. The Nolus app cannot move them. To carry NLS over to a Phantom or Solflare account, follow the steps in the next section. If Keplr shows nothing for the Nolus chain, ask this chat to connect you with the team and they will check the account for you.

Why it closed. The Osmosis market was denominated in Noble USDC, and the Cosmos ecosystem began moving from Noble USDC to Injective USDC in mid-September 2026. Because the market was tied to the Noble denomination, it could not keep running, so both Osmosis protocols were shut down and the protocol's markets moved to Solana, where the liquidity for these assets is. There is no other reason behind the closure, and there is no plan to reopen Cosmos markets.

Positions that were still open at the closure. Users were asked in advance to close their own positions. Those still open were wound down by the protocol in the days before the deadline, not liquidated by a price move, while liquidity around the affected assets was thinning. Each position was sold and settled in one step: the loan and its interest were repaid from the proceeds, and the remainder was sent to your Nolus account, where Keplr lists it under the Nolus chain. If a Cosmos position closed in late August or early September 2026 well below the value you opened it at, that was the wind-down and not your liquidation threshold. Ask this chat to connect you with the team if you want a specific position reviewed.

A cross-chain send back to Osmosis fails, or reports that the transfer failed and a refund is on its way. That means the packet was rejected or timed out on the receiving chain. The funds return to the Nolus account they were sent from, and Keplr lists them again under the Nolus chain; the Nolus app does not show them. Waiting does not deliver them, and sending again only produces another refund. If the same transfer fails more than once, the receiving chain is usually not accepting that asset at the moment. Do not keep retrying: ask this chat to connect you with the team, and say which asset it was and give the transaction hash.

How do I move my NLS from my Keplr account to Phantom or Solflare?

Not in one step, and not by reconnecting with a different wallet. Your Nolus account depends on the wallet you connect: a Keplr session and a Phantom or Solflare session each create their own Nolus account with a different address, and assets held in one are not visible in the other.

The route for NLS:

  1. Connect Phantom or Solflare once. This creates your Solana-session Nolus account. Copy its Nolus address from the Account popover, which opens from the wallet button in the header.

  2. If your NLS is still on the Osmosis network, move it to the Nolus network first with Keplr's own transfer feature: open Keplr, pick the NLS balance on Osmosis, and transfer it to Nolus. This step happens inside Keplr, not in the Nolus app.

  3. Still inside Keplr, select the Nolus chain and send the NLS to the address you copied in step 1.

  4. Reconnect with Phantom or Solflare. The NLS shows in the Balances list in the Account popover, and Withdraw moves it to your Solana wallet whenever you want.

This works for NLS specifically. Other assets exist as different tokens on the two sides (the USDC versions and the wETH versions differ), so they cannot be sent across directly. The route is two hops: move the asset out of your Nolus account to Ethereum with go.skip.build (you need a small amount of ETH in your Ethereum wallet, because the transfer is signed twice, once on Ethereum), then bridge it from Ethereum to Solana with Portal by Wormhole. Once it is in your Solana wallet, use Fund in the Account popover.

Can I buy or sell NLS on Solana?

Yes. NLS trades on Solana exchanges including Raydium, Jupiter, DFlow and Titan Exchange, and it carries Jupiter's verified badge. Buy it with Phantom or Solflare, then use Fund in the Account popover to move it into your Nolus account whenever you want to stake or vote. To sell, Withdraw the NLS to your Solana wallet and trade it on the same exchanges; a Solana session has no swap of its own in the app.

Several unrelated tokens use the NLS ticker on Solana. The Nolus app recognises only the NLS issued through the protocol's transfer channel, which is the one Jupiter marks as verified, so look the token up on Jupiter and check for the badge before trading it, and confirm through the Official Nolus Channels before buying anywhere new.

I tapped Phantom or Solflare on my phone and the wallet app opened

That is the intended path. A phone browser has no wallet extension, so tapping the row hands you over to the wallet's own app, which reopens the page you came from inside its built-in browser. Connect from there and carry on in the same place. On a desktop browser the app still tells you “Wallet extension not installed” when the extension is missing: install it and reload the page.

The app says my wallet account changed

You switched the active account inside Phantom or Solflare while the app was open. The app follows the switch: it reconnects, reloads the address, balances, positions and history for the new account, and refuses to sign figures that were prepared for the previous one, saying “Wallet account changed. Figures were reloaded for the new account, please review and submit again.” Nothing was signed and nothing was lost. Check what is on screen and submit again.

If you lock your wallet, or disconnect the site from inside the extension, the app shows Wallet Disconnected and takes you back to the home page. Connect again to carry on.

The page is empty until I connect a wallet

It should not be. Pages, tables and forms all open without a wallet, with any figure that would be personally yours printed as a dash rather than a zero. Clicking an action button opens the Select Wallet picker instead of failing. If a page is genuinely blank, refresh once and message us.

My transfer hasn’t arrived yet

On Solana, funding and withdrawing take about 6 seconds by the app’s own estimate. While a transfer is on its way it shows in Activities as a Transfer row marked In Progress, which clears as soon as the network confirms it, and your balances move at the same moment. The app posts a short notice reading “Transfer completed” when it finishes, or “The funding did not complete” or “The withdrawal did not complete” if it did not. Funding carries a deadline of roughly 23 hours: a transfer not delivered by then is refunded to you rather than left hanging.

If a transfer still hasn’t appeared after 30 minutes, contact us through the messenger with the transaction hash and we’ll trace it.

The app asks me to add SOL

Transactions on Solana are paid for by you, in SOL, so this answer is about a Phantom or Solflare session. If your wallet cannot cover the network fee, the form stops before anything is signed and shows “Add SOL to your Solana wallet to cover the network fee”. The same message can also appear after you approve in your wallet, when the send itself fails on the fee: the funding did not go through and the tokens never left your wallet. Top the wallet up with a small amount of SOL and try again. The Nolus network fee is a separate charge with its own message, covered in the next answer, and adding SOL does nothing for that one.

The form says I can’t cover the transaction fee

“Insufficient funds to cover transaction fee” is about the Nolus network fee, not the Solana one. Every transaction on the Nolus network costs a small fee, and the app pays it out of your Nolus account, picking the asset for you from the ones the network accepts (NLS, cbBTC, HYPE, SOL, USDC, USDC_NOBLE and wETH), so you do not need to hold NLS. Assets outside that list, including OSMO and bridged Cosmos assets such as stATOM, cannot pay it, and assets you supplied in Earn are not available for it either: only what sits in the Balances list in the Account popover counts. The app stops before signing when none of the accepted assets still covers the fee once the amount you are sending is set aside. If you connected with Keplr, nothing you do is signed on Solana, so adding SOL will not help here.

Two everyday causes. Your Nolus account is brand new and has never been funded, so there is nothing in it to pay with: use Fund first. Or you are sending your entire balance of the only asset you hold: leave a small amount behind and try again.

If your Nolus account holds none of the accepted fee assets, what you can do depends on the wallet you connected. With Phantom or Solflare, use Fund to bring in a little USDC or SOL. Funding is signed in your Solana wallet and its fee is paid there in SOL, so it does not need the Nolus fee, and once the transfer arrives your Nolus account can pay the fee. If you connected with Keplr, there is nothing you can do from inside the app: ask this chat to connect you with the team, and we will unblock the account for you.

This is a different problem from an action that fails because a pool’s liquidity is temporarily low. That one carries the liquidity message covered below and usually succeeds later, or with a smaller amount.

The app says the contract refused this transaction

“The contract refused this transaction.” means the protocol declined the exact action you asked for, usually because what it refers to has moved on: a deposit that is no longer there, a position whose state does not allow that step, or an asset the market no longer carries. Nothing was signed and nothing was charged. Reload the page so the figures come back fresh, then try again.

A transaction the network accepts into a block but rejects when it is carried out is handled the same way: the dialog stays open, no success notice appears, and the amount field carries whatever message that failure maps to, which is often the generic “Unexpected error” rather than this one. The network fee for that attempt is still spent, but the action itself did not take effect, and it is never reported as done.

I can’t open a position on one of the assets

If the amount field reads “Not enough available liquidity in the LP to borrow from. Please check back later”, the lending pool behind that pair has nothing left to lend at the moment. The same message can appear on the Earn Supply and Withdraw forms for the same reason. It is not an app fault and nothing else pops up beside it. Try a smaller amount or another asset, or come back once suppliers have topped the pool up.

The form says there were too many requests

If the amount field reads “Too many requests. Please wait a moment and try again.”, the app asked the backend for too many quotes in a short time, which usually follows rapid edits to the amount. Nothing was signed. Wait a moment, set the amount once, and let the preview settle before submitting.

Supply, withdraw or a stop loss failed with “Unexpected error”

Earn supply and withdraw, and setting or removing a stop loss or a take profit, are prepared for you by Nolus before you sign. If that step cannot be reached, or the transaction that comes back does not match what you asked for, the action is refused before your wallet ever prompts you and “Unexpected error” appears: under the amount field on the Earn forms and in the stop loss or take profit dialog, and as a notice when you remove a trigger from the position page. Nothing was signed. Reload the page and try once more. If it keeps happening, ask this chat to connect you with the team and say what you were doing.

I use a Ledger with my Solana wallet

A Ledger-backed Solana account can connect and send funds in, but it cannot yet sign the Nolus-side transactions that move them again (withdrawals, positions, Earn), so do not fund from one until Ledger signing ships. If you already have, the assets stay safe in your Nolus account; ask this chat to connect you with the team and they will help you move them.

I staked NLS with Keplr. Where do I manage it?

In the Keplr dashboard, not in the app. Open wallet.keplr.app with the same Keplr wallet, select the Nolus chain, and use its Stake section to see your delegations, claim rewards, stake more, redelegate or unstake. Unstaking takes 21 days and nothing is lost while it waits. The app's Earn page handles staking for Phantom and Solflare sessions only, and a stake made from Keplr never appears in a Solana session because it belongs to a different Nolus account. To bring that NLS to Solana, unstake first, wait out the 21 days, then follow the NLS steps above.

My balance isn’t showing

First try refreshing the page and reconnecting your wallet. If the balance is visible in your wallet but not in the app, a reconnect almost always resolves it.

Check two things in the Account popover before reporting it. A figure printed as “-” is one the app has not read yet, never a zero, so give it a moment. And balances down at rounding dust are hidden by default: turn the Small Balances switch on and the list shows the network’s whole catalogue, with anything you hold none of sitting at zero.

If you connected with Keplr and are looking for margin positions or Earn deposits from before 6 September 2026, see the Osmosis section above: they were closed when the integration closed, and the returned assets are held by your Keplr-side Nolus account. The app does not list Cosmos-era assets, so open the Keplr extension or app, select the Nolus chain, and you will see and can move them there.

Do I need to set up an account for a token first?

No. If your Solana wallet has never held the token, the account for it is created when the transfer arrives, and the one-time cost is covered by the protocol.

An asset disappeared from the pickers

The offering is managed by the protocol, so a market or an asset can be taken off the pickers between sessions without an app update. Positions you already hold stay manageable and closable, and withdrawing your own funds is never blocked.

The Fund picker is the exception to what a picker shows you: it lists every asset the Solana corridor carries, including ones you hold none of, which sit at the bottom at zero.

Can I open a short position?

Short positions are currently available on Solana for cbBTC, SOL and wETH.

I opened a friend’s referral link and nothing happened

Nothing visible is meant to happen. A link like app.nolus.io/XXXXXX drops you on the home page and the app remembers the code quietly: there is no banner, no popup and no confirmation anywhere in the interface.

The code is attached to your account on your first margin or Earn transaction: opening, repaying or closing a position, setting or removing a stop loss or take profit, and supplying to or withdrawing from Earn. Transfers, swaps, staking and voting never carry it. When it does ride along, your wallet’s signing prompt shows a memo reading ref:NLS- followed by the code. That memo is expected and it is the only trace you will ever see. The first attachment is permanent and cannot be changed from the app afterwards.

If you opened the link in a different browser, or in a private window, the code is not stored where the app can find it and the transaction simply goes through without it. A stored code also waits only 30 days: make no transaction that can carry it in that time and the browser drops the code, so later transactions go through without it. Opening the link again starts a fresh 30 days.

I was charged more than I expected

Nolus does not add fees when you fund or withdraw. The fees you may encounter belong to third parties, mainly exchange fees when a position is opened or closed, plus the network fee you pay on Solana in SOL. The Fee Structure article breaks down exactly what is charged where.

Can I send assets to another wallet from the app?

No. Fund and Withdraw move assets between your own wallet and your own Nolus account, and on Solana the withdrawal destination is locked to the wallet you connected. To send tokens to another address, use your wallet’s own interface: select the token, enter the recipient’s address, and confirm.

Why did my position change without me doing anything?

If the market moved against your position far enough, the protocol may have partially liquidated it to keep it solvent. See Liquidations Explained in the Margin Positions collection for how this works and how to avoid it.

Which transaction hash does the app show me?

The hashes you can copy from the app are Nolus hashes. They are what our support team needs when tracing a transfer or a position.

Where can I learn more?

  • Product concepts live in the Understand Nolus collection

  • Technical protocol documentation lives at docs.nolus.io

  • Release announcements are published on the Nolus Blog

Did this answer your question?