SerHack/books

A set of translated and written books.

Warning: this resource is a work in progress!


Second Chapter: Getting Started: Receiving, Storing and Sending Monero

The last chapter focused on WHY to use Monero , in this chapter you’ll learn HOW to use Monero. You can master Monero without needing to learn any of the complex cryptographic or technical network details , so that extra information is saved for later in the book. Chapter 2 will cover all the practical skills you’ll need to get started receiving, storing, and spending your moneroj .

The first part of this chapter covers key concepts and terminology for Monero use, as general information that will apply to any wallet or software. Toward the end of the chapter, you’ll find a global overview of wallet functionalities and some handy suggestions to preserve further your privacy.

2.1 What is a wallet ?

Before you obtain some moneroj, you must plan ahead for where you will receive and store your funds. You will need a wallet to help you store and spend your moneroj. Your current paper money (e.g. euros or dollars) can be stored in many different styles of physical wallets. Likewise, there are several different types of Monero wallets, and you can always move some of your money from an old wallet to a new one.

Wallets take care of the complicated cryptographic processes for you, so you don’t need to know any fancy mathematics to use Monero. You will only need to manage a seed and your address(es), and learn how to navigate the functionality of your chosen wallet . Other details like public keys and private keys are managed behind-the-scenes by your wallet, so they are not discussed until chapter 5.

We can sum up the functionalities of a basic wallet in four points. A wallet usually stores your seed, creates public address, checks balance, and sends transactions. Let’s dig into them.

Your Monero seed is a secret number that your wallet uses to locate and spend your moneroj, though it is converted into a series of 12-25+ words for convenience. This secret is like a treasure map to your money on the blockchain, and anybody who learns your seed can use their wallet to access and spend your moneroj. For this reason, you must be extremely careful when you generate and store your seed. Do not set up a wallet in a coffee shop, where other patrons or cameras may see your secret. It is dangerous to store your seed electronically (e.g. in a text file or email) since malicious software or services may be able to obtain it, and run off with your moneroj.

Your seed is used to generate your address(es) for receiving moneroj. Just like your postal address, you share your Monero address with people who want to send you something. Most wallets will show your address in two different formats - a written string of numbers/letters, and a visual QR code. You can safely share either of these when you wish to give someone one of your addresses so that they can send you monero.

If your Monero wallet is physically damaged, you can simply import your seed into a new wallet, and pick up right where you left off! As long as you have a copy of your seed, you can always access your funds. However, if you lose your seed, there is no way to ever recover access to your moneroj. You may be familiar with passwords, which can usually be reset by contacting an administrator. Seeds are not like passwords - nobody else knows your secret, and the network is unable to shift your moneroj to a new account if you lose your seed .

Most software will prompt you to write down the seed when you initialize a new wallet. However some apps skip this reminder, and you must take the initiative to find the backup feature and write down your seed. Be sure to do this immediately, or else a damaged device will cause you to permanently lose your funds.

Once the pair of seed and public address has been generated, the wallet needs to be connected to Monero blockchain. One way to setup a connection with blockchain is to host it, via a Local node. We define a node as a network participant that assist other users by syncing their wallets and relaying their transactions. The local node proceeds to download the entire Monero blockchain on your device and makes it available to all the other nodes in the network.

Since the network keeps adding blocks, the blockchain is never entirely “downloaded”. Instead, we call that “synchronization”: the node keeps talking with the network to see if there are new blocks to add to the local copy of blockchain. We consider a node fully-synchronized if it has all the blocks of the other nodes. In addition to download, a local node also verifies all the blocks downloaded (more information on this operation at the end of chapter XX).

This mode is a little bit heavy and requires more than 90 GB of free disk space and a permanent online connection. With a Solid State Disk, you can have your local node ready in a day, while keeping blockchain synchronized with a hard disk might need more days.

You can reduce sync time and disk usage by connecting to a remote node instead of storing the entire blockchain on your device. Most mobile wallets, such as the lightweight apps listed above, are automatically configured to connect to a default remote node. If you need to manually direct your software to a remote node, you can use the community resources at node.moneroworld.com (port 18089), many others remote nodes are available.

Running your own (local) node is best for privacy, and you can choose to share your node publicly if you wish to help secure the network. Remote nodes are convenient, and allow you to begin using Monero quickly, without downloading the entire blockchain.

Once the wallet has a stable connection with blockchain, it starts checking the balance by scanning every block. Due to privacy nature of Monero, the wallet can not know which block contains your transactions, then it proceeds to check every block in search of your transactions. Naturally if it is the first time that your fresh wallet has been set up, there’s no need to scanning entirely the blockchain for balance.

In comparison to Bitcoin, Monero Wallets do not require any additional setup than mere connecting to blockchain. If you tried to be private with Bitcoin, you would end reading a guide of more than 50 pages and setup wallets would be difficult. With Monero instead, the only passage required is to connect to blockchain (see Remote nodes vs Local node section), you are private by default.

All the methods to be private mentioned in this book (Ring Signatures, Stealth Addresses, Ring Confidential Transactions and more – chapter XX) are enforced by the Monero network. Thus all the transactions considered “not-private” are rejected by the protocol.

Figure 2.1 – Wallets carry out all of the key functions for using Monero.

2.2 Selecting the best wallet(s) for your needs

In this section, you’ll learn about different types of wallets available for storing your moneroj.

You probably store most of your local currency (e.g. euros or dollars) in a bank or safe, and carry around a small amount in your day-to-day physical wallet. Likewise, many people use two complementary wallet types for their cryptocurrency: a convenient hot wallet that holds small amounts for day-to-day use, complemented by a more secure cold wallet for long-term savings or large amounts.

There are various storage solutions, and they vary in terms of convenience, privacy, and security. Your individual needs will determine which type(s) of wallets are best for you. The varying wallet types described below differ primarily in where the seed is stored.

2.2.1 Software and mobile wallets

Software wallets (on a desktop computer or mobile device) are convenient for storing and using Monero. Many Monero users have a handy hot wallet on their phones, to pay for day-to-day purchases. A good rule of thumb is to only walk around carrying as much cryptocurrency as you would feel comfortable holding in regular cash. Software wallets usually store the secret seed on your device, so your moneroj could be stolen if you catch a virus or keylogger.

Below are some software wallets acknowledged by the community. All these wallets in this section do not obtain any private keys from your device, then a backup of the seeds is suggested. Note: We did not write about centralized wallets supported only by a centralized company that holds the private key(s).

Monero Wallet GUI: Conceived in early 2016 and the result of various redesigns over the years, Monero wallet GUI is the best wallet for desktop environments. Maintained by the core-team, the interface lends itself well to people who have never tried Monero before. It has several ways to connect to the blockchain that include downloading the blockchain to the device or using a remote node. Translated into more than 30 languages, it is compatible with hardware wallets such as Ledger or Trezor. You can also use more than one wallet, having an account management section. In addition to the features of any usual cryptocurrency wallet, it also has a mode for merchants (Chapter XX) that makes possible to accept Monero without installing anything other than this wallet. It includes a module for self-updating with verification of signatures (although before the first startup, it is good to verify the binaries).

Available for Unix-based OS, Windows, and MacOS https://getmonero.org/download

Monero Wallet CLI: The text-based interface might scare newbies, but it is one of the most powerful wallets in Monero. As for the GUI, the wallet is developed by the Monero core team, also called simple wallet, and Monero CLI is the best way to manage a wallet via the shell. It requires a good familiarity with the textual interface and therefore is ideal for geeks and those who prefer to have a solid bare-bones software, without graphic frills.

Available for Unix-based, Windows and MacOS operating systems https://getmonero.org/download

Feather Wallet: developed by a community-team independent of Monero, it represents a lighter alternative to the Monero wallet GUI. As additional features compared to the GUI, it has a direct integration to Monero’s crowdfunding platform (CCS) and Reddit posts, with information about Monero’s price. As a GUI, it is very reminiscent of Bitcoin’s Electrum wallet.

https://getfeather.org

Available for Unix-based, Windows and MacOS operating systems

Monerujo: Historically the first Monero wallet for Android. It integrates a comfortable interface for newbies (designed by the same illustrator that composed images for this book). It supports Tor connections (with Orbot), it can manage multiple addresses and wallets simultaneously. In addition, it protects private keys from attackers via CrazyPass, an open-source protocol that encrypts private keys multiple times.

Available for Android, on the Google Play store and as an APK.

CakeWallet: Initially developed for Apple devices, CakeWallet is a wallet for Monero with an intuitive and easy to understand interface. Especially recommended for those who are neophytes and want to start exploring the world of Monero without giving up the convenience of having the wallet handy. It allows the use of connection to remote nodes (you don’t need to download the whole blockchain). It integrates some exchanges so you can safely exchange your Monero with more than 20 cryptocurrencies. It includes wallets for other cryptocurrencies such as Bitcoin and Litecoin.

Available for Android, on the Google Play store, as an APK and for iOS through Apple Store.

Software and mobile wallets represents the most intuitive way for getting started with Monero, without getting mad. However the reader should be aware of the risks with getting an infection on any device.

With smartphones getting used almost everywhere, it might be a risk to set up a new wallet in public or just show the balance. Fortunately, the two top mobile wallets for Monero (CakeWallet and Monerujo) include a “…” feature that hides all the sensitive details for wallets.

2.2.2 Hardware Wallets

Managing many wallets in a device is not always the best choice, especially if you have a discrete amount of cryptocurrencies. Modern hard disks and solid-state disks are easily breakable with a fall, and sometimes reading and writing might fail to result in loss of information. One idea may involve exporting the wallet seed in a USB stick, but that would have the same defects as using any disk of your device. Anything (from text processor to malicious software) would be able to obtain the seed, instead hardware wallets are able to protect your seed.

Hardware wallets are physical devices that can carry out sensitive wallet functions, completely isolated from the online-connected phone or computer. Hardware wallets have their built-in screens, to show you the seed and transaction details without ever sending them to an external device!

While hardware wallets are less convenient than software wallets, they are extremely secure! Because of how they store and protect your seed, you can safely use a hardware wallet to send transactions from a device that you suspect or know is compromised with malicious software.

Hardware wallets are portable and do not require a permanent installation of your wallet in your devices. If ransomware or malware infects your pc, those will not be able to collect your wallet seed since it is stored in external storage, not directly available.

Unfortunately, performing an audit on a hardware wallet is not such easy as with mobile or software-based wallet clients. Most of the secure elements in the architecture of a hardware wallet are kept secret. Security through obscurity has never been a good idea.

Modern hardware wallets include Trezor and Ledger. Trezor is one of the first hardware wallets ever developed, an open-source device to store your wallet and transact with your wallet. It can hold an unlimited number of keys and its team developed a unique way of PIN entering that should prevent key loggers from recording it. Both Monero Core wallets support integration with Trezor Model T.

The company Ledger developed two models of hardware wallets: Ledger Nano X, and Ledger Nano S, both compatible with Monero wallets. Its firmware is closed source, and the details about the architecture are secreted. Apart from a few physical differences (Ledger is more similar to an USB stick, while Trezor is bigger), Ledger and Trezor wallets have the same functionalities.

The Monero community is currently developing “Kastelo” – the first open-source cryptocurrency hardware wallet which is still in development stage.

Figure 2.3 - Kastelo is an open-source hardware wallet for Monero .

Paper wallets provide an inexpensive way to stash moneroj that you do not plan to move frequently. You simply print out a physical copy of your public and secret information for safe storage. Since the secrets from your Monero seed are saved only on paper, not digitally, you do not have to worry about viruses or data leaks. However, paper wallets are not convenient for frequent use, since you must transfer the secrets to a digital device every time you wish to send moneroj .

2.2.3 Web Wallets

Web wallets are Monero accounts that you access through a website hosted by some third party. These online wallets are extremely convenient, however this comes at the expense of your security and privacy. There are essentially two types of web wallets - the crucial difference is whether or not you know the seed.

The first type of web wallet stores the money in their own accounts and gives you a username and password to log in (note: this includes your “wallets” on exchanges). Since you do not have the seed yourself, you do not personally control your funds; you must trust the service to hold your money for you. You should be extremely wary of storing moneroj in these types of web wallets, which are essentially providing banking services. They might lose your funds at any time, whether through accident or theft. If the website is shut down for any reasons, your username and password are useless - since you don’t have the seed yourself, your funds are gone.

The second type of web wallet instead leaves the seed and funds in only your control. Well-designed web wallets, such as MyMonero, use secure methods to access your funds without ever sending your secret seed to the third-party server. You must enter your seed every time you log in, because it is not known to the provider or stored on your device. This type of web wallet is (relatively) safer, since the third party is not holding your funds. They are only providing a software interface for your browser. If the website for this type of wallet becomes inaccessible, you can enter your seed into a different wallet and fully recover your funds .

While web wallets are convenient, neither type is recommended for long-term storage or large amounts. Both types have security downsides (trusting your funds to a third party, or frequently typing your seed into a web browser) and there are potential privacy concessions in both cases.

2.2.4 Cold Wallets

The phrase cold wallet is an umbrella term that is used to refer to paper wallets and other offline storage methods. For example, an electronic cold wallet can be a phone or computer that is only used for interacting with cryptocurrencies, and is disconnected from the internet except when in use. The device can use any operating system; the important part is deliberate implementation of strong security practices (including a firewall, antivirus software, and extreme caution regarding accessing only trusted websites/software). The seed is still on the computer, however you keep the device sequestered from the rest of the world as much as possible.

Figure 2.6 - A cold wallet refers to a secured device, intended only for storing and transacting with cryptocurrencies . A computer running the Monero command line interface is shown above, as an example.

2.2.x Alternative ways to store a seed

2.2.x.1 Paper wallets

Paper “wallets" provide an inexpensive way to stash moneroj that you do not plan to move frequently. You simply print out a physical copy of your public and secret information for safe storage. Since the secrets from your Monero seed are saved only on paper, not digitally, you do not have to worry about viruses or data leaks. However paper is subjected by physics: fire, water or any other accidental use might destroy your backup of the seed.

Paper wallets are not convenient for frequent use, since you must transfer the secrets to a digital device every time you wish to send moneroj . Thus the physical ways to store a seed are not properly defined as wallets.

Figure 2.4 - A paper wallet is a printed copy of your Monero keys. Make sure nobody sees the secret information!

[Question for myself: are there any alternatives to paper wallets?]

2.2.x Verifying Binaries

Regardless of which type(s) of wallet you choose, be careful to only download vetted software through proper channels. Phishing schemes and scam wallets are numerous, so be sure to double-check that you are installing legitimate software! If you enter your seed into a malicious wallet, your moneroj will be gone before you even realize your mistake.

In this little section, we will explain how to verify binaries downloaded from the website getmonero.org.

2.x Obtaining Monero

One of the most asked questions in forums and social networks is the following one: how can I own Monero? Many enthusiasts want to purchase and transfer their first Monero, for trying the technology or for doing business.

2.3 Using Monero

This section explains what you need to know to send or receive Monero. All of the examples in this book use the following seed:

MASTERING MONERO DEMO SEED: lamb hexagon aces acquire twang bluntly argue when unafraid awning academy nail threaten sailor palace selfish cadets click sickness juggled border thumbs remedy ridges border

Figure 2.7 - Wallets use the secret seed to generate addresses for receiving Monero .

You can import this seed yourself to practice generating addresses, checking transaction history, and verifying payments. You can use this seed to follow along with examples in the book, but do not send your monero to it! Anybody else reading Mastering Monero will be able to spend it!

2.3.1 Receiving Monero

To receive Monero, all you have to do is share your wallet address with the person sending you moneroj. Most wallets will show your address in two formats: an alphanumeric string that is easy to copy & paste, and a QR code that is handy for scanning with a camera. Here are examples of both formats, from the DEMO seed above:

Your address for receiving Monero can be represented as a text string, or QR code. You can share whichever is more convenient. 

This address that you share is never stored on the blockchain (thanks to a Monero feature known as stealth addresses, which are discussed conceptually in chapter 3 and described technically in chapter 5). Monero also allows you to generate multiple subaddresses from your single secret seed, so you can share many different addresses that all deposit to the same wallet.

Each Monero account has a single primary address (starting with a ‘4’). For convenience, you can generate an unlimited number of subaddresses (starting with an ‘8’). Funds received by any of the addresses are routed to your wallet’s main balance. You can learn more about how your wallet handles multiple addresses in Chapter 5.

Wallets may wait 10 - 20 minutes for confirmation before marking funds as received and safe to spend (you can learn why in Chapter 4). This is a common security practice, and wallets usually show the unconfirmed transaction during the waiting period. If your wallet is waiting for a 0.06 XMR payment to confirm, you may see something like the image below.

There is no need for concern when this occurs! Within less than a half hour, the funds will confirm and transfer to your available balance.

Monero supports the ability to share a view-only version of your wallet, which can see all incoming transactions but cannot send or view outgoing funds. This feature has many important uses: enabling full transparency for charity donations, providing access to financial records for authorized auditors, and creation of limited-access devices to monitor incoming payments. Initializing a view-only wallet involves sharing a secret view key, which is different from the secret seed; this intermediate topic is covered in chapter XX.

2.3.2 Sending Monero

To send Monero, you simply enter or scan the recipient’s address, and type the amount that you wish to transfer. Press “send” and your transaction will be initiated!

If you are sending moneroj to a business, they may also ask you to include a payment ID to connect your payment to your order . If you are sending moneroj to yourself or a friend, you can leave the payment ID field blank. Some services use “integrated addresses”, which include the payment ID and address in a single text string for convenience and increased privacy .

In 2018, Monero added the ability for each wallet to generate a vast number of subaddresses for receiving payments. Consequently, payment IDs and integrated addresses are being used less frequently, and at the time of writing, are deprecated. Instead of giving each customer the same address but different payment IDs, modern merchants simply give each customer a unique subaddress (this system is more straightforward and has less room for “user error”). The payment ID has been deprecated and the general sense is to mark deprecated for integrated address.

Anybody using the free OpenAlias system can provide a human-readable Monero address (e.g. “donate.getmonero.org”) instead of the raw address string (44AFFq5k….). Sending to an OpenAlias address is no different than sending to the raw address. However, setting up a new OpenAlias address is a more technical task, covered in chapter 7 .

Your wallet will add a small fee, to compensate the network for forwarding and processing your transaction. Your wallet will f orce an appropriate fee based on the current Monero network load, your transaction’s urgency, and a few other behind-the-scenes considerations. You can learn more about how fees work and why they are necessary to maintain the network in Chapter 4.

2.3.3 Proof of Payment

Given Monero’s anonymity, you might wonder how somebody can prove that a payment was sent. Besides optional payment IDs, Monero has a second feature to selectively reveal proof that funds were sent. This is accomplished by sharing a transaction key that only the true sender can generate.

Example

Suppose your friends Khan and Maria each owe you 0.06552376 XMR for a meal that you split. You only receive 1 payment, with the information below:

This is a real transaction received by the DEMO wallet on 20-Apr 2018. You can see some information through a blockchain explorer, however the Monero sender is always unknown. Both Khan and Maria claim that they sent the payment, so you ask each to provide the transaction key.

Khan: OutProofV1N4Y5pUJEnRACJyB5C3zK1zTqAihdnN8MfVZhEWfD13Z2N7Npt1uxa1EY7N7jnvuJF76tXUwKrakvZSxTj4Zux5SpavFb4X1jRcLAJ2b5hqviQPiS58j2qH53QL44CJEgHtY5

Maria: OutProofV1To53Qu2gegZbUevosKCTwrEdqiECgFyUygutXMEdhrHg1EtXMrFNaszWYFjdU4aXFZ2iPF8G8jzoDJzCoW5dsWvb4mVN65abAya3U47cGXs7WABrTzG5aPfV4YBANhwPgwD2

When you check both of their transaction keys, Maria’s confirms payment to your address and Khan’s key returns “bad signature.” You can practice this yourself using the above address and transaction keys !

2.4 Operational Security

Figure 2.8 - Phishing attacks often use slightly-different URLs to trick users into entering their seeds or passwords into an attacker’s copy of the real site (for example, www./mymonera/.com instead of www.mymonero.com). Always carefully inspect the URL, especially when following links .

Monero allows you to be your own bank, since nobody can control your funds besides you! This grassroots financial empowerment is one of the greatest benefits of cryptocurrencies. However, with great power comes great responsibility! Keeping operational security (OpSec) in mind is important for keeping yourself and your funds safe.

2.4.1 Never say how much Monero you own

Sayings like “loose lips sink ships” exist for a reason. When you publicly disclose about how much Monero you have, you may inadvertently make yourself a target for scams or theft. This is especially true in cases of online forums and social media.

Scammers and thieves prowl the internet looking for individuals who have revealed exploitable information about themselves and their wealth. They will probably go for OSINT (Open Source Intelligence) analysis, a method that foresees scanning the Web to look up for informations that are public available. This also includes any data breach, websites, social network profiles that might leak your personal information.

Most people know better than to post about the balance of their bank account or retirement portfolio on social media. It is a security risk, rude, and can make interpersonal relationships awkward when wealth imbalances are involved. However, lots of people naively declare how much Bitcoin or Monero they have bought.

Remember that cryptocurrency prices are volatile, and are known to increase dramatically. A post stating “I just spent $50 on Bitcoin in case it lasts” from 2012 may have seemed modest at the time, however that $50 (~10 BTC in 2012) was worth nearly a million dollars by the end of 2017, less than 5 years later! Messages on the internet can be hard to erase, so the best way to avoid this situation is never posting in the first place.

Given the general interest in cryptocurrency investing, there is lots of conversation about holdings and portfolio composition. You should always talk in percentages rather than absolute amounts. Figure (below) shows how to calculate your portfolio balances, so you can discuss your saving strategies without revealing sensitive information.

2.4.2 Keeping your seed safe

Imagine the blockchain as an apartment building full of doors where behind each door is each user’s portion of Monero. Of course, these doors are secured only by a special lock, which requires a special combination of a list of different words. This list of words is difficult to guess without having the exact combination, probably impossible. Unfortunately, once the combination is lost, there is no way either to recover it or to prevent the door from being opened by a stranger! If the door is open, i.e. a foreign person has the seed, they can move the funds.

Your funds are only as safe as your seed, and there are two major concerns to keep in mind: loss due to accidents, and loss due to theft.

To avoid the loss due to an accident, always make sure your seed is backed up somewhere secure. Always ask yourself: “If my phone dies or this website breaks, do I have a way to access my funds?” You should consider keeping a second written copy of the seed in a second safe location. You don’t want to lose both your device and your backup seed if your house floods or burns.

To avoid loss due to theft, never share your seed or keys with anybody else. Anyone with access to your seed can steal 100% of your funds, and Monero’s privacy features will make it impossible for you to determine where they went.

2.4.3 Transaction precautions

If you ever tried to send any amount of cryptocurrency, you probably understood that addresses are not newbie-friendly. Composed randomly, there is no way to verify correctly that an address is linked to a person, or business.

When sending any large transaction to a new person or address, you should always send a tiny pilot transaction first and wait for the recipient to confirm that it arrived. This is an important habit to catch mistakes in advance, since there is no “undo” button for cryptocurrencies.

With every cryptocurrency transaction, always double-check the wallet address to make sure that it is correct. Even if you copy & paste the address, visually confirm that it was pasted correctly and in its entirety. Hackers have created malware that manipulates cryptocurrency addresses in the clipboard (replacing the true recipient’s address with the attacker’s). If you visually double-check the address, you can catch this malware before you make a “donation” to a hacker.

2.4.4 Exchange safety

Exchanges create their own wallets for you, and generally do not share the seed with you. This is risky, since you have no way to recover your money if the exchange is attacked, shut down, or otherwise disappears. There is a famous saying “Not your keys? Not your coin!” referring to wallets and services that retain control over your keys, and thus your funds.

As mentioned in 2.4.2, you should always be asking yourself “if this website disappears, do I have a way to access my funds?” A good rule of thumb is to only keep your moneroj on an exchange if you plan to trade it soon. Otherwise, move it to a wallet that you control.

2.5 “Getting started” for businesses

2.5.1 Monero is ideal for merchants

In this chapter, we covered all of the key skills for general Monero use. This section introduces a few extra tools for helping merchants integrate Monero into their systems and services. You can skip ahead to the next chapter if you are not involved with incoming business payments.

Merchants accepting payment in Monero benefit from fast, private, and irreversible transactions. There are several tools designed to ensure that accepting Monero is a “user-friendly” experience for both online and brick-and-mortar businesses.

Of course, anybody can use the general skills from the last chapter to set up a wallet and begin receiving Monero immediately. The tools mentioned in this chapter are designed to facilitate use by businesses that wish to automate payment integration and processes like issuing invoices and receipts .

2.5.2 Friendly tools for accepting Monero

The Monero Integrations payment gateway allows any online shop to add a Monero payment option by simply installing any one of the plugins designed for several popular e-commerce management systems (e.g. Woocommerce, Magento, Prestashop). The Monero Integrations solution was created (by the author of this book) to be consistent with the Monero ethos: the entire project is free, open source, decentralized, and private. Transactions are routed directly to your wallet, so there are none of the privacy or security concessions that arise when trusting a third party to process payments.

Kasisto was the first point of sale system that accepted Monero, and is an open-source project requiring no third parties. The application is intended for in-store use on a phone or tablet, and can accept payments nearly instantly by detecting transactions before they have even been i nserted into blockchain. You can try a demo at the Kasisto on GitHub.

Another payment option is Globee, which allows merchants to accept both cryptocurrency and credit card payments. Globee is a third-party company, which allows them to provide additional functionality - for example, accepting many types of coins with instant settlement into Monero, other cryptocurrencies, and even fiat accounts (e.g. euros or dollars). This gives your business the option to accept cryptocurrencies and be paid immediately in your local fiat currency, eliminating exposure to price volatility risk.

If you want to dive into coding and build your own payment options from scratch, you can learn all about creating the backend in Chapter 7.