woodser
247087ef46
refactor arbitration protocol
...
add dispute states and open/close messages routed through arbitrator
both traders publish dispute payout tx, winner is default
verify signatures of payment sent and received messages
seller sends deposit confirmed message to arbitrator
buyer sends payment sent message to arbitrator
arbitrator slows trade wallet sync rate after deposits confirmed
various refactoring, fixes, and cleanup
2022-11-07 08:26:30 -05:00
woodser
f36dde2857
refactor payout protocol
...
send payment key & multisig hex on deposit confirm for resilience
support payout published, confirmed, unlocked states
keep trade wallets open throughout trade
close and delete trade wallets when payout unlocks
arbitrator idles trade wallets after deposits confirm (1/hour)
2022-10-27 08:06:18 -04:00
woodser
e79450f65e
fix trade is in an invalid state warning
...
Co-authored-by: duriancrepe <duriancrepe@protonmail.com>
2022-10-17 11:22:01 -04:00
woodser
dc9c04759f
listen for published payout tx
...
fix "Swapping pending OFFER_FUNDING" warning
move payout tx from TradingPeer to Trade
2022-10-02 14:41:24 -04:00
woodser
5fbc41946e
refactor node addresses and pub key rings to TradingPeer ( #460 )
2022-10-01 13:29:38 -04:00
woodser
c153afff67
arbitrator does not share payment account key until after first confirmation ( #457 )
...
use payout address from contract instead of PaymentSentMessage
2022-10-01 07:47:18 -04:00
woodser
d698555c9a
trade completion fixes with payment key and multisig hex on confirmation
...
preserve peer multisig hex when arbitrator provides payment key
process payment received using persistent, non-transient data
payout_tx_published_msg represents payment_received_msg after payout
update arbitrator's peer address on payout published
schedule payment account key request after deposit request
2022-09-21 09:00:41 -04:00
woodser
1f32fc2cbe
seller decrypts buyer payment info on payment sent
2022-09-21 09:00:41 -04:00
woodser
64925d0137
close arbitrator trade by sending PayoutTxPublishedMessage
2022-09-21 09:00:41 -04:00
woodser
3f5fe671cd
decrypt payment info after confirmation for double spend protection
...
retrieve decryption key from arbitrator if peer fails to send
2022-09-17 07:28:04 -04:00
woodser
355a6146b6
add confirmed trade state
2022-09-17 07:28:04 -04:00
woodser
f464110fb5
update locked -> pending balance
2022-08-17 14:49:49 -04:00
woodser
3727d12ef6
select online, registered, and least used arbitrator ( #400 )
...
support registering and unregistering arbitrators over grpc
maker always sends InitTradeRequest to arbitrator
share original contract for comparision
remove backup arbitator from model
cleanup trade states
2022-08-13 09:47:33 -04:00
woodser
cebdef31c0
only remove trade if not in funded state
...
track sent vs seen deposit request state
cleanup trade phases
2022-08-09 14:21:38 -04:00
woodser
3753a42023
update to monero-project v0.18.0.0, monero-java v0.7.2
2022-08-08 13:45:46 -04:00
woodser
333b7421f5
cleanup trade states, consolidate protocol tasks, remove old tasks
2022-07-31 14:51:27 -04:00
woodser
50126874a0
add multisig wallet state and wait for multisig to complete
...
refactor trade protocol
2022-07-31 14:51:27 -04:00
woodser
3dcaf67edd
refactor trade protocol latch and timeouts
2022-07-25 22:57:06 -04:00
woodser
14ada60c25
do not start local node when credentialed local node running
...
rename isMoneroNodeRunning() to isMoneroNodeOnline()
2022-07-16 18:23:02 -04:00
woodser
e2208355b1
support local, stagenet, and mainnet xmr network configuration ( #335 )
...
remove btc wallet
disable local zmq
2022-07-07 09:10:59 -04:00
woodser
7ad2e20d95
support paxum
2022-06-24 15:46:54 -04:00
woodser
27f4b18330
support uphold
2022-06-24 15:46:54 -04:00
woodser
6dbd1660e5
support faster payments
2022-06-24 15:46:54 -04:00
woodser
d0c02acba1
support sepa instant
2022-06-24 15:46:54 -04:00
woodser
c40938f438
support MoneyGram form api
2022-06-23 11:24:28 -04:00
woodser
faeb9ca8db
refactor payment account form api to support structured, dynamic forms
2022-06-23 11:24:28 -04:00
woodser
88578bed10
general rebase in order to update payment methods and desktop app
...
Co-authored-by: Alva Swanson <alvasw@protonmail.com>
Co-authored-by: andyheko <haoen.ko@gmail.com>
Co-authored-by: Bisq GitHub Admin <51445974+bisq-github-admin-3@users.noreply.github.com>
Co-authored-by: BtcContributor <79100296+BtcContributor@users.noreply.github.com>
Co-authored-by: cd2357 <cd2357@users.noreply.github.com>
Co-authored-by: chimp1984 <chimp1984@gmx.com>
Co-authored-by: Chris Beams <chris@beams.io>
Co-authored-by: Christoph Atteneder <christoph.atteneder@gmail.com>
Co-authored-by: Devin Bileck <603793+devinbileck@users.noreply.github.com>
Co-authored-by: ghubstan <36207203+ghubstan@users.noreply.github.com>
Co-authored-by: Huey <hueydane@gmail.com>
Co-authored-by: Jakub Loucký <jakub.loucky@outlook.cz>
Co-authored-by: jmacxx <47253594+jmacxx@users.noreply.github.com>
Co-authored-by: KanoczTomas <tomas.kanocz@cnl.sk>
Co-authored-by: m52go <735155+m52go@users.noreply.github.com>
Co-authored-by: Marcus0x <marcus0x@xrhodium.org>
Co-authored-by: MarnixCroes <93143998+MarnixCroes@users.noreply.github.com>
Co-authored-by: Martin Harrigan <martinharrigan@gmail.com>
Co-authored-by: MwithM <50149324+MwithM@users.noreply.github.com>
Co-authored-by: sqrrm <sqrrm@users.noreply.github.com>
Co-authored-by: Stan <36207203+ghubstan@users.noreply.github.com>
Co-authored-by: Stephan Oeste <emzy@emzy.de>
Co-authored-by: Steven Barclay <stejbac@gmail.com>
Co-authored-by: WAT <shiido.it@gmail.com>
Co-authored-by: wiz <j@wiz.biz>
Co-authored-by: xyzmaker123 <84982606+xyzmaker123@users.noreply.github.com>
2022-05-28 13:56:29 -04:00
woodser
ca9bdf7c29
set offer trigger price and state from open offer
2022-05-26 09:46:57 -04:00
woodser
ffccf83ac5
support getXmrPrimaryAddress(), getXmrNewSubaddress()
2022-05-16 13:33:07 -04:00
woodser
fa15612586
support scheduling offers with locked funds
2022-05-16 13:33:07 -04:00
woodser
a37df9281e
add supported asset codes to payment methods
2022-05-12 14:05:57 -04:00
woodser
f4120b869d
support getXmrSeed()
2022-05-11 17:03:34 -04:00
woodser
c2f5adac9b
trigger price handled as string, same as price
2022-04-28 11:46:34 -04:00
woodser
2d3043093e
seller state is PAYMENT_RECEIVED or PAYOUT_PUBLISHED after confirming
2022-04-07 14:12:03 -04:00
woodser
730bee3e71
renames in proto and api ( #277 )
...
rename to getNewDepositAddress()
rename trade phase DEPOSIT_CONFIRMED to DEPOSIT_UNLOCKED
rename fiat sent/received to payment sent/received
2022-04-07 10:45:35 -04:00
woodser
32070fbafb
refactor payout protocol to work with or without updated multisig
2022-04-06 11:27:50 -04:00
woodser
bb95b4b1d6
support multithreading in api and protocols
...
close trade wallets while unused for scalability
verify txs do not use unlock height
increase trade init timeout to 60s
2022-04-06 11:27:50 -04:00
duriancrepe
9dfbb0d5a6
Add API functions to start and stop local Monero node
2022-04-04 15:28:54 -04:00
woodser
00765d7b32
Change network version to avoid connecting to bisq nodes ( #275 )
...
Co-authored-by: l0nelyc0w <coinrunner@danwin1210.me>
2022-04-04 14:17:44 -04:00
duriancrepe
2851319e3b
Add API functions to support trade chat ( #257 )
2022-03-09 07:42:48 -05:00
duriancrepe
e7b4627102
Add API functions to open and resolve disputes ( #244 )
...
Co-authored-by: woodser <woodser@protonmail.com>
2022-03-07 12:56:39 -05:00
Randall B
5b038697c3
Add market depth info API call ( #190 )
2022-02-11 18:13:41 -05:00
duriancrepe
e3b9a9962b
Add API functions to initialize Haveno account ( #216 )
...
Co-authored-by: woodser@protonmail.com
2022-02-09 04:39:57 -05:00
Fritz Lumnitz
a3586fdef8
Add monero connections manager
2022-01-28 17:01:32 -05:00
woodser
2715e1bba8
support notification types: trade update, chat message, keep alive
2022-01-17 08:39:53 -05:00
Fritz Lumnitz
800b309a4b
Add notifications listener
2022-01-13 07:56:59 -05:00
l0nelyc0w
c1699795e7
Add API functions to get wallet transfers and withdraw funds
2021-12-31 14:34:37 -05:00
woodser
ce538c5ca6
update copyright headers to Haveno
2021-12-16 13:33:12 -05:00
woodser
7c9c35b1b8
improve error handling in protocol pipelines
...
support getTrades() from grpc api
consistently use timeouts in protocol pipelines
remove trade and repost offer on protocol errors
delete multisig wallet when trade removed
protocol advances on ack messages instead of network onArrived()
re-order protocol class methods to correct order
2021-12-15 13:19:05 -05:00
premek
f27e3e3d1a
Implement getMarketPrices API endpoint
...
- Increase rate limit to 10 calls per second.
- Use the new API also for the getMarketPrice call, this makes the 'Can get market prices' API test pass
2021-11-20 19:41:26 -05:00