Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Lesley 107 posts 350 karma points
    Nov 15, 2016 @ 02:20
    Lesley
    0

    Retain shipping address after redirect

    If I redirect from non-inline payment provider when user cancels or payment is declined, the shipping address no longer appears in the Order Summary.

    I can redirect to the Basket and make the user go through the entire checkout process again and if I do that then the billing and shipping addresses that the user entered are retained and display on the address screens.

    However, if I redirect to the Payment Method or Payment page, the shipping address does not show in the Order Summary partial. How can I display the shipping address?

  • Rusty Swayne 1655 posts 4993 karma points c-trib
    Nov 15, 2016 @ 18:13
    Rusty Swayne
    0

    Hey Lesley,

    What is the value of the ResetCustomerManagerDataOnVersionChange property in your CheckoutContext settings? https://merchello.readme.io/docs/checkoutcontext

    If the value is false, the shipping address should still be associated with the customer and accessible via the CheckoutManager.

  • Lesley 107 posts 350 karma points
    Nov 15, 2016 @ 19:55
    Lesley
    0

    All the Reset...DataOnVersionChange properties are set to false.

    The CheckoutManager still has the shipping address, however, the FastTrackCheckoutSummaryModel that is used by InvoiceSummary.cshtml doesn't have the shipping address and I can't work out where the model is created.

  • Rusty Swayne 1655 posts 4993 karma points c-trib
    Nov 16, 2016 @ 16:50
    Rusty Swayne
    0

    The model is created in the FastTrackCheckoutSummaryModelFactory.

    https://github.com/Merchello/Merchello/blob/merchello-dev/src/Merchello.FastTrack/Controllers/CheckoutSummaryController.cs#L25

    The pattern allows for developers to override either the controller or the controller and factories to really customize the experience.

    Each factory in the FastTrack pattern returns a model through an OnCreate method which allows developers to manipulate the models specific to the need of the implementation.

  • Lesley 107 posts 350 karma points
    Nov 17, 2016 @ 02:46
    Lesley
    100

    Issue was being caused by the Basket's AuthorizePayment method that was finalizing the payment before it had been captured.

    I was able to resolve the issue by creating a custom version of the Basket's AuthorizePayment method that does not finalize the payment.

  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies