Imagine this scenario:

ACME company is selling a service for 1 AcmeToken to their users.

When a user wants to buy the service, ACME company generates a new Eth address for the user, so there is an association between EthereumAddresses and Users in the company database.

Unfortunately, this common scenario has one problem:

When the company wants to withdraw the tokens from all the addresses they generated, the company may spend a lot of ETH to cover GAS price costs.

So, I trasformed the scenario in this way:

The company receives all the tokens on one single Ethereum address and asks the transaction hash to the user, but.. in this way the user could take old transactions hashes to the same address, so I'm not considering proceeding this way so safe and secure.

How would you identify a single transaction in a safe way without creating a lot of addresses?

  • From your question, each user have there own wallet and have individual account ? now you want to transfer all token from user account to one single account. It is unclear that, ` identify a single transaction ` . can you please elaborate it.
    – Gopal ojha
    Jul 21, 2018 at 16:32

1 Answer 1


Have people sign up with their Metamask/Cipher/etc. the way sites like cryptokitties do, by giving them a random message to sign to verify they have the private key to that address. Then have them all send to one address, and every time there is a new transaction, just check what user has that address.

  • But I'm not trying to verify that people owns the address involved in the transaction. I'm trying to assign my address (only one) to multiple people, so they can pay on this address, but how can I know which user has sent the token to my address?
    – SyncroIT
    Jul 21, 2018 at 16:15
  • If you receive tokens in a transaction, the sender of the transaction is the address giving you tokens.
    – natewelch_
    Jul 21, 2018 at 16:42
  • But I don't have an association User -> Address in my database, also one user could have more addresses.
    – SyncroIT
    Jul 21, 2018 at 17:11
  • 1
    That's why I said "have people sign up with their metamask/cipher/etc." That way you do have that link of what addresses are owned by who
    – natewelch_
    Jul 21, 2018 at 17:19
  • What if a user should have the possibility to send more transactions from same address?
    – SyncroIT
    Jul 21, 2018 at 17:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.