Proof-of-donation is an optional smart contract functionality. The functionality redirects the funds of each transaction to a charitable destination, either a wallet owned by a charity or funds controlled by a DOA or any other charitable organization or individual.