I am looking into developing an ERC20 token which can only be transferred from the creators wallet and not from any other address. So once the token has been bought and transferred from my address it it prevents the buyer selling the tokens on.
I have limited developer experience but can deploy and mint erc20 tokens using remix.
So basically you want to allow the creator to transfer the tokens but nobody else? Is this permanent or temporary?
If permanent, you can simply add a require statement to check who msg.sender is b4 transferring. If it's not the owner, fail the tx.
If it's temporary, you can add a pause functionality to the contract. Transfers are disabled if the token contract is paused and only the owner (deployer?) of the contract can bypass this.
The token relates to a single use product so once the coin been issued it shows the product has been used up and therefore cannot be sold on.
The token will then remain in the buyers wallet which serve a record of how many products they have bought. This would not be the case if the coin was burnt once the product has been used.