var paymentInfo = this.Session["OrderPaymentInfo"] as ProcessPaymentRequest;
paymentInfo = processor.SetCheckoutDetails(paymentInfo, resp.GetExpressCheckoutDetailsResponseDetails);
this.Session["OrderPaymentInfo"] = paymentInfo;
_workContext.CurrentCustomer = paymentInfo.Customer;
return RedirectToRoute("CheckoutConfirm");
So, the payment method has been explicitly set:
_workContext.CurrentCustomer.SelectedPaymentMethodSystemName = "Payments.PayPalExpress";
but, when I get into CheckoutController methods Confirm or ConfirmOrder, the value is null again. Am I missing something. How can I persist this value into CheckoutController methods?