well, the solution I am currently testing is to issue an invoice to the client. Then, he pays the invoice and then a hard copy of all transactions are stored on the exchange. A copy of the withdrawal is also kept on a 3rd party API. But we are quite new on the market so few transactions so far, the system works well though.