6 Replies Latest reply: Aug 7, 2013 3:48 PM by pveedu1 RSS

    Abandoned Order Service

    pveedu1

      Hi,

       

      Could you please give me some idea about following scenarios related to abandoned order.

       

      1) logged in basket need to persist 6 months after the last inter action with the basket

       

       

      2) not  logged in basket need to persist 30 days after the last inter action with the basket.

       

      The values must be configurable and how will manage logged in and logged in user?

       

      Thanks,

      Pveedu

        • 1. Re: Abandoned Order Service
          vgk2716

          Hi,

           

          You can use ATG Abandoned Service. This service is generic for logged in, not logged in. You may extend the scheduler to have custom logic for logged in, not logged in.

           

          Oracle ATG Web Commerce - An Overview of Abandoned Orders

          • 2. Re: Abandoned Order Service
            Nitin Khare

            ATG by default would persist for the orders of logged-in users which is governed by persistOrders property in /atg/commerce/ShoppingCart (default is true). Whereas the shopping cart of anonymous users is transient. You can change this behavior through persistOrdersForAnonymousUsers property in /atg/commerce/ShoppingCart but you would also have to enable persisting of anonymous profiles in the ProfileRequestServlet by making persistentAnonymousProfiles=true so that ATG can tie the anonymous orders with the profileId.

             

            While doing this you need to be aware of your database size as this will cause large numbers of profiles and orders to be created and stored. There can be a cookie based approach also where you can manage the loading of orders based on a custom cookie but you will have to write customized code for that.

             

            To use abandoned order service you would have to configure AbandonedOrderService and AbandonedOrderTools as per your requirements:

             

            Oracle ATG Web Commerce - Configuring AbandonedOrderService

            • 3. Re: Abandoned Order Service
              pveedu1

              Thanks.

               

              But how i will set below values for  /atg/commerce/order/abandoned/AbandonedOrderService.idleDaysUntilAbandoned property or how i will differentiate this values form AbandonedOrderService class ?

              1) logged in basket need to persist 6 months after the last inter action with the basket

              2) not  logged in basket need to persist 30 days after the last inter action with the basket.

               

              Thanks,

              pveedu

              • 4. Re: Abandoned Order Service
                vgk2716

                Hi Pveedu,

                 

                Looks like you want order(s) to be deleted after 6months/30 days.

                 

                ATG's Abandoned order service deletes orders when AbandonOrderTools.deleteLostOrders set to true it uses idleDaysUntilLost property to identify how many days old order need to be considered as lost.

                 

                Since you want to 30 days for Anonymous, 6months for Logged in to be considered as lost. This is not available in OOTB. You may override processLostOrders() method and write your custom logic. Refer AbandonedOrderService (ATG Java API)

                 

                Gopi

                • 5. Re: Abandoned Order Service
                  Nitin Khare
                  But how i will set below values for  /atg/commerce/order/abandoned/AbandonedOrderService.idleDaysUntilAbandoned property or how i will differentiate this values form AbandonedOrderService class ?

                  1) logged in basket need to persist 6 months after the last inter action with the basket

                  2) not  logged in basket need to persist 30 days after the last inter action with the basket.

                   

                  You can create two different instances of the AbandonedOrderService component for logged-in and anonymous users say for example /atg/commerce/order/abandoned/AbandonedOrderServiceForLoggedIn and /atg/commerce/order/abandoned/AbandonedOrderServiceForAnonymous where you can configure various properties differently. This will also give you flexibility to specify different classes under "$class" in your component configurations should you extend AbandonedOrderService to modify the criteria used for identifying abandoned or lost orders. Take a look at the API javadocs for the AbandonedOrderService for methods like generateAbandonedQuery(), generateLostQuery(), and getOrderStatesQuery() in the link shared above.

                  • 6. Re: Abandoned Order Service
                    pveedu1

                    Thanks all