if handler do not trap error then fail at compile time, all safe handlers push alert on error errors are typed so they render good information
merchant details and contract terms details factored out, to be used by other components tests and stories updated payment completed != confirmed (confirmed if paid by someone else)