Commit Graph

152 Commits

Author SHA1 Message Date
rockstardev
6784be2ce2 Adding logic to count signatures in multisig 2025-03-26 23:08:48 -05:00
nicolas.dorier
2911771f19 Feature: RBF and UX improvement to fee bumping 2025-03-11 17:44:18 +09:00
Nicolas Dorier
07b9eb079d Fix crash while migrating ETH payment data (#6539) 2025-01-08 19:24:37 +09:00
Andrew Camilleri
b797cc9af8 Multisig/watchonly wallet transaction creation flow proof of concept (#5743) 2024-12-10 21:56:52 +09:00
Nicolas Dorier
3dfdbf544a Automated processor get disabled after some repeated failures (#6320) 2024-10-20 00:08:28 +09:00
nicolas.dorier
c7a05c3f09 Fix elements payments 2024-10-16 22:34:17 +09:00
nicolas.dorier
80dc5028f7 Fix migration crashes for instance having monero, zcash 2024-10-10 11:13:23 +09:00
nicolas.dorier
212e8c3654 Fix potential crash in migration 2024-10-08 16:48:56 +09:00
Nicolas Dorier
4a31cf0a09 Migrate payment requests (#6260) 2024-10-01 16:07:51 +09:00
Nicolas Dorier
1d9ec253fb Fix migration of Invoice's payment (#6241) 2024-09-23 23:59:18 +09:00
Nicolas Dorier
3cf1aa00fa Payments should use composite key (#6240)
* Payments should use composite key

* Invert PK for InvoiceAddress
2024-09-23 17:06:56 +09:00
Nicolas Dorier
ba2301ebfe Refactor the InvoiceAddresses table (#6232) 2024-09-19 22:15:02 +09:00
Nicolas Dorier
0f93581ff5 Refactor confirmation count tracking (#6215) 2024-09-17 17:28:58 +09:00
d11n
f3d485da53 Invitation process improvements (#6188)
* Server: Make sending email optional when adding user

Closes #6158.

* Generate custom invite token and store it in user blob

Closes btcpayserver/app/#46.

* QR code for user invite

Closes #6157.

* Text fix
2024-09-12 12:31:57 +09:00
nicolas.dorier
c377617b5a Fix migration issue on invalid json char 2024-09-09 23:15:53 +09:00
nicolas.dorier
222e8f66df Fix entity half migrated entities for v2 2024-09-09 21:21:04 +09:00
Nicolas Dorier
c93497af10 Rename PaymentMethod => PaymentMethodId (#6198)
* Rename PaymentMethod => PaymentMethodId

* Rename DB Columns
2024-09-06 13:24:33 +09:00
Nicolas Dorier
99dda66bbc Rename PayoutData.Destination (#6197) 2024-09-06 10:34:10 +09:00
Nicolas Dorier
1dd37c5020 Refactor Payouts and PullPayments DB models (#6173) 2024-08-28 18:52:08 +09:00
Nicolas Dorier
3c40dc1f49 Delete columns CustomerEmail, OrderId, ItemCode (#6170) 2024-08-27 09:53:28 +09:00
Chukwuleta Tobechi
e0a0406825 Improved Notifications List View (#6050, #3871) 2024-07-02 17:55:54 +09:00
Nicolas Dorier
a295e123bc Migrate Payouts to new format (#5989)
* Migrate Payouts to new format

* Rename PayoutData column to PayoutMethodId
2024-06-28 20:07:53 +09:00
d11n
bf66b54c9a User: Add name and image URL (#6008)
* User: Add name and image URL

More personalization options, prerequisite for btcpayserver/app#3.

Additionally:
- Remove ambigious and read-only username from manage view.
- Improve email verification conditions and display.
- Greenfield: Update current user. Prerequisite for btcpayserver/app#13.

* Refactor UpdateCurrentUser

* Replace new columns by UserBlob

* Update email check and add test case for mailbox addresses

---------

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2024-06-26 17:39:22 +09:00
Nicolas Dorier
c134602cbd Remove Legacy Status from the code (#5982) 2024-05-15 07:49:53 +09:00
Nicolas Dorier
b4cd74056e Remove period concept from PullPayment (#5963) 2024-05-01 17:59:10 +09:00
Nicolas Dorier
0c35939001 Cleanup data from the InvoiceEvents table (#5904) 2024-04-25 14:09:01 +09:00
Nicolas Dorier
f4aafd5be3 Cleanup AddressesInvoices table (#5905) 2024-04-16 16:18:56 +09:00
Nicolas Dorier
f1a04a3bd0 Remove MySQL and Sqlite deps (#5910) 2024-04-15 19:08:25 +09:00
nicolas.dorier
4208110d57 Remove CheckoutV1 2024-04-05 16:58:13 +09:00
nicolas.dorier
57851cef9a Fix migration crash 2024-04-04 23:10:58 +09:00
Nicolas Dorier
6cc1751924 The Big Cleanup: Refactor BTCPay internals (#5809) 2024-04-04 16:31:04 +09:00
Andrew Camilleri
cb25c225e9 Remove custodians (#5863)
* Remove custodians

* Hide Experimental checkbox in the server policies

---------

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2024-03-29 00:28:27 +09:00
Nicolas Dorier
912a706de9 Make Payouts and PullPayments columns JSONB (#5800) 2024-03-14 11:13:26 +01:00
d11n
4943c84655 Invoice: Improve events display (#5775)
Closes #5773.

- Adds seconds to the displayed date and time
- Adds a tooltip that displays the full date and time including milliseconds
- Reintroduced the colored text in case of unusual events/states (this didn't work before)
2024-02-21 14:08:28 +01:00
d11n
6290b0f3bf Admins can approve registered users (#5647)
* Users list: Cleanups

* Policies: Flip registration settings

* Policies: Add RequireUserApproval setting

* Add approval to user

* Require approval on login and for API key

* API handling

* AccountController cleanups

* Test fix

* Apply suggestions from code review

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>

* Add missing imports

* Communicate login requirements to user on account creation

* Add login requirements to basic auth handler

* Cleanups and test fix

* Encapsulate approval logic in user service and log approval changes

* Send follow up "Account approved" email

Closes #5656.

* Add notification for admins

* Fix creating a user via the admin view

* Update list: Unify flags into status column, add approve action

* Adjust "Resend email" wording

* Incorporate feedback from code review

* Remove duplicate test server policy reset

---------

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2024-01-31 14:45:54 +09:00
Nicolas Dorier
3fc687a2d4 Fix: Payments to Top-Up could be undetected due to race condition (#5568) 2023-12-20 18:41:28 +09:00
Nicolas Dorier
ea2648f08f Fix: Update of inventory could override app settings being updated (#5565) 2023-12-19 20:53:11 +09:00
Andrew Camilleri
bac9ab08d1 Make wallet object system much more performant (#5441)
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2023-11-28 11:38:09 +01:00
Nicolas Dorier
9ccc42f556 Bump .NET 8.0 (#5479) 2023-11-21 14:11:17 +09:00
Nicolas Dorier
3ee4f43eb5 Remove CurrentRefund property in InvoiceData (#5494) 2023-11-21 12:52:40 +09:00
d11n
57bc90ad03 Archive stores and apps (#5296)
* Add flags and migration

* Archive store

* Archive apps
2023-09-11 09:59:17 +09:00
Andrew Camilleri
4063a5aaee Quality of life improvements to payout processors (#5135)
* Quality of life improvements to payout processors

* Allows more fleixble intervals for payout processing from 10-60 mins to 1min-24hours(requested by users)
* Cancel ln payotus that expired (bolt11)
* Allow cancelling of ln payotus that have failed to be paid after x attempts
* Allow conifguring a threshold for when to process on-chain payouts (reduces fees)

# Conflicts:
#	BTCPayServer.Tests/SeleniumTests.cs

* Simplify the code

* switch to concurrent dictionary

* Allow ProcessNewPayoutsInstantly

* refactor plugin hook service to have events available and change processor hooks to actions with better args

* add procesor extended tests

* Update BTCPayServer.Tests/GreenfieldAPITests.cs

* fix concurrency issue

* Update BTCPayServer/PayoutProcessors/BaseAutomatedPayoutProcessor.cs

---------

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2023-07-20 22:05:14 +09:00
nicolas.dorier
4e03c2523a Prune webhook data from database 2023-05-29 09:02:47 +02:00
Andrew Camilleri
783e4ccb35 Store Custom Roles (#4940) 2023-05-26 23:49:32 +09:00
Andrew Camilleri
8860eec254 Switch Apps to json not YML (#4792) 2023-05-23 09:18:57 +09:00
nicolas.dorier
7546ef7a8e Dotnet reformat 2023-04-10 11:07:03 +09:00
Andrew Camilleri
5d39bb7466 Allow LN Address to customize invoice metadata, and various bug fixes on LNUrl (#4855)
* Allow LN Address to customize invoice metadata

solves https://github.com/OpenSats/website/issues/8

* Refactor GetLNUrl

* Fix lightningAddresssettings.Max being ignored

* Fix: The payRequest generated by the callback wasn't the same as the original

---------

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2023-04-07 17:48:58 +09:00
Andrew Camilleri
fae1dc8dbb Adapt cookie auth to work with same API permission system (#4595)
* Adapt cookie auth to work with same API permission system

* Handle unscoped store permission case

* Do not consider Unscoped as a valid policy

* Add tests

* Refactor permissions scopes

---------

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2023-03-20 10:46:46 +09:00
Andrew Camilleri
e0486aaa24 Label Manager component (#4594)
* Label Manager component

closes #4464

* UI updates

* Test fix

* add test

* fix warnings

* fix select update bug

* add test

* fix test

* Increase payment box max-width

* add labels from address to tx on detection

* Exclude well known label from the dropdown

* Add test on transaction label attachement, tighten UpdateLabels method to only update address labels

---------

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2023-02-22 11:47:02 +09:00
Nicolas Dorier
2bd8227e20 Start using JSONB column instead of app side compressed data (#4574) 2023-02-21 15:06:34 +09:00