Sometimes, for a variety of reasons, there will be a spike in the number of BTC transactions that are waiting to be confirmed. That will cause a delay in confirmation times, and increases the price of fees required for a transaction to be included in a block. You can see the current number of unconfirmed transactions here: https://www.blockchain.com/charts/mempool-count?timespan=1week.
The transaction fees directly influence how long you will have to wait for transactions to confirm. If you chose a low value, it's possible that it can take many hours or even days for the transaction to confirm. If you choose a high value, most of the times the transaction will confirm quickly, but in rare occasions the blockchain may become overloaded and cause delays. This is true no matter which wallet or service you use.
Once it is broadcast, a transaction is stored by thousands of nodes all around the world, so it can't be cancelled. Eventually, it will either confirm, or it will be rejected after long enough unconfirmed. After 2 weeks unconfirmed, select "... / Resynchronize" in the wallet. If the transaction was rejected by the servers, the transaction will disappear and the coins will return to your address like they were never sent. If the transaction is still visible, try again the next day. Read more about cancelling or accelerating transactions here.
To increase the chances of your transactions confirming more quickly, you will need to send the transaction with an appropriate fee. In Coinomi you can manually choose how much you pay in fees. The transaction fees go to the miners of each coin and not Coinomi. There are 3 predefined settings for Bitcoin (high / normal / low priority) which are automatically adjusted according to the network usage.
If you don't want to depend on fee estimation algorithms you are also free to enter any amount you wish by using the "Custom" button. You can get an idea of what fees to use with services like https://bitcoinfees.21.co/. If your Ethereum transaction is not confirming, you can resend or learn how to replace a transaction here.
If you are receiving a transaction that still hasn't confirmed, please contact the sender. Receivers are passive, meaning that the choice of fees should have been made correctly by the sender.
Note on EXCHANGES from BTC:
Please consider increasing your fees when performing exchanges via our in-app exchange providers Coinswitch and Changelly. The timeout limits of those exchanges might be reached if the BTC transaction was sent with low fees and does not confirm within a certain number of minutes or hours. In this case, please open a ticket with the exchange's support and provide them with your transaction ID and a BTC refund address of your choice.