knowm / XChange

XChange is a Java library providing a streamlined API for interacting with 60+ Bitcoin and Altcoin exchanges providing a consistent interface for trading and accessing market data.
http://knowm.org/open-source/xchange/
MIT License
3.85k stars 1.94k forks source link

Multi-Value Deposit Addresses #1816

Open digitalchaotics opened 6 years ago

digitalchaotics commented 6 years ago

The current AccountService API does not accommodate multi-value deposit addresses. For example on Bittrex, to deposit XMR you are required to provide two values: the "Payment_id" and the "Base Address". In another case (BTS) the two values are labeled "Memo" and "Registered Acct". This issue impacts 18 coins on Bittrex. I'm not aware of this issue on other exchanges.

This issue impacts the utility of two AccountService API methods: 'withdrawFunds' and 'requestDepositAddress'. Neither method provides a way to use multi-value addresses.

One solution to this issue is to expand the API to include a DepositAddress class which would be accepted by 'withdrawFunds' and returned by a new 'getDepositAddress' method, e.g. ...

Suggestions? Maybe there's a workaround I'm not aware of? Has anyone else faced this issue?

npomfret commented 6 years ago

This is a bit of a work in progress. I started to add support for complex addresses when I added the support for XRP withdrawals, see RippleWithdrawFundsParams.

I don't think there are any other implementations yet.

digitalchaotics commented 6 years ago

Yes - the issue seems to be everywhere for XRP, but I've seen additional examples. Lots of them on Bittrex, but I've also seen it on other exchanges.

Thanks for your efforts thus far.

npomfret commented 6 years ago

I'd be happy to work on this stuff but it won't be for a couple of weeks (new puppy means I don't have time to wash let alone work!)

tmmrt commented 5 years ago

is there any update on requestDepositAddress on accountService? I would like to request a usable address that has the depositaddress as well as tag/paymentid for XRP, XMR etc.

amjad1210 commented 5 years ago

I need this feature myself so will create a PR.