[WIP] add contexts to deal with different payment types

Do not merge this w/o updating the services config