-
Notifications
You must be signed in to change notification settings - Fork 11
Send payjoin #84
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
base: main
Are you sure you want to change the base?
Send payjoin #84
Conversation
|
This is awesome, thank you @DanGould. Obviously we'd love to have BIP78 in Envoy. I think it makes sense to have
We can get away with blocking in Rust cause a |
|
FWIW I think UI and "backend" work here can be totally decoupled.
On the FFI boundary instead of panicking we return some sentinel value (not very Rusty but it's FFI). We check for that value on Dart side and handle it in the UI. We also use |
|
Assigned |
|
Hi @icota @Jacksonearl2468 does it make sense to have everything run at the application layer using - https://github.com/LtbLightning/payjoin-flutter cc @BitcoinZavior? |
Payjoin-flutter can be decoupled from the UI logic and used selectively, every user may not want to use PayJoin. |
|
We are in the midst of a migration to BDK 1.0 so Payjoin will have to wait until after that is done. We prefer to use PDK directly rather than go through Flutter bindings |
where can I track this migration, do the bdk guys call this "wallet". little Confusion regarding the vocab they using 👇 |
@securitybrahh you can track it here: https://crates.io/crates/bdk_wallet We will release an Envoy beta this week with (our fork of) the above. Unfortunately still no Payjoin but it's on the roadmap. |
Draft logic for sending payjoin. This is NOT a complete design by any means, just a PoC draft to start a conversation and demonstrate the parameters of an integration.
@icota how feasible does payjoin seem too pursue?
Regarding the design
First, create_payjoin makes an http request which should proxy through http_tor. Payjoin endpoints are often .onion services. Should payjoin functions rather be exposed to a Dart file which then consumes the logic to create the request? native wallet ffi should probably not have a reqwest dependency.
Second, errors are handled with panics here. I see an
error_returnPsbt dummy used for data transport. Is this for the c bindings? Production code should obviously not panic like this PoC does.I'm curious too hear any feedback you may have