Request for discussion:
Abstract:
Extend Bitcoin URI scheme with specification of an escrow address to support payment directly between escrows or between accounts maintained by the same escrow provider.
Motivation:
Bitcoin URI is also used to accept payments using QR codes. The URI is standardized in the BIP0021. Unfortunately receiver cannot use this URI when his wallet software is directly connected with escrow that holds his bitcoins. In the situation when oposite party uses the same escrow service, he cannot benefit from fast money transfer inside of the escrow. Bitcoins still must be transferred through blockchain with waiting for required count confirmations.
Adding extra information can help paying party to identify, that opposite party uses the same escrow service, and transfer money faster.
Specification:
Bitcoin URI introduces a new field "account" (I suggest to abbreviate as single "acc"). This field has following format:
whole example:
Wallet software of the paying party can read this request by following ways:
1. Wallet software is not familiar with this BIP, it ignores extra field and sends money to the specified address
2. Wallet software which is able to recognize the new field and is able to handle direct transfer to the specified escrow, carries the payment directly to the escrow with all benefits emerging from it (for example, cheaper or no fees, faster transfer)
3. Wallet software which is able to recognize the new field but is not able to send money directly to the escrow, ignores this field and sends money to the address as it is usual.
This BIP doesn't specify, how money transfer will be achieved. It only specifies how paying party receives information that oposite party uses the same escrow service. Paying protocol must be defined by the maintainer of the escrow service.
This BIP also recommends that "escrow-ID" SHOULD match domain name of the escrow service (for example: "abitcointrezor.com"). Account-ID can contain anything, however it SHOULD use only characters that are allowed in URI scheme (without necessary escaping)
Rationale:
Payments made between accounts of the single escrow service are not stored in the blockchain. This can help to reduce speed of the blockchain growing and reduce transaction fees. It also can help users, because they don't need to look into details of the transaction, they don't need to check whether other parties are using same escrow service and they still can benefit from faster and cheaper transfer if available.
Backward compatibility
According to BIP0021, this field will be ignored by an old wallet software, so there is no backward compatibility issue.
Again sorry for typos in my English language, I am not native speaker.