Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Digital receipt mechanism? #5

Open
msporny opened this issue May 6, 2013 · 1 comment
Open

Digital receipt mechanism? #5

msporny opened this issue May 6, 2013 · 1 comment
Labels
Milestone

Comments

@msporny
Copy link
Member

msporny commented May 6, 2013

How is a digital receipt achieved in the .payment() API? For example, how does the customer assert proof of ownership? Is there a data portability capability for customers to transfer their purchases from one Payment Provider to another?

@kumar303
Copy link
Member

Currently, the merchant implements a postback handler in order to verify that a customer owns a product. This is meant to prove that a payment happened, not that a customer has purchased an asset. It has a couple problems:

  • It only happens during purchase. A customer cannot switch devices and prove to the merchant "I own this asset."
  • It is specific to a payment provider. For example, if a customer pays through Mozilla's payment provider, the merchant must process a postback from Mozilla using a shared secret. If the customer pays through Acme payment provider, the merchant must process a postback in the same format but it must use a different shared secret between them and Acme.

If we specified a digital receipt then I think we could gain a couple nice features:

  • developers will have an easier time supporting multiple payment providers
  • developers will not have to invent their own user asset ownership system
  • two web apps could sell the same content (although this has complications around permission to sell assets)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants