View Issue Details

IDProjectCategoryView StatusLast Update
0006652Talerotherpublic2021-01-17 21:17
ReporterFlorian Dold Assigned To 
PrioritylowSeverityfeatureReproducibilityhave not tried
Status newResolutionopen 
Summary0006652: support peer-to-peer payments
DescriptionRight now we have a strict separation between merchants and customers. Eventually we might also want to support direct payments between customers via their Taler wallet.

The main challenge for this is KYC. We could implement special KYCed reserves for this that are then used as the wire info for a payment (payto://taler-kyc-reserve/) from customer to customer. The KYC would allow transaction limits to be placed on receiving money as a customer. A prerequisite for these P2P payments would be that the receiving party has a KYC registered reserve/account with an exchange.
TagsNo tags attached.

Activities

Florian Dold

2021-01-17 20:53

manager   ~0017366

It's still totally unclear is how the signaling between the sender and receiver of the P2P payment will work. Unlike when a merchant is involved, the two parties can't directly communicate with each other. Of course the exchange might be able to help here, at least as long as it's not expensive for the exchange.

So what's the desired user experience here?

Does the receiver of the money initiate? If so, does the receiver simply give some generic address, or do they create some kind of "P2P contract terms"? How does the receiver learn whether/when they received a payment?

Does the sender of the money initiate? If so, how does the sender know when/how to sign deposit permissions? Or do we have some special "wildcard deposit permission" where the P2P receiver can substitute their own wire transfer information?

Florian Dold

2021-01-17 21:17

manager   ~0017367

Pro/con of sender-initiated payments:
* can be used to simply attach money to some message
* doesn't give the sender any guarantees what will happen with their money
* requires additional "wildcard deposit permission" support from the exchange
   (the receiver of the message does a /deposit, but can give arbitrary wire data)
* the contract terms will be chosen by the receiver, and will be completely under their control
* the size of the payment message is proportional to the number of coins involved

Pro/con of receiver-initiated payments:
* lots of overlap with payments based on a merchant backend
* unclear how the communication will happen between the two parties

I think the sender-initiated payments are simpler and cover more use cases that are not already covered by payments where a merchant backend is involved.

Issue History

Date Modified Username Field Change
2020-11-26 17:07 Florian Dold New Issue
2021-01-17 20:53 Florian Dold Note Added: 0017366
2021-01-17 21:17 Florian Dold Note Added: 0017367