Commit Graph

231 Commits

Author SHA1 Message Date
Andrew Camilleri
8fd4a816a6
Allow Payjoin for wallet receive addresses (#2425)
* Allow Payjoin for wallet receive addresses

* wip

* show bip21 and additional work

* style better

* add to docs

* pr changes

* remove from state when unreserved
2021-04-13 12:26:36 +09:00
Andrew Camilleri
ad1b708da5
Provide more data through OnChain Wallet API (#2420)
Provides unconf/conf balanaces, keypath + address + timestamp of utxos
2021-04-08 12:43:51 +09:00
Andrew Camilleri
f367480857
GreenField: Add FeeRate To Wallets API (#2375)
* GreenField: Add FeeRate To Wallets API

closes #1846

* make dedicated endpoint for fee rate

* remove unused call
2021-04-07 15:16:17 +09:00
xpayserver
475809b1a0
Make Invoice Create Faster And Fix Gap Limit Issue (#1843)
* Make Invoice Create Faster And Fix Gap Limit Issue

This make address reserve only when user "activate" paymet method in ui. optional setting in store checkout ui.

* Fix swagger documentation around Lazy payment methods

* fix changed code signature

* Add missing GreenField API for activate feature

* Fix checkout experience styling for activate feature

* Fix issue with Checkout activate button

* Make lightning also work with activation

* Make sure PreparePaymentModel is still called on payment handlers even when unactivated

* Make payment  link return empty if not activated

* Add activate payment method method to client and add test

* remove debugger

* add e2e test

* Rearranging lazy payments position in UI to be near dependent Unified QR code

* fix rebase conflicts

* Make lazy payment method mode activate on UI load.

Co-authored-by: Kukks <evilkukka@gmail.com>
Co-authored-by: rockstardev <rockstardev@users.noreply.github.com>
Co-authored-by: Andrew Camilleri <kukks@btcpayserver.org>
2021-04-07 13:08:42 +09:00
nicolas.dorier
e1fed90b71
bump versions 2021-03-11 22:48:40 +09:00
Andrew Camilleri
cdfdad3e3d
GreenField API: Wallet API (#2246)
* GreenField: Wallet API

* more work

* wip

* rough fiunish of transaction sending api

* Allow to create tx without broadcasting and small fixes

* Refactor Wallet Receive feature ad add greenfield api for address reserve for wallet

* add wallet api client

* add docs

* fix json converter tags

* fixes and add wallet tests

* fix tests

* fix rebase

* fixes

* just pass the tests already

* ugggh

* small cleanup

* revert int support in numeric string converter and make block id as native number in json

* fix LN endpoint

* try fix flaky test

* Revert "try fix flaky test"

This reverts commit 2e0d256325.

* try fix other flaky test

* return proepr error if fee rate could not be fetched

* try fix test again

* reduce fee related logic for wallet api

* try reduce code changes for pr scope

* change auth logic for initial release of wallet api
2021-03-11 21:34:52 +09:00
Andrew Camilleri
e8df010449
Add redirectAutomatically to GreenField Invoice API (#2321) 2021-03-01 22:34:07 +09:00
Andrew Camilleri
949136b161
GreenField API: Configure Store Lightning Payment Method v2 (#2208)
* GreenField API: Configure Store Lightning Payment Method

* Remove internal ln node endpoint and use Auth service to check internal node usage

* fix test
2021-02-26 11:58:51 +09:00
Nicolas Dorier
db0854f203
Update NBitcoin, NetworkType => ChainName, signet support (#2224) 2021-01-27 14:39:38 +09:00
nicolas.dorier
df52d01a1d
Revert "GreenField API: Configure Store Lightning Payment Method"
This reverts commit b40095f603.
2021-01-17 21:40:16 +09:00
Kukks
ccfa85b5e0 fix compile errors 2021-01-16 09:22:07 +01:00
Kukks
b40095f603 GreenField API: Configure Store Lightning Payment Method 2021-01-12 09:25:35 +01:00
Andrew Camilleri
01be74b219
Add Bitcoin Output descriptor support (#2169)
* Add Output descriptor support

* Fix exception message and fix Parse Deriv Scheme Settings when electrum

* fix test
2021-01-11 11:22:42 +09:00
Andrew Camilleri
91cb9129ab
FGreenField: Add DefaultPaymentMethod to Stores API (#2171) 2020-12-29 18:33:44 +09:00
Andrew Camilleri
5803512820
Remove Default from OnChainPayment Method (#2170)
Makes more sense to do it on the Store endpoint after thinking about it.
2020-12-29 17:38:31 +09:00
Nicolas Dorier
623347bc48
Add Label and accountKeyPath to the on chain payment methods (#2166) 2020-12-28 13:59:01 +01:00
Andrew Camilleri
69eaaef963
GreenField: Store OnChain Payment Method (#2157)
* GreenField: Store set payment methods

* add swagger docs

* fix swagger
2020-12-23 14:00:38 +09:00
Andrew Camilleri
034b732e7c
GreenField: Update invoice metadata (#2095)
* GreenField: Update invoice metadata

* add swagger

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2020-12-12 15:15:34 +09:00
Andrew Camilleri
0652e30c30
GreenField: Notifications API (#2055)
* GreenField: Notifications API

This refactors notifications so that we dont have a bunch of duplicated direct access to db contexts in controllers and then introduces new endpoints to fetch/toggle seen/remove  notifications of the current user.

* add tests + docs

* fix test

* pr changes

* fix permission json
2020-12-11 23:11:08 +09:00
nicolas.dorier
798cf66e3f
Add checkoutLink and defaultLanguage to GreenField invoice 2020-12-11 12:04:18 +09:00
nicolas.dorier
e65d42bd61
Add redirectURL to create invoice on Greenfield 2020-12-09 23:20:13 +09:00
nicolas.dorier
97b00053c4
Do not crash on invocie creation error for greenfield (Fix #2111) 2020-12-08 14:47:20 +09:00
nicolas.dorier
06d6d15441
Bump version 2020-11-26 00:15:40 +09:00
nicolas.dorier
18e68d04f9
Rename invoice states and payment states 2020-11-23 18:28:35 +09:00
Nicolas Dorier
f9b86a6b2e
Merge pull request #1901 from btcpayserver/api/invoice-extras
GreenField: Add Invoice Payment methods endpoints
2020-11-20 10:25:00 +09:00
Nicolas Dorier
9c5fd1b478
Merge pull request #2058 from NicolasDorier/webhook2
Add Webhooks in store's settings
2020-11-19 12:17:34 +09:00
nicolas.dorier
07c5c2972d
Add callback doc 2020-11-16 12:13:27 +09:00
rockstardev
38ca0accde Removing section separators 2020-11-14 12:07:11 -06:00
nicolas.dorier
df79c2cf48
Improve tests of webhooks 2020-11-14 13:39:44 +09:00
nicolas.dorier
94bcbeb604
Add Greenfield API 2020-11-13 14:15:03 +09:00
rockstardev
f84f2dca64 Adding option for unified onchain QR code to Checkout Experience 2020-11-09 01:11:03 -06:00
nicolas.dorier
f3611ac693
Add Webhooks in store's settings 2020-11-08 15:57:24 +09:00
Kukks
256d711fde fix 2020-10-27 11:01:22 +01:00
Kukks
1d82c3779b Remove AwaitingConfirmation 2020-10-27 09:49:35 +01:00
Kukks
9a92bc05db fix json types 2020-10-27 09:47:22 +01:00
Kukks
8962bf00f6 GreenField: Add Invoice Payment methods endpoints
lets you fetch all active payment methods data + payments made
2020-10-27 09:47:21 +01:00
nicolas.dorier
da864f4c6c
bump nbx and nbitcoin 2020-10-24 15:27:48 +09:00
nicolas.dorier
ad221eaaa2
bump 2020-10-08 17:51:38 +09:00
Kukks
3d2b4cbfa8 Add Created date to user, add verified column in list and make user list use same model as modern lists 2020-10-05 13:00:15 +02:00
Dennis Reimann
8ba852084e
Users API: Add roles (#1914)
* API: Fix create user response model

* API: Add roles to user data
2020-09-16 14:17:33 +02:00
Nicolas Dorier
81561c6f3d
Merge pull request #1800 from btcpayserver/apikeys/redirect
Add API Keys Application identifier + Redirect
2020-09-03 21:27:12 +09:00
nicolas.dorier
3c3e2f80da
Push only one tag 2020-09-01 11:51:11 +09:00
nicolas.dorier
eba0778045
Nugetify the BTCPayServer.Client 2020-09-01 11:49:10 +09:00
Kukks
6a8dbf49da clean and remove hack 2020-08-28 09:15:08 +02:00
Kukks
0e07fcc706 fixes and adapt 2020-08-28 09:00:14 +02:00
nicolas.dorier
709b06baa3
Remove invoices/email for this PR 2020-08-27 11:00:04 +09:00
nicolas.dorier
f900d520da
Add InvoiceTime, Expiration and monitoring to Invoice greenfield API 2020-08-26 21:36:32 +09:00
nicolas.dorier
be21e7d253
Remove PaymentMethodData from invoice entity 2020-08-26 21:36:32 +09:00
nicolas.dorier
8f0cc9de03
Update swagger 2020-08-26 21:36:32 +09:00
nicolas.dorier
67b04473b5
Decouple the CreateInvoiceCore from BitpayCreateInvoice, remove some features from greenfield invoice for now 2020-08-26 21:36:32 +09:00
nicolas.dorier
b2ff041ec0
Create Metadata property for InvoiceEntity, migrate all data without logic there 2020-08-26 21:36:31 +09:00
Kukks
8dea7df82a
make individual action items 2020-08-26 21:36:31 +09:00
Kukks
5f6f54db36
Remove old props 2020-08-26 21:36:31 +09:00
Kukks
41bebfedc4
add swagger docs 2020-08-26 21:36:31 +09:00
Andrew Camilleri
8f4f87cd8f
Update BTCPayServer.Client/Models/InvoiceData.cs
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2020-08-26 21:36:30 +09:00
Kukks
7ca2df9fcc
rename converter 2020-08-26 21:36:30 +09:00
Kukks
d96bd15b3b
add status and refactor 2020-08-26 21:36:30 +09:00
Kukks
cb5601c68b
unarchive endpoint + formatting 2020-08-26 21:36:29 +09:00
Kukks
34e76494e3
GreenField: Invoice API 2020-08-26 21:36:29 +09:00
nicolas.dorier
90ccf88d4b
Bump libraries and version and changelog 2020-08-16 21:47:03 +09:00
Nicolas Dorier
3ce16dc9a3
Merge pull request #1782 from xpayserver/btc-only
Add Bitcoin Only Build
2020-07-29 21:58:28 +09:00
nicolas.dorier
02998fff49
Add Altcoins-Release and Altcoins-Debug configurations 2020-07-29 18:55:28 +09:00
Kukks
7230a91b4f Make Decimal json converter work for other number types 2020-07-29 08:44:52 +02:00
XPayServer
92ae1109d0 Add Bitcoin Only Build 2020-07-28 22:48:51 +02:00
rockstardev
f88c02cccd Removing unused usings, readonly fields where possible 2020-06-28 22:07:48 -05:00
rockstardev
b6c7af32de Cleaning up bom from cs files 2020-06-28 21:44:35 -05:00
nicolas.dorier
51514252b6
Run dotnet format 2020-06-28 17:55:27 +09:00
Nicolas Dorier
dbb2924ccc
Fix: Create store could be called with a scoped store's modify apikey (#1696) 2020-06-27 15:34:03 +09:00
nicolas.dorier
603a3dd273
bump NBitcoin 2020-06-26 16:29:40 +09:00
nicolas.dorier
d03124dfba
Add an approval state to pull payments 2020-06-25 13:35:10 +09:00
Nicolas Dorier
8230a408ac
Add pull payment feature (#1639) 2020-06-24 10:34:09 +09:00
nicolas.dorier
f40a8853f6
Require Owner role to the store for modifying store via Greenfield 2020-06-12 18:26:20 +09:00
nicolas.dorier
8dd6ecc0b8
Fix lightning implementation, docs and tests 2020-06-09 17:24:34 +09:00
nicolas.dorier
3fbe86c286
Rename Permission.StoreId to Permission.Scope 2020-06-07 23:17:48 +09:00
Nicolas Dorier
44ee7c66ce
Merge pull request #1620 from NicolasDorier/additionaldata
[GreenField] Add additional data to allow roundtrip of upper version fields
2020-06-01 19:23:35 +09:00
nicolas.dorier
ec4c346e0a
[Greenfield] Document store API 2020-05-31 12:04:23 +09:00
nicolas.dorier
5099f98d2a
[GreenField] Add additional data to allow roundtrip of upper version fields 2020-05-31 11:51:36 +09:00
nicolas.dorier
048dff7e9e
Always use second based TimeSpan in Greenfield 2020-05-31 08:52:32 +09:00
nicolas.dorier
d9a93f996f
Merge branch 'master' of https://github.com/btcpayserver/btcpayserver 2020-05-29 18:47:40 +09:00
Kukks
4947fa4d45 Add also money json converter 2020-05-29 10:15:01 +02:00
Kukks
37f4b34b5e Add Lightmoney json converter + do swagger defs for ln api 2020-05-29 10:04:28 +02:00
nicolas.dorier
66206399e1
Rename LightningPrivateRouteHint =>privateRouteHints 2020-05-29 09:03:07 +09:00
Andrew Camilleri
1e3f62718d
GreenField: Cross-implemenation Lightning Node API (#1566)
* GreenField: Cross-implemenation Lightning Node API

* switch to hard unrsstricted check

* fix

* set LightningPrivateRouteHints in swagger + stores api

* add priv route hint

* rename models and add swagger defs to models
2020-05-29 09:00:13 +09:00
Kukks
95dbb65612 GreenField: Payment Request property missing jsonconverter 2020-05-28 16:57:03 +02:00
nicolas.dorier
77f6019d82
Use EnforceLowR suggestion of NBXplorer for signing 2020-05-25 06:34:49 +09:00
nicolas.dorier
25e6f82aa3
Refactor parameter passing in wallet functions 2020-05-25 04:55:28 +09:00
Andrew Camilleri
79b034b505
GreenField: Add properties to Store API (#1573)
* GreenField: Add properties to Store API

* Update StoreBaseData.cs

* fix api

* fix swagger
2020-05-24 04:13:18 +09:00
nicolas.dorier
1d092a15fb
Refactor server info data structure 2020-05-20 03:27:06 +09:00
Andrew Camilleri
5b3b96b372
GreenField: Payment Requests CRUD (#1430)
* GreenField: Payment Requests CRUD

* fixes

* fix swagger

* fix swag

* rebase fixes

* Add new permissions for payment requests

* Adapt PR to archive

* fix tst

* add to contains policxy

* make decimals returned as string due to avoid shitty language parsing issues

* do not register decimal json converter as global

* fix cultureinfo for json covnerter

* pr changes

* add json convertet test

* fix json test

* fix rebase
2020-05-20 02:59:23 +09:00
Dennis Reimann
3b6dbe76c5
Add sync state 2020-05-18 16:02:15 +02:00
Dennis Reimann
e3b348b55c
GreenField: Add Server Info API basics 2020-05-18 15:29:04 +02:00
nicolas.dorier
87352f0b62
Make sure wallet support decimal fee, and allow user to select different fee rate based on expected confirmation time 2020-05-05 19:10:53 +09:00
nicolas.dorier
96c04481da
bump NBXplorer 2020-05-05 06:55:19 +09:00
Kukks
33ea8984fc format 2020-04-30 16:44:27 +02:00
Kukks
85517b0344 GreenField: Prep store for more data
refactored things around a bit to make it cleaner for when we add more properties to the store model
2020-04-30 16:43:16 +02:00
Andrew Camilleri
c784144a07
Greenfield: Add update store API (#1495)
* Greenfield: Add update store API

* update update store model

* change greenfield controller name to stop conflict
2020-04-27 20:13:20 +09:00
nicolas.dorier
072139f707
bump Nbitcoin 2020-04-26 01:11:50 +09:00
nicolas.dorier
9d80db98c5
bump NBitcoin 2020-04-26 01:01:09 +09:00
nicolas.dorier
47f16aadd5
Rely on NBitcoin to get the expected hash 2020-04-26 00:26:02 +09:00
Nicolas Dorier
7adaa146dc
Merge pull request #1471 from dennisreimann/api-health-endpoint
GreenField: Add health check endpoint
2020-04-23 02:44:11 +09:00
Kukks
34c1a304a9 Add Create Store 2020-04-22 15:05:13 +02:00
Kukks
4f1ae4733c remove store api 2020-04-22 15:05:13 +02:00
Kukks
e009c1a25a Fixing CheckNoDeadLink test now that btse blocks our call from circleci 2020-04-22 15:05:13 +02:00
Kukks
79f12a7058 fix client 2020-04-22 15:05:13 +02:00
Kukks
deb197cfa5 GreenField: Get Stores 2020-04-22 15:05:13 +02:00
Dennis Reimann
22e39998e2
Updates from code review
Thanks @kukks!
2020-04-21 16:43:14 +02:00
Dennis Reimann
70d1056d48
API: Health endpoint returns synchronized state 2020-04-21 16:29:54 +02:00
Dennis Reimann
3bd5c3e1b5
API: Add health check endpoint 2020-04-21 14:59:33 +02:00
Kukks
0077105a2d remove hacks 2020-04-18 08:29:07 +02:00
nicolas.dorier
42be03b560
bump nbx and nbitcoin 2020-04-16 19:37:10 +09:00
Kukks
ad284a4b61 Refactor UI for Add APIKey/Authorize 2020-04-10 09:49:01 +02:00
Nicolas Dorier
79a0f97abb
Merge pull request #1432 from Kukks/api/permission-blob
GreenField: Switch to Blob for API Keys
2020-04-06 17:42:32 +09:00
nicolas.dorier
fd026a9733
Refactor server-side 2020-04-05 12:02:36 +09:00
Kukks
c6d75de3d7 GreenField: Switch to Blob for API Keys 2020-04-02 09:32:22 +02:00
nicolas.dorier
1895e154d9
Add missing file 2020-03-27 18:42:59 +09:00
nicolas.dorier
6d7b57ea3b
A api key can always revoke itself, add a route to delete any api key 2020-03-27 14:46:51 +09:00
nicolas.dorier
39a8c3fe47
GreenField: Create API Key 2020-03-27 14:17:31 +09:00
Kukks
f8f358ebdb add to client, fix tests and doc 2020-03-20 17:14:47 +01:00
nicolas.dorier
d2864ccd7c
Make sure ApiKeyData set all the fields, remove UserId 2020-03-20 20:00:05 +09:00
nicolas.dorier
ad4dbdad6d
Fix the PermissionJsonConverter 2020-03-20 19:57:00 +09:00
nicolas.dorier
53e7c84e73
Fix tests 2020-03-20 18:56:30 +09:00
nicolas.dorier
fb36ed2cae
Fix tests 2020-03-20 14:07:42 +09:00
nicolas.dorier
a0e638d500
Switch from System.Text.Json to Newtonsoft, typify the BTCPayServer.Client 2020-03-20 14:01:51 +09:00
nicolas.dorier
318d826694
Rename Permissions.Can.. to Policies.Can.. 2020-03-20 13:41:47 +09:00
nicolas.dorier
29a807696b
Refactor permissions of GreenField 2020-03-19 23:43:51 +09:00
nicolas.dorier
e50e3f662d
Can create user without authentication if there is no admin 2020-03-18 23:10:15 +09:00
Kukks
e99767c7e2 Greenfield API: Create User
Slightly big PR because I started refactoring to reduce code duplication between the UI based business logic and the api one.
2020-03-17 08:21:27 +01:00
nicolas.dorier
348934488d
Refactor tests for greenfield 2020-03-16 16:36:55 +09:00
Kukks
8173296c96 Greenfield API: Get current User
Builds on #1368
This PR adds a new endpoint: Get current user.. It only returns the current user's id and email for now( let's extend later)
It also adds a new permission: `ProfileManagement` which is needed for this endpoint (and for update endpoints later)
2020-03-12 14:59:24 +01:00
Kukks
2002c6750b target netstandard2.1 for Client 2020-03-11 16:54:53 +01:00
Kukks
233fa8a4a1 BTCPayServer.Client library + Revoke API Key 2020-03-11 16:54:53 +01:00