Commit Graph

1513 Commits

Author SHA1 Message Date
Andrew Camilleri
04726b3ee4 Payouts: Detect External OnChain Payouts (#2462)
* Refactor and decouple Payout logic

So that we can support lightning + external payout payments

Fixes & refactoring

almost there

final

Remove uneeded payment method checks

Refactor payouts to handle custom payment method specific actions

External onchain payments to approved payouts will now require "confirmation" from the merchant that it was sent by them.

add pill tabs for payout status

* Improve some UX around feature

* add test and some fixes

* Only listen to address tracked source and determine based on wallet get tx call from nbx

* Simplify isInternal for Payout detection

* fix test

* Fix Noreferrer test

* Make EnsureNewLightningInvoiceOnPartialPayment more resilient

* Make notifications section test more resilient in CanUsePullPaymentsViaUI
2021-07-16 09:57:37 +02:00
Nicolas Dorier
73b461f8d0 Greenfield: add text search terms to an invoice (#2648) 2021-07-14 23:32:20 +09:00
Wouter Samaey
15be593bbd Save paymentRequestId in Metadata when creating invoice for Payment Request (#2644)
* Save paymentRequestId in Metadata when creating invoice

* Added Payment Request ID + link on invoice detail page

* Added paymentRequestId to the webhook payload

* Removed PaymentRequestId from webhook payload (rolled back previous change)

* Using strongly typed InvoiceMetadata

* Added OrderUrl metadata field to invoice + link

* Added Metadata.OrderUrl to docs

* Made orderUrl visible when no orderId is present
2021-07-14 20:43:13 +09:00
Umar Bolatov
73c89ac28d Auto-select store when creating a new invoice (#2680)
* Auto-select store when creating a new invoice

* Set types as nullable in InvoiceController.UI.cs
2021-07-14 20:40:18 +09:00
Umar Bolatov
861e5b1530 Add webhook delivery status indicator (#2679)
* Add webhook delivery status indicator

As discussed in: https://github.com/btcpayserver/btcpayserver/discussions/2616

* Add relative delivery time to tooltips
2021-07-12 21:58:11 +09:00
Andrew Camilleri
72d5c11811 Greenfield: Add CanModifyInvoices Permissions (#2595) 2021-07-11 00:30:01 +09:00
Umar Bolatov
aefb81b7f0 Add "skip" and "limit" params for onchain txs API endpoint (#2688)
Discussed here: https://github.com/btcpayserver/btcpayserver/discussions/2667
2021-07-10 13:04:01 +09:00
Nicolas Dorier
4bb3d60b6c Add misc/permissions to document the hierarchical structure (#2654) 2021-07-08 14:34:10 +09:00
rockstardev
48355129c5 Properly counting transactions that impact NetworkFee 2021-07-06 21:20:13 +02:00
Andrew Camilleri
6c856aba48 Introduce Server paging for Payouts List (#2564)
* Introduce Server paging for Payouts List

* Add paging params

* Minor code and formatting improvements

* View updates

* Apply suggestions from code review

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* fix tests

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
2021-06-30 16:59:01 +09:00
Andrew Camilleri
cb2dd464f1 GreenField: Add StoreId to Invoice model (#2592) 2021-06-24 23:15:51 +09:00
Wouter Samaey
2ea3baf36e Minor UI improvements (#2606)
* Added "Checkout" button to invoice detail page

* Added missing icon

All other pages have a "plus" icon on the primary button, except this page

* Button icons are always in front, not after like here was
2021-06-24 19:52:41 +09:00
d11n
3c80621dac Add payjoin option to hot wallet setup (#2450)
* Add payjoin option to hot wallet setup

Enables payjoin by default when creating a hot wallet and offers the user an opt-out.

Test fix

* Display PayJoin option only if it is available

* Test fixes

* Update hot wallet checks

* Test fix after rebase

* Use toggle buttons for enabling options
2021-06-18 10:25:17 +09:00
Nicolas Dorier
6b4ff4ce2c Merge pull request #2575 from NicolasDorier/refactor/wallet-cleanup
Cleanup some old code in wallet setup
2021-06-17 21:20:28 +09:00
Pavlenex
1c440ed36c Update Maintenance.cshtml (#2576)
* Update Maintenance.cshtml

* fix BTCPay Server maintenance error

* Rephrase "derivation settings" to "wallet settings"

* Pay button text fix

* rephrase CoinSwitch description
2021-06-17 19:40:08 +09:00
nicolas.dorier
70f56d5920 Encrypt WalletSetupViewModel.Config 2021-06-17 19:26:50 +09:00
nicolas.dorier
8a1d5bbc57 Remove outdated code in UpdateWallet 2021-06-17 16:39:55 +09:00
nicolas.dorier
956370592f Create a dedicated IsHotwalletProperty in the DerivationSchemeSettings 2021-06-17 15:36:22 +09:00
nicolas.dorier
afd479ac69 Remove the DerivationSchemeViewmodel.Enabled property 2021-06-17 15:08:04 +09:00
nicolas.dorier
39a4be5641 Remove HintAddress 2021-06-17 14:11:01 +09:00
d11n
70fcd053cd Signing context cleanup (#2568)
* Signing Context cleanup

Removes extra NBXSeedAvailable property in SigningContext, which got introduced in #2559. It is not needed since each view model involved already has it.

* Fix button in link
2021-06-15 17:35:23 +09:00
Umar Bolatov
3d21d2724e Fix bug with LN payment method API endpoint throwing 500 (#2567)
close #2566
2021-06-14 18:19:52 +09:00
d11n
3c0292f074 Wallet: Signing UI improvements (#2559)
* Refactoring to generalize wizard layout

* Wallet: Add intermediate signing options view

* Update BTCPayServer/Views/Wallets/WalletSigningOptions.cshtml

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* Skip signing options for hot wallets

* Update signing options wordings, add PSBT doc link

* Fix test

* Remove form route params

* Use decode command for PSBT

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
2021-06-14 14:06:56 +09:00
nicolas.dorier
371acc84a8 Do not retrieve all payouts in GetPullPayment every time 2021-06-10 18:54:27 +09:00
Andrew Camilleri
cd9feccf6e Mark Payouts as Paid (#2539)
* Mark Payouts as Paid

This PR allows users to mark payouts as paid manually through the UI  and through the API. It also sets up the payout proof system to be able store a manual proof that will in a later PR allow you to specify a proof of payment (link or text)

* add docs, test and greenfield client

* remove extra docs stuff

* Update BTCPayServer.Tests/GreenfieldAPITests.cs

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>

* clean up pull payment/payouts fetch code

* Ensure payoutis are retrieved with pull payment

Co-authored-by: britttttk <39231115+britttttk@users.noreply.github.com>
2021-06-10 18:43:45 +09:00
Nicolas Dorier
e93b030bfe Update HWI library, warn users to run newer version (#2544)
* Update HWI library, warn users to run newer version

* Update BTCPayServer/wwwroot/js/vaultbridge.ui.js

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>

* Update BTCPayServer/wwwroot/js/vaultbridge.ui.js

Co-authored-by: Pavlenex <pavle@pavle.org>

Co-authored-by: Zaxounette <51208677+Zaxounette@users.noreply.github.com>
Co-authored-by: Pavlenex <pavle@pavle.org>
2021-06-06 21:02:15 +09:00
Andrew Camilleri
9ecd27dc85 Merge pull request #2474 from bolatovumar/feat/test-webhooks
Add ability to send test webhook call
2021-06-04 13:01:57 +02:00
Kukks
28da78fc78 Improve tests and small refactoring 2021-06-04 12:20:45 +02:00
Umar Bolatov
bc33b32522 Add delivery ID to test webhook succes message 2021-06-03 21:16:27 -07:00
Umar Bolatov
4671f08b64 Augment webhook test error message 2021-06-03 21:16:26 -07:00
Umar Bolatov
9f6f74df59 Show success/error message after sending test webhook 2021-06-03 21:16:26 -07:00
Umar Bolatov
7cf6c97d3f Return view after webhook test POST call 2021-06-03 21:16:25 -07:00
Umar Bolatov
2262acf12b Add ability to send test webhook call 2021-06-03 21:16:24 -07:00
Umar Bolatov
8731055786 Use UserNotFound instead of NotFound 2021-06-02 20:02:31 -07:00
Umar Bolatov
be05b6aa90 Specify correct return type on delete user methods 2021-06-02 20:02:31 -07:00
Umar Bolatov
0b4d94faf2 Remove unnecessary null check 2021-06-02 20:02:30 -07:00
Umar Bolatov
9f8f677125 Remove unused IsAdmin method 2021-06-02 20:02:30 -07:00
Umar Bolatov
949d6bf584 Replace admin check with CanModifyServerSettings authorization policy 2021-06-02 20:02:30 -07:00
Umar Bolatov
9fc2d2b76b Remove CanDeleteUser constraint from "/api/v1/users/{userId}" endpoint 2021-06-02 20:02:29 -07:00
Umar Bolatov
d9935ada9d Add "/api/v1/users/me" endpoint 2021-06-02 20:02:29 -07:00
Umar Bolatov
b4076b53e8 Add IsAdminUser method to UserService 2021-06-02 20:02:28 -07:00
Umar Bolatov
53c81918a5 Enable nullable reference checking in UsersController 2021-06-02 20:02:28 -07:00
Umar Bolatov
104092702a Simplify DeleteUser method 2021-06-02 20:02:27 -07:00
Umar Bolatov
2ed8341403 Add IsRoleAdmin to user service 2021-06-02 20:02:26 -07:00
Umar Bolatov
e5a196918f Add user service 2021-06-02 20:02:26 -07:00
Umar Bolatov
907ae760e0 Add CanDeleteUser policy 2021-06-02 20:02:25 -07:00
Umar Bolatov
fe107cd23f Add DELETE action for api/v1/users endpoint 2021-06-02 20:02:22 -07:00
Dennis Reimann
a830c1e812 Use ~ prefix for local PoS image references 2021-06-01 14:34:06 +02:00
Dennis Reimann
8eb85acb88 Self-host PoS sample images
As brought up in #2447 and previously been worked on in #1039.
2021-06-01 14:34:06 +02:00
Andrew Camilleri
3b375929c1 Support wider server sync info in greenfield server info (#2511)
fixes #2498
2021-05-19 13:07:28 +09:00