How to identify the sender from crypto payments I want my users to deposit crypto into the website for credits, but the biggest issue is getting the input address (the user's address). How can I identify the sender from the transaction (since there can be multiple inputs) as well as the amount they sent (since there can be multiple outputs)?
A lot of services offer payment forwarding but they all seem the same but have different fees, some requiring a subscription of over 80$ a month (cryptoapis, blockcypher) or some having service fees (apirone, bitapis, etc). However they all seem to be the same so I don't understand the price differences, in fact some of them are downright identical (cryptoapis &amp; blockcypher). How would I make my own, and would it be worth it for a start up?
As RedGrittyBrick suggested in a comment: Give each user a different deposit address.
Think of your process as the users purchasing credits in exchange for a Bitcoin payment. You respond to each purchase request with an offer. The offer includes an invoice address. Each new offer should have a new address, so you can identify which user took what offer. Since the address is unique, you'll know which user to credit how much when you receive the corresponding payment to an address.