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

Draft Concept: Completely Re-Implement Cryptopay Plugin #26

Open
pozylon opened this issue Aug 24, 2022 · 1 comment
Open

Draft Concept: Completely Re-Implement Cryptopay Plugin #26

pozylon opened this issue Aug 24, 2022 · 1 comment

Comments

@pozylon
Copy link
Member

pozylon commented Aug 24, 2022

The Unchained plugin is not working well and there is conceptual problems with it so I'm going to re-implement it:

  1. Webhooks delivering transactions should write into a DB collection that resembles the balances of each public key
  2. Webhooks delivering prices should just update a currency conversion table used for conversions in pricing calculation
  3. Webhooks should basically just try to checkout an order or process payment, the plugin should retrieve the transactional data from the db and only accept what is coming from there
  4. Flag transactions used when accepting a payment based on balance in wallet (no replay)
@pozylon
Copy link
Member Author

pozylon commented Sep 2, 2022

  • Reduce middleware to only checkout initiating (= similar like checkoutCart from client), without all the magic
  • Checkout based on data in specific collection, not what is provided
  • Pay BTC orders in BTC and pay ETH orders in ETH
  • Store rates universally
  • Migrate all Price Converting Plugins to Worker Plugins that update conversion rates, use product-rateconversion for all cases (ecb-interbank, coinbase, cryptopay)
  • Extend the cryptopay plugin to support XYZ -> ETH by leveraging the rate table
  • Pay BTC orders in ETH
  • Pay SHIB orders in ETH

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

No branches or pull requests

1 participant