PaymentGatewayProvider code