HostedPaymentProvider interface should have at least couple of methods, something like createHostedPayment or getHostedPaymentUrl, and something like processDonorReturn.
https://developer.globalcollect.com/documentation/api/server/#hostedcheckouts
We will want to provide the payment product ID in order to skip the selection page, and also skip the success/failure page.