There are a couple of efforts underway to enable mobile functionality for Bisq. One of those efforts is mobile notifications, and it’s ready to use today.

Mobile notifications

The Bisq mobile notifications app lets you get notifications from Bisq desktop on your iPhone or Android device. Here we explain how to set it up and how it works.

1. Get the app

2. Pair it with Bisq desktop

Scan QR code or paste it in
Scan QR code or paste it in.

In your desktop Bisq app, go to the Account screen and click on Notifications. There, click on Scan QR code.

In the mobile app, click Pair and then scan the QR code with your computer’s webcam.

If you don’t have a webcam, click the I don’t have a webcam button in desktop Bisq. Then send the pairing string on your mobile device to your computer and paste it in the Pairing token field.

Once pairing completes, you’ll see a success message, and can then proceed to the next screen to configure notifications.

3. Configure notifications

There are three types of notifications you can get: trade alerts, offer alerts, and price alerts. You can also enable and disable notification sounds.

Trade alerts

To enable trade alerts, simply check the Receive trade messages box.

Once enabled, you will get a notification when:

  • your action is needed on any open trades

  • one of your offers is taken

  • you’ve received a new dispute message

Note that dispute alerts do not include any message content—they merely let you know a new dispute message has been received on your desktop Bisq app.

Here’s how trade alerts can be useful:

Example 1: you’re buying BTC, just sent your deposit, and are waiting for the transaction to hit 1 blockchain confirmation so you can send payment. That can take approximately 10 minutes. Instead of waiting at your screen, you can go have a coffee and let your phone alert you when it’s time to send the fiat currency or altcoin payment.

Example 2: you’re selling BTC, and you’re waiting for your trading partner to send you fiat currency or altcoin payment. It might take them minutes or hours. Instead of repeatedly checking your desktop Bisq app for updates, your mobile device will simply push an alert as soon as your trading partner marks their payment as sent, so you can then check for the payment and promptly complete the trade.

Please don’t rely on mobile notifications to receive important messages. Mobile notifications are new and there may be bugs. Please be sure to still check your desktop Bisq app for trade status, dispute messages, etc!

Offer alerts

Set offer alert criteria
Set offer alert criteria.

If enabled, you will get alerts whenever there’s a new offer that fits your criteria.

To set your criteria:

  1. Select your preferred payment account.

  2. Then select which offers you want to receive alerts for: buy or sell. If you want to buy bitcoin, you’ll want to know when someone’s made a good sell offer (and vice-versa if you want to sell bitcoin).

  3. Determine the % distance from the market price for which you want to get a notification. With a price distance set, you will only receive an alert when an offer that meets (or exceeds) your requirements is published. Example: you want to sell BTC, but you will only sell at a 2% premium to the current market price. Setting this field to 2% will ensure you only receive alerts for offers with prices that are 2% (or more) above the current market price.

  4. Hit Add offer alert.

Clicking the Manage offer alerts button shows you a screen with all configured alerts. There, you can remove offer alerts you no longer need.

Price alerts:

Set price alert criteria
Set price alert criteria.

If enabled, you’ll get alerts when bitcoin hits the specified price in the specified currency.

First, select your currency. Then, choose the upper and lower price thresholds. You’ll get an alert when the bitcoin price goes above your upper threshold, or when it goes below your lower threshold.

Example: an alert set with an upper threshold of 6000 EUR and lower threshold of 5500 EUR will send you a notification when the market price goes over 6000 or when it goes below 5500 EUR.

Once a price alert is triggered, it’s automatically deleted so you don’t get repeated notifications as the price fluctuates.

4. Technical details & privacy:

mobile-notifications-architecture
Bisq mobile notification architecture: The notifications are sent from the Bisq desktop app to the Bisq relay node which acts as proxy to the Apple/Google Push Notification Service.

Pairing

Before allowing the mobile app to start the pairing to the Bisq desktop app, the mobile App registers with the Apple or Google notification service and receives a notification token. This happens in the background without any user interaction. Next, a byte cryptographic key for symmetric encryption is generated in the phone and the pairing token is assembled.

We use the 128 bit AES/CBC/PKCS5Padding symmetric encryption algorithm. A fresh 16-character Initialization Vector is created and attached to each notification.

The pairing token consists of four parts which are separated by the "|" character:

  • A Magic, currently one of iOS, iOSDev or android

  • A Phone descriptor, e.g., iPhone6

  • A 32 byte cryptographic key for symmetric encryption. This key is generated by the phone and used in the Bisq desktop app to encrypt the content of the notification.

  • A device token, either from Apple or from Google.

The pairing token is then transferred from the phone to the Bisq Desktop app by QR code (using the computers' webcam) or as a string (by email).

Sending a notification

The Bisq desktop app knows the device token (from Apple or Google) and it has the encryption key from the phone. The notification itself is a json string containing the type of notification and its content. After encrypting the notification the desktop app sends it along with the device token to a Bisq relay node over Tor. Because of Tor, the relay node does not know the IP address of the computer on which you run your Bisq desktop app. The relay node forwards the notification to an Apple/Google push notification server (over https), which then pushes a notification to your mobile device using the provided device token.

Privacy

Ultimately, Apple/Google know that a device with your device token is receiving Bisq notifications. Note that they already knew you are likely to be a Bisq user when you download the Bisq mobile app. However, neither Google nor Apple can see the content of the notification. This is also the reason why OS pop-ups that notify you cannot contain any notification specific content.

Currently, the relay node does not store any data (notifications, device tokens, etc).

We feel that Push notifications can’t be implemented in a more private way. If there is any aspect of this mobile notifications mechanism, feel free to contact us. Of course, the notification mechanism is optional and does in no way limit the functionality of the Bisq desktop app.

Source Code

The iOS and Android mobile apps are open source:

See the git wiki for additional technical details.