This tutorial walks through how to build an application with the js-stellar-sdk], to build with the Wallet SDK, please follow the [Build a Wallet tutorial.
📄️ Account Creation
Accounts are the central data structure in Stellar and can only exist with a valid keypair (a public and secret key) and the required minimum balance of XLM. Read more in the [Accounts section].
📄️ Confirmation Modal
Since the user's keypair is encrypted with a pincode and stored in their browser, we will occasionally need to prompt them for that pincode to sign a transaction or otherwise prove that they should be permitted to perform some action or view some data.
📄️ Contacts List
One central feature of BasicPay is a list of contacts containing a user's name and associated Stellar addresses.
📄️ Manage Trust
For an account to hold and trade assets other than XLM, it must establish a trustline with the issuing account of that particular asset. Each trustline increases the account’s base reserve by 0.5 XLM, which means the account will have to hold more XLM in its minimum balance.
A payment operation sends an amount in a specific asset (XLM or non-XLM) to a destination account. With a basic payment operation, the asset sent is the same as the asset received. BasicPay also allows for path payments (where the asset sent is different than the asset received), which we’ll talk about in the next section.
📄️ Path Payment
A path payment is where the asset sent can be different from the asset received. There are two possible path payment operations: 1) pathpaymentstrictsend, which allows the user to specify the amount of the asset to send, and 2) pathpaymentstrictreceive, which allows the user to specify the amount of the asset received. Read more in the Path Payments Encyclopedia Entry.
🗃️ Anchor Integration
📄️ Querying Data
Your application will be querying data from Horizon (one of Stellar's APIs) throughout its functionality. Information such as account balances, transaction history, sequence numbers for transactions, asset availability, and more are stored in Horizon’s database.