From 96b06b3b1ca4d18e2f40819301d7e1f739486665 Mon Sep 17 00:00:00 2001 From: Jordan Sexton Date: Wed, 9 Feb 2022 23:00:45 -0600 Subject: [PATCH 001/110] transaction request spec --- SPEC.md | 167 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 140 insertions(+), 27 deletions(-) diff --git a/SPEC.md b/SPEC.md index 880e84b4..fdd2218c 100644 --- a/SPEC.md +++ b/SPEC.md @@ -8,30 +8,42 @@ Rough consensus on this spec has been reached, and implementations exist in Phan This standard draws inspiration from [BIP 21](https://github.com/bitcoin/bips/blob/master/bip-0021.mediawiki) and [EIP 681](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-681.md). ## Motivation -A standard URL protocol for requesting native SOL and SPL Token transfers allows for a better user experience across wallets and apps in the Solana ecosystem. +A standard URL protocol for requesting native SOL transfers, SPL Token transfers, and Solana transactions allows for a better user experience across apps and wallets in the Solana ecosystem. -Applications should ensure that a payment transaction has been confirmed and contains a transfer of the expected amount and type before they release the goods or services being sold. +These URLs may be encoded in QR codes or NFC tags, or sent between users and applications to request payment and compose transactions. -Mobile wallets should ideally register to handle the URL scheme and provide a seamless yet secure experience when Solana Pay URLs are encountered in the environment. +Applications should ensure that a transaction has been confirmed and is valid before they release goods or services being sold, or grant access to objects or events. -By standardizing a simple approach to solving those problems, we ensure compatibility of applications and wallets. +Mobile wallets should register to handle the URL scheme to provide a seamless yet secure experience when Solana Pay URLs are encountered in the environment. -## Specification -``` -solana:?amount=&label=