Payment initiation and smart contracts