Wallet API Specifications
by Julie G on 21 October 2021
Expiry date
Licensing terms to be annouced
Applies to
Standard Stage
In Consideration Draft Internal Review Public Review Published Recommended
Thanks for submiting your comments!

TS 2021.015-20

Wallet API Specifications

ProposerKapil Jain, Jad Wahab
TSC SponsorJames McLeod
AuthorsKapil Jain, Jad Wahab
ReviewersTo be announced


As part of the execution of BIP270/P2P Payment protocol, if the execution is done using a Simplified Payment Verification (SPV) client which does not have a wallet, the client would need to communicate with existing wallets to fetch input UTXOs (for funding the transaction) and output destinations (for receiving the funds). We aim to standardise these communication messages using a REST schema for each of them

Value proposition

For building lightweight SPV clients in Bitcoin, it should be possible for these clients to integrate with existing wallets which need a standardised communication method for Inputs and Outputs of a transaction. This will enable developing forward looking SPV applications while not having to worry about the creation and maintenance work that a typical wallet would need. This will be a big step in terms of interoperability and ease of use for such SPV clients.


None identified by the Proposers.

Prior art

This proposal is an extension to the P4 (Peer to peer payment protocol) and defines schemas that wallets can use for performing the P2P Payment using P4 specifications. The proposal standardises the getOutputUTXOs and getInputUTXOs objects used by wallets and a Payment protocol server (server orchestrating the P4 payment steps). This will decouple the wallet specific formats and payment protocol server making the two components modular and will improve interoperability

Proposed solution

We can submit a local implementation of these integration APIs once this proposal is streamlined in a workgroup.

Comments are closed

This Standard is at the draft stage and comments are closed.

Become a Contributor
If you wish to join us on this mission to make BSV the public blockchain of choice please fill in our preliminary registration form below. We look forward to having you on board.