Commit Graph

2074 Commits

Author SHA1 Message Date
nicolas.dorier
d7cb6f1cca Add a way to customize lightning invoice description 2018-04-07 16:27:46 +09:00
nicolas.dorier
1cc5427cbb Improve error message if you can't create an invoice in the UI 2018-04-05 15:44:27 +09:00
nicolas.dorier
6270a626fb Fix checkout experience custom logo and css 2018-04-05 11:34:25 +09:00
nicolas.dorier
ecc5032bb2 Fix error message if invalid input lightning max value / min value. Increase cache of currency to 15 min 2018-04-03 17:54:50 +09:00
nicolas.dorier
325b359ff6 Add OnChainMinValue 2018-04-03 17:39:28 +09:00
nicolas.dorier
149c29963d Add Point of Sale feature to BTCPay 2018-04-03 16:58:47 +09:00
lepipele
5dea0312ac Plugging NodeInfo reference 2018-03-30 15:23:05 +09:00
lepipele
a171e00280 Adding PeerInfo textbox
We'll need to heavily refactor this HTML and CSS... way to many styles and complex structure
2018-03-30 15:23:03 +09:00
nicolas.dorier
b9b4b5ea39 log invoice event if Lightning max value exceeded 2018-03-28 23:15:10 +09:00
nicolas.dorier
e23243565f Refactor CreateInvoiceCore to better give feedback on payment method errors to the merchant, be faster, and give NodeInfo 2018-03-28 22:37:01 +09:00
nicolas.dorier
26aac66a76 Allow merchant to customize their checkout page 2018-03-27 15:14:50 +09:00
nicolas.dorier
a562e90bdb Separate Checkout Experience settings from General store settings 2018-03-27 14:48:32 +09:00
nicolas.dorier
7dd88d8d8f Can send max invoice value for lightning payments 2018-03-26 01:57:44 +09:00
nicolas.dorier
95290e8331 Disable convertir tab for all lightning payments 2018-03-24 23:43:02 +09:00
nicolas.dorier
8e38da80e0 Better UX to set the xpub correctly 2018-03-24 20:40:26 +09:00
nicolas.dorier
a0d2790491 Activate spanish 2018-03-24 14:35:49 +09:00
nicolas.dorier
2072b6e136 Fix english selection when the store has not set default language 2018-03-24 01:58:11 +09:00
nicolas.dorier
7d17bf7f2a Can set store default language 2018-03-23 17:27:48 +09:00
nicolas.dorier
39b34ff4ed Can invite user to manage your store 2018-03-23 16:24:57 +09:00
nicolas.dorier
3b2cf2f1de Can add administrator, fix #65 2018-03-22 19:55:14 +09:00
nicolas.dorier
ae7cfe90ab Show the NodeInfo when testing connection 2018-03-22 12:02:38 +09:00
nicolas.dorier
c0b903d79c Wallet page is now an action link in the store settings 2018-03-22 01:07:11 +09:00
nicolas.dorier
d426d66819 fill exisitng values in AddDerivationScheme and AddLightningNode 2018-03-21 03:05:51 +09:00
nicolas.dorier
265cddc38b Change the UX to set lightning node or derivation schemes 2018-03-21 02:48:11 +09:00
nicolas.dorier
21b91ac8f7 Add btc.lightning and ltc.lightning 2018-03-21 02:09:25 +09:00
nicolas.dorier
6d611d7d05 Can connect directly to CLightning via TCP or UNIX socket 2018-03-21 00:31:19 +09:00
nicolas.dorier
2b2e12b290 Abstract ChargeClient to prepare for support of other lightning implementation 2018-03-20 11:59:43 +09:00
nicolas.dorier
cc186fc8b3 Fix bug: Incorrect confirmation count in Invoice screen under some circumstances. 2018-03-19 09:45:54 +09:00
lepipele
e6ca07e9b5 Merge remote-tracking branch 'source/master' into dev-shapeshift 2018-03-18 00:42:55 -05:00
nicolas.dorier
806474c8c6 Allow account selection of the ledger 2018-03-18 14:15:23 +09:00
lepipele
1524fb4499 Merge remote-tracking branch 'source/master' into dev-shapeshift 2018-03-17 23:50:11 -05:00
lepipele
14b70ff35e Rendering of Conversion tab on Invoice if enabled in store settings 2018-03-17 23:49:09 -05:00
lepipele
c36a900627 Store setting for allowing conversion through Shapeshift 2018-03-17 23:48:06 -05:00
nicolas.dorier
81328b2667 Update charge in tests and fix two build time warnings 2018-03-17 17:49:42 +09:00
nicolas.dorier
9e2e102ec4 Fix bug making it impossible to remove LTC xpub 2018-03-14 19:32:24 +09:00
nicolas.dorier
b3698846c6 Improve UX of invoice list and invoice details 2018-03-13 09:13:16 +09:00
nicolas.dorier
936ae64ca3 Allow connection via non https lightning charge node through localhost or 127.0.0.1 2018-03-11 15:14:05 +09:00
nicolas.dorier
303a617f9e Improve invoice.cshtml display if offchain payment is present 2018-03-06 16:37:25 -05:00
nicolas.dorier
b67a962d12 Make sure the txrelayfee is correctly set 2018-03-02 14:16:16 -05:00
practicalswift
649497e54f Fix typos 2018-03-01 15:11:30 +01:00
nicolas.dorier
9f734349da Prettify date on the invoice list, and add orderid 2018-02-28 19:03:23 +09:00
nicolas.dorier
309d6fdfe0 Can configure an internallightningnode to make things easier 2018-02-26 18:58:02 +09:00
nicolas.dorier
c8923af573 Lightning Network support implementation 2018-02-26 00:48:12 +09:00
nicolas.dorier
3d33ecf397 make IsAvailable async 2018-02-23 16:09:15 +09:00
nicolas.dorier
0e1a1fd2cd Remove dependencies in StoreController to on chain payment specific stuff 2018-02-20 12:45:04 +09:00
nicolas.dorier
3f07010de8 Rename IPaymentMethodFactory to ISupportedPaymentMethod 2018-02-20 10:44:39 +09:00
nicolas.dorier
2e45c8b190 Isolate PaymentMethodId in its own class, generalise DerivationStrategy 2018-02-19 23:13:23 +09:00
nicolas.dorier
271cbf682f fix casing 2018-02-19 15:13:45 +09:00
nicolas.dorier
a634593903 Big refactoring renaming cryptoData => PaymentMethod 2018-02-19 15:09:05 +09:00
nicolas.dorier
35f669aa15 Isolating code of on chain specific payment in its own folder 2018-02-19 11:06:08 +09:00
nicolas.dorier
aa4519ac30 Big refactoring for supporting new type of payment 2018-02-19 02:38:03 +09:00
nicolas.dorier
3bc232e1da Further isolate bitcoin related stuff inside BitcoinLikePaymentData 2018-02-18 02:35:02 +09:00
nicolas.dorier
a1ee09cd85 Further abstract payment data by encapsulating bitcoin related logic into BitcoinLikePaymentData 2018-02-18 02:19:35 +09:00
nicolas.dorier
b898cc030c general code cleanup + add analyzers 2018-02-17 13:18:16 +09:00
nicolas.dorier
5de330b1f9 Refactoring to keep coin logic out of InvoiceWatcher 2018-02-17 01:34:40 +09:00
nicolas.dorier
c17793aca9 do not freeze the stores page 2018-02-15 13:33:29 +09:00
nicolas.dorier
6181e8b3e4 Refactor the code to prepare the group to support of another hardware wallet 2018-02-13 16:57:40 +09:00
nicolas.dorier
8e73c1a2f0 error message if not using segwit 2018-02-13 13:22:37 +09:00
nicolas.dorier
cedf8f75e8 Small UI adjustements 2018-02-13 11:41:21 +09:00
nicolas.dorier
cd0a650df4 Ledger wallet support 2018-02-13 03:27:36 +09:00
nicolas.dorier
f220abb716 Make the address verification step mandatory 2018-02-07 21:59:16 +09:00
nicolas.dorier
d873a1a545 Set a longer timeout for the cache for /rates, update NBXPlorer, bump 2018-02-01 21:24:13 +01:00
nicolas.dorier
ade3eff75c unwrap rates in api/rates 2018-01-20 12:11:24 +09:00
nicolas.dorier
db2a2a2b6c Fix expiration message on checkout page 2018-01-20 00:33:37 +09:00
nicolas.dorier
579dcb5af8 Fix confirmation message when changing altcoin derivation scheme 2018-01-20 00:29:20 +09:00
nicolas.dorier
69247dee8a Fix api/rates allow to scope by cyrptoCode and storeId 2018-01-19 18:11:43 +09:00
nicolas.dorier
7b9541b8e9 Do not crash if some of the altcoins are unavailable 2018-01-19 17:39:15 +09:00
nicolas.dorier
897da9b07a Better explanation for the price source 2018-01-19 17:13:29 +09:00
nicolas.dorier
293525d480 do not query the rate source if the preferred exchange did not changed 2018-01-19 16:19:13 +09:00
nicolas.dorier
198e810355 Store can customize rate source 2018-01-19 16:00:20 +09:00
nicolas.dorier
774817d4ac Add transaction speed on the invoice page 2018-01-19 00:52:17 +09:00
nicolas.dorier
b0e9e10f7e Add extended notifications 2018-01-18 20:56:55 +09:00
nicolas.dorier
2762224f0f Fix parsing bug zpub LTC mainnet 2018-01-17 19:39:15 +09:00
nicolas.dorier
5f6913b3a2 Can tweak the rate at store level 2018-01-17 15:59:31 +09:00
nicolas.dorier
2b31af80cb Can configure invoice expiration 2018-01-17 15:14:53 +09:00
nicolas.dorier
ba0e080816 Invoices has events recorded 2018-01-14 21:48:23 +09:00
nicolas.dorier
bb3d107309 Fix legacy rate not being correct for alt only payment 2018-01-14 15:26:14 +09:00
nicolas.dorier
8517b222bf Add redirect url to the invoice page 2018-01-14 15:01:09 +09:00
nicolas.dorier
aed32204b5 Fix crashing ManageController 2018-01-14 14:52:15 +09:00
nicolas.dorier
6b4eeff3f1 add tests, do not returns bitcoinAddress field if not supported by the invoice 2018-01-13 22:01:09 +09:00
nicolas.dorier
88779e7129 Make sure websockets does not throw, fix annying warning of emails 2018-01-12 18:32:46 +09:00
nicolas.dorier
39fb8dbb6a better handle case when BTC is not supported by a store 2018-01-12 16:30:34 +09:00
nicolas.dorier
8596e16feb make default configuration just work with multi chains 2018-01-11 22:52:28 +09:00
nicolas.dorier
3a91965187 Some refactoring improving performance, and better tests for multiple currencies 2018-01-11 17:29:48 +09:00
nicolas.dorier
55d50af39d BTCWallet is single currency, introduce BTCWalletProvider 2018-01-11 14:36:12 +09:00
nicolas.dorier
983f34814f bump, add field to know if replaced 2018-01-10 18:40:53 +09:00
nicolas.dorier
bafdcb04ed fix error if invoice is requested without existing 2018-01-10 18:33:05 +09:00
nicolas.dorier
cb4468d3b3 Fixing payment in different crypto 2018-01-10 18:30:45 +09:00
nicolas.dorier
401a31e5c2 Cleanup code 2018-01-10 02:07:42 +09:00
nicolas.dorier
6d10c8a6c1 Can change crypto on checkout page 2018-01-09 23:55:08 +09:00
nicolas.dorier
98b7ad62af Fix order accounting 2018-01-09 17:27:26 +09:00
nicolas.dorier
6ae9d13c43 Allow checkout with litecoin 2018-01-09 11:41:07 +09:00
nicolas.dorier
76d50b018b Calculate rate properly per crypto 2018-01-09 02:57:06 +09:00
nicolas.dorier
c3d37b1f78 Can set derivation scheme for a specific crypto currency 2018-01-08 22:45:09 +09:00
nicolas.dorier
a16cd3e287 Improve invoice page with currencies information 2018-01-08 20:06:16 +09:00
nicolas.dorier
6ae6335c6d Fix layout_cshtml 2018-01-08 04:14:35 +09:00
nicolas.dorier
e3a1eed8b3 Use Websocket for blockchain notifications 2018-01-08 02:36:41 +09:00
nicolas.dorier
80e878c2f5 Removing http callback notification system 2018-01-07 21:48:00 +09:00
nicolas.dorier
6cb1649fc2 fix leak 2018-01-07 21:07:06 +09:00
nicolas.dorier
781b2885cc Refactoring to prepare multiple DerivationSchemes per store and invoices 2018-01-06 19:10:55 +09:00
nicolas.dorier
108146ca92 Fixing QR Code and Button to use BIP21 2018-01-06 11:38:24 +09:00
nicolas.dorier
28ac5608a5 Update NBxplorer, bump version 2018-01-04 22:43:28 +09:00
nicolas.dorier
44c925a4ba Fix #24 2018-01-04 22:21:47 +09:00
nicolas.dorier
ab188ad54f use EmptyResult instead of custom NoResponse 2017-12-25 21:52:27 +09:00
nicolas.dorier
a863812f90 Refactor how invoice payments are computed 2017-12-21 18:01:26 +09:00
nicolas.dorier
a37fdde214 Big refactorying for supporting multi currencies 2017-12-21 15:52:04 +09:00
nicolas.dorier
3d7445f359 Fix logs name for Events, try catch websocket closure 2017-12-17 22:57:27 +09:00
nicolas.dorier
9b3dca1683 Electrum v3.0 use xpub for testnet see https://github.com/spesmilo/electrum/issues/3539#issuecomment-352246947 2017-12-17 22:02:49 +09:00
nicolas.dorier
aaadda3e0f Use websockets in checkout page to get notified of paid invoices 2017-12-17 19:58:55 +09:00
nicolas.dorier
9d7f5b5b6e Fix bug: If electrum zpub is entered, the wrong value is saved into database 2017-12-17 19:41:46 +09:00
nicolas.dorier
84bb6056d3 Use EventAggregator to decouple several classes 2017-12-17 14:17:42 +09:00
nicolas.dorier
bf7ae178ef Fix #18, fix electrum format not recognizing standard p2pkh on testnet 2017-12-17 02:28:37 +09:00
nicolas.dorier
c6959bb0bc Can start without NBXplorer being ready 2017-12-17 01:04:20 +09:00
nicolas.dorier
24ce325e31 Support electrum segwit xpub format 2017-12-06 18:08:21 +09:00
nicolas.dorier
a52a1901c4 Can delete user 2017-12-04 14:39:02 +09:00
nicolas.dorier
45aee607e3 Can lock down registrations 2017-12-04 00:55:39 +09:00
nicolas.dorier
741915b1f8 Allow filtering of invoices over storeid and status 2017-12-03 23:35:52 +09:00
nicolas.dorier
6f2534ba82 Can set currency in the create invoice form fix #15 2017-12-03 22:36:04 +09:00
nicolas.dorier
43635071d9 Show ISO code in checkout page 2017-12-03 22:14:08 +09:00
nicolas.dorier
22f06ecd4e Can set store policy to define how much time to wait before passing a transaction from paid to invalid. 2017-12-03 14:43:52 +09:00
nicolas.dorier
479fc50d9a Add PendingInvoice inside CreateInvoice 2017-11-12 23:51:14 +09:00
nicolas.dorier
83cf637f9d fetch dependencies when creating request simultaneously 2017-11-12 23:23:21 +09:00
lepipele
0bb260bec9 Allowing user to invalidate paid invoice 2017-11-05 21:15:52 -06:00
nicolas.dorier
73c44f8726 don't crash if the user unset his extpubkey 2017-11-01 01:06:59 -07:00
nicolas.dorier
ca85095273 Move code into CurrencyNameTable 2017-10-27 18:58:43 +09:00
nicolas.dorier
4deb7c3270 Adopt dotnet core editorconfig, big reformating 2017-10-27 17:53:04 +09:00
nicolas.dorier
55a4c3c08d Change address if invoice get partially paid 2017-10-25 01:41:01 +09:00
nicolas.dorier
37c02d2539 Can delete a store 2017-10-23 22:55:46 +09:00
nicolas.dorier
5f8407b4b1 Allow the merchant to disable network fees at store level 2017-10-23 19:27:22 +09:00
nicolas.dorier
4dca81403b Better handle transition from paid to invalid 2017-10-23 18:07:50 +09:00
nicolas.dorier
6d14fe9c30 Do not crash if transactionSpeed not set 2017-10-23 17:05:08 +09:00
nicolas.dorier
c0c4637c77 do not ignore transactionSpeed set at the invoice level 2017-10-23 14:51:21 +09:00
nicolas.dorier
752d34f603 do not throw 500 if using a pairing code which does not exists 2017-10-23 14:12:54 +09:00
nicolas.dorier
0009ed0921 Bug fix: orderId was ignored 2017-10-23 01:23:56 +09:00
lepipele
a2a3f43fd0 Small cleanup bugfixes
-Default redirection to / if Url is null
-Removing old Javascript notice
-Passing whole model as function now requires
2017-10-20 23:25:27 -05:00
lepipele
c1a2fc22f4 Reverting back to 15 minutes waiting for invoice 2017-10-20 22:42:15 -05:00
lepipele
f1f19369a3 Automatic conversion to lower Camel Case for JSON 2017-10-20 22:37:01 -05:00
lepipele
e49f25af09 Returning whole invoice serialized as JSON on $ajax call 2017-10-20 22:24:28 -05:00
lepipele
2beae1dcd3 Refactoring logic for referencing server model in js script
Will keep removing unnecessary boilerplate "assign variable" code and try to streamline it as much as possible
2017-10-20 22:06:42 -05:00
lepipele
0f603ffb0a Allowing customization of expiry time for easier debugging 2017-10-20 17:32:52 -05:00
lepipele
45b0991841 Fixing typo in namespace 2017-10-20 14:06:37 -05:00
nicolas.dorier
db1cf5c2ce format currency correctly 2017-10-19 16:08:41 +09:00
nicolas.dorier
1a060a6c7b Fix checkout page 2017-10-19 01:33:55 +09:00
nicolas.dorier
94e9ab7f67 In server-initiated situation, the server can set the label 2017-10-18 18:44:24 +09:00
nicolas.dorier
8db9d93d23 Add api-tokens page, do not hide qrcode if small 2017-10-17 13:52:30 +09:00
nicolas.dorier
8f723d7131 Fix typos 2017-10-15 15:32:53 +09:00
nicolas.dorier
a7e10c0fb9 Can't pair same SIN to different store 2017-10-13 18:06:46 +09:00
nicolas.dorier
15e73e1cad Properly limit CORS to bitpay api 2017-10-13 17:46:19 +09:00
nicolas.dorier
a17192ee99 Add Cors 2017-10-13 17:18:32 +09:00
nicolas.dorier
27200d1fb0 X-Frame-Options 2017-10-13 17:13:21 +09:00
nicolas.dorier
9ddceae824 Validate email in the api 2017-10-13 16:59:02 +09:00
nicolas.dorier
d1961e0938 Support other way of passing buyer info 2017-10-13 16:44:55 +09:00
nicolas.dorier
033432d6fb Keep compatible checkout page address 2017-10-13 16:07:57 +09:00
nicolas.dorier
016db76306 Add page for viewing the Invoice details 2017-10-13 00:25:45 +09:00
nicolas.dorier
bae08b6966 Use callback to update invoice state instead of long polling 2017-10-12 16:33:53 +09:00
nicolas.dorier
6d3ea65e03 Refactor token handling, support server-initiated pairing 2017-10-11 12:20:44 +09:00
NicolasDorier
783132a012 Add balance of the store in the stores page 2017-10-06 11:07:22 +09:00
NicolasDorier
f456d62d3c Properly map addresses to invoice, use new nbxplorer 2017-10-06 10:37:38 +09:00
NicolasDorier
8b4e572e16 Allow flexible derivation scheme for the store 2017-10-05 00:05:38 +09:00
NicolasDorier
30eb1bd80e use environment variable for configuring BTCPayServer 2017-09-28 11:02:21 +09:00
NicolasDorier
d499ef0977 remove IExternalUrl 2017-09-27 15:16:30 +09:00
NicolasDorier
878a13f1bf Can ask user to confirm email 2017-09-27 14:18:09 +09:00
NicolasDorier
3304d11da8 Fix Token permissions (merchant facade > pos facade) + Add IPN + Add Hangfire integration 2017-09-26 01:31:43 +09:00
NicolasDorier
99ae549c24 prevent non admin to go to server pages 2017-09-16 01:20:57 +09:00
NicolasDorier
eb9f669224 Refactor nav pages, add page to see users of the server 2017-09-16 01:15:17 +09:00
NicolasDorier
e7540fe58b Make first user admin of the website 2017-09-15 19:08:31 +09:00
NicolasDorier
f8baab8138 Renaming + fix invoice display when paid and expired 2017-09-15 16:06:57 +09:00
NicolasDorier
d86e8695a0 Redirect to Stores page if creating invoice before creating a store 2017-09-15 13:49:36 +09:00
NicolasDorier
a3ea94c771 Improve checkout page 2017-09-14 01:06:11 +09:00
NicolasDorier
d039b5f6ff Fix CreateInvoice screen, can now select the store 2017-09-14 00:13:22 +09:00
NicolasDorier
467ecd0923 Decouple User from Store 2017-09-13 23:50:36 +09:00
NicolasDorier
79200412fd fix broken links 2017-09-13 17:46:51 +09:00
NicolasDorier
b17a2fc1db renaming 2017-09-13 16:56:33 +09:00
NicolasDorier
b5c6ed3860 Init 2017-09-13 15:55:16 +09:00