Hi Tim, I completely agree with you that less steps will only add to the customer experience and enhance the checkout process. The point that i was trying to make is that the billing address and credit card should be prompted on the same page. I am assuming that the billing address sought is primarily for address verification and checking with credit card company. It can probably be on the order review page where the card number is entered. I guess many customer do not really decide on a payment method until they reach the point which requires them to enter the card details and it will be easy for them to use cards with different billing addresses like their personal credit cards or company's card etc.
This is not such a critical element, but just something that will further ease the process (especially if the first card is rejected and the customer decides to use some else's card or if the customer had entered wrong address, zip codes etc and the card is declined, in this case the customer will just need to update the card and address information in the same page and retry the checkout), and at the same time maintain the same number of steps needed to complete the checkout. Rohit Tim Ruppert wrote: > > > 3. I am going to have to disagree with you on this one. Having less > steps are totally going to help the user get to the part of paying > more quickly - which can only be a good thing. There is one page for > your personal information and one page to select the options that are > there for you. If they want to change their credit card - and thus > their billing address - then they only need to bounce back to the one > other page and update the info. Pretty easy in my mind. > > > > > On Dec 23, 2006, at 9:55 PM, Anil Patel wrote: > >> Rohit, >> Gift card option is not just hard coded, its enabled through a Store >> settings. >> >> Anil >> >> On 12/23/06, rohit2006 <[EMAIL PROTECTED]> wrote: >>> >>> >>> Hi Tim. >>> >>> I just tried the new 3 and 6 step anonymous checkout, and it seems >>> to be >>> working great for a demo transaction. Though even the new checkout >>> needs >>> gift options to be enabled, shipping is properly calculated and >>> added to >>> the >>> order total. >>> >>> I you don't mind, i did like to suggest three things: >>> >>> 1) include an option to enable or disable anonymous checkout in the >>> product >>> store and also include the option for selecting 3 step or 6 step >>> anonymous >>> checkout, if anonymous checkout it enable in the first place. I do >>> not >>> really think its wise to offer the customer a total of 4 checkout >>> methods >>> including 2 in anonymous and 2 in regular checkout. Too many >>> options may >>> just confuse the customer. >>> 2) If the Gift option issued can be addressed it will be great, >>> for those >>> who do not offer it on their stores. >>> >>> 3) from my experience, i have usually seem billing address being >>> entered >>> in >>> the same page in which the credit card number is entered, whereas >>> in the >>> new >>> 3 step checkout its entered in 'shipping options'. Just to think of a >>> scenario when this might cause some problem: a customers first >>> credit card >>> is not processed and he decides to use another card which might >>> have a >>> different billing address, the what does he do? Or, simply the >>> customer >>> decided to use a card with different billing address when he is >>> reviewing >>> the order, he will probably be confused and have to work out >>> himself on >>> how >>> to change the billing address, previously entered. Though its >>> pretty easy >>> thing to do, but more often than not these minor things cost huge >>> in lost >>> sales. >>> >>> Personally i think the 3 step checkout is simple and fast and full >>> credit >>> to >>> the efforts of Tim and other involved in it. >>> >>> Rohit >>> >>> >>> >>> JIRA [EMAIL PROTECTED] wrote: >>> > >>> > [ >>> > >>> http://issues.apache.org/jira/browse/OFBIZ-561? >>> page=comments#action_12460685 >>> > ] >>> > >>> > Tim Ruppert commented on OFBIZ-561: >>> > ----------------------------------- >>> > >>> > Rohit, thanks for applying this as another issue - and thanks to >>> David >>> for >>> > clarifying that. First of all, I do not think that Gift Cards >>> have been >>> > working out of the box as a payment method for a long time now, >>> so I do >>> > not believe that this is being addressed at this point. If I'm >>> wrong, >>> > please let me know, but for all of the older versions I have >>> around - >>> this >>> > is feature was not working. >>> > >>> > Secondly, the shipping costs bug is definitely there and has >>> been fixed >>> in >>> > the latest patch that has a functional 2 and 6 step process. >>> Once this >>> is >>> > applied it will be working. >>> > >>> >> Errors in anonymous checkout. >>> >> ----------------------------- >>> >> >>> >> Key: OFBIZ-561 >>> >> URL: http://issues.apache.org/jira/browse/ >>> OFBIZ-561 >>> >> Project: OFBiz (The Open for Business Project) >>> >> Issue Type: Bug >>> >> Components: ecommerce >>> >> Affects Versions: SVN trunk >>> >> Environment: Linux FC5, JDK 1.4.2_13.Postgres database. >>> >> Reporter: Rohit Sureka >>> >> Priority: Critical >>> >> >>> >> Hi, i believe there two bugs in the anonymous checkout in SVN >>> 487185. >>> >> First, Show gift options has to be enabled for anonymous checkout >>> process >>> >> to move beyond select shipping option page in 'ecommerce' >>> application. >>> >> Else the following is the log of the error: >>> >> 2006-12-22 06:08:50,921 (http-0.0.0.0-8443-Processor2) [ >>> >> ScreenFactory.java:115:INFO ] Got 8 screens in 0.031s from: >>> >> file:/E:/ofbiz_tmn/applications/ecommerce/widget/ >>> ContentScreens.xml >>> >> 2006-12-22 06:08:51,906 (http-0.0.0.0-8443-Processor2) [ >>> >> ControlServlet.java:245:DEBUG] [[[processShipOptions] Done >>> rendering >>> >> page, Servlet Finished- total:3.719,since >>> >> last([processShipOptio...):3.719]] >>> >> 2006-12-22 06:08:52,015 (http-0.0.0.0-8443-Processor4) [ >>> >> ControlServlet.java:245:DEBUG] [[[setShipOptions] Done >>> rendering page, >>> >> Servlet Finished- total:3.812,since last([setShipOptions] ...): >>> 3.812]] >>> >> 2006-12-22 06:08:55,562 (http-0.0.0.0-8443-Processor4) [ >>> >> ControlServlet.java:85 :INFO ] The character encoding of the >>> request >>> is: >>> >> [null]. The character encoding we will use for the request and >>> response >>> >> is: [UTF-8] >>> >> 2006-12-22 06:08:55,562 (http-0.0.0.0-8443-Processor4) [ >>> >> ControlServlet.java:121:DEBUG] [[[processShipOptions] Servlet >>> Starting, >>> >> doing setup- total:0.0,since last(Begin):0.0]] >>> >> 2006-12-22 06:08:55,562 (http-0.0.0.0-8443-Processor4) [ >>> >> ControlServlet.java:170:DEBUG] [[[processShipOptions] Setup >>> done, doing >>> >> Event(s) and View(s)- total:0.0,since last >>> ([processShipOptio...):0.0]] >>> >> 2006-12-22 06:08:55,562 (http-0.0.0.0-8443-Processor4) [ >>> >> RequestHandler.java:197:INFO ] [Processing Request]: >>> processShipOptions >>> >> 2006-12-22 06:08:55,578 (http-0.0.0.0-8443-Processor4) [ >>> >> FieldObject.java:75 :INFO ] Field value not found with name >>> isGift in >>> Map >>> >> with name , not getting Object value, returning null. >>> >> 2006-12-22 06:08:55,671 (http-0.0.0.0-8443-Processor4) [ >>> >> CallObjectMethod.java:163:ERROR] >>> >> ---- runtime exception report >>> >> -------------------------------------------------- >>> >> Method in call method operation threw an exception >>> >> Exception: java.lang.NullPointerException >>> >> Message: null >>> >> ---- stack trace >>> >> --------------------------------------------------------------- >>> >> java.lang.NullPointerException >>> >> org.ofbiz.order.shoppingcart.ShoppingCart.setIsGift >>> (ShoppingCart.java >>> :2094) >>> >> org.ofbiz.order.shoppingcart.ShoppingCart.setIsGift >>> (ShoppingCart.java >>> :2098) >>> >> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> >> sun.reflect.NativeMethodAccessorImpl.invoke( >>> NativeMethodAccessorImpl.java:39) >>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke( >>> DelegatingMethodAccessorImpl.java:25) >>> >> java.lang.reflect.Method.invoke(Method.java:324) >>> >> org.ofbiz.minilang.method.callops.CallObjectMethod.callMethod( >>> CallObjectMethod.java:135) >>> >> org.ofbiz.minilang.method.callops.CallObjectMethod.exec( >>> CallObjectMethod.java:102) >>> >> org.ofbiz.minilang.SimpleMethod.runSubOps(SimpleMethod.java:926) >>> >> org.ofbiz.minilang.method.ifops.IfNotEmpty.exec(IfNotEmpty.java: >>> 81) >>> >> org.ofbiz.minilang.SimpleMethod.runSubOps(SimpleMethod.java:926) >>> >> org.ofbiz.minilang.SimpleMethod.exec(SimpleMethod.java:565) >>> >> org.ofbiz.minilang.SimpleMethod.runSimpleMethod >>> (SimpleMethod.java:102) >>> >> org.ofbiz.minilang.SimpleMethod.runSimpleEvent >>> (SimpleMethod.java:63) >>> >> org.ofbiz.webapp.event.SimpleEventHandler.invoke( >>> SimpleEventHandler.java:69) >>> >> org.ofbiz.webapp.control.RequestHandler.runEvent >>> (RequestHandler.java >>> :406) >>> >> org.ofbiz.webapp.control.RequestHandler.doRequest >>> (RequestHandler.java >>> :237) >>> >> org.ofbiz.webapp.control.ControlServlet.doGet >>> (ControlServlet.java:178) >>> >> org.ofbiz.webapp.control.ControlServlet.doPost >>> (ControlServlet.java:74) >>> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:615) >>> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:688) >>> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( >>> ApplicationFilterChain.java:252) >>> >> org.apache.catalina.core.ApplicationFilterChain.doFilter( >>> ApplicationFilterChain.java:173) >>> >> org.ofbiz.webapp.control.ContextFilter.doFilter >>> (ContextFilter.java:245) >>> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( >>> ApplicationFilterChain.java:202) >>> >> org.apache.catalina.core.ApplicationFilterChain.doFilter( >>> ApplicationFilterChain.java:173) >>> >> org.apache.catalina.core.StandardWrapperValve.invoke( >>> StandardWrapperValve.java:213) >>> >> org.apache.catalina.core.StandardContextValve.invoke( >>> StandardContextValve.java:178) >>> >> org.apache.catalina.core.StandardHostValve.invoke( >>> StandardHostValve.java:126) >>> >> org.apache.catalina.valves.ErrorReportValve.invoke( >>> ErrorReportValve.java:105) >>> >> org.apache.catalina.core.StandardEngineValve.invoke( >>> StandardEngineValve.java:107) >>> >> org.apache.catalina.valves.AccessLogValve.invoke >>> (AccessLogValve.java >>> :541) >>> >> org.apache.catalina.connector.CoyoteAdapter.service >>> (CoyoteAdapter.java >>> :148) >>> >> org.apache.coyote.http11.Http11Processor.process >>> (Http11Processor.java >>> :869) >>> >> >>> org.apache.coyote.http11.Http11BaseProtocol >>> $Http11ConnectionHandler.processConnection >>> (Http11BaseProtocol.java:664) >>> >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket( >>> PoolTcpEndpoint.java:527) >>> >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( >>> LeaderFollowerWorkerThread.java:80) >>> >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run( >>> ThreadPool.java:684) >>> >> java.lang.Thread.run(Thread.java:534) >>> >> >>> --------------------------------------------------------------------- >>> ----------- >>> >> 2006-12-22 06:08:55,671 (http-0.0.0.0-8443-Processor4) [ >>> >> TransactionUtil.java:249:ERROR] >>> >> ---- exception report >>> >> ---------------------------------------------------------- >>> >> [TransactionUtil.rollback] >>> >> Exception: java.lang.Exception >>> >> Message: Stack Trace >>> >> ---- stack trace >>> >> --------------------------------------------------------------- >>> >> java.lang.Exception: Stack Trace >>> >> org.ofbiz.entity.transaction.TransactionUtil.rollback( >>> TransactionUtil.java:248) >>> >> org.ofbiz.entity.transaction.TransactionUtil.rollback( >>> TransactionUtil.java:230) >>> >> org.ofbiz.minilang.SimpleMethod.exec(SimpleMethod.java:694) >>> >> org.ofbiz.minilang.SimpleMethod.runSimpleMethod >>> (SimpleMethod.java:102) >>> >> org.ofbiz.minilang.SimpleMethod.runSimpleEvent >>> (SimpleMethod.java:63) >>> >> org.ofbiz.webapp.event.SimpleEventHandler.invoke( >>> SimpleEventHandler.java:69) >>> >> org.ofbiz.webapp.control.RequestHandler.runEvent >>> (RequestHandler.java >>> :406) >>> >> org.ofbiz.webapp.control.RequestHandler.doRequest >>> (RequestHandler.java >>> :237) >>> >> org.ofbiz.webapp.control.ControlServlet.doGet >>> (ControlServlet.java:178) >>> >> org.ofbiz.webapp.control.ControlServlet.doPost >>> (ControlServlet.java:74) >>> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:615) >>> >> javax.servlet.http.HttpServlet.service(HttpServlet.java:688) >>> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( >>> ApplicationFilterChain.java:252) >>> >> org.apache.catalina.core.ApplicationFilterChain.doFilter( >>> ApplicationFilterChain.java:173) >>> >> org.ofbiz.webapp.control.ContextFilter.doFilter >>> (ContextFilter.java:245) >>> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( >>> ApplicationFilterChain.java:202) >>> >> org.apache.catalina.core.ApplicationFilterChain.doFilter( >>> ApplicationFilterChain.java:173) >>> >> org.apache.catalina.core.StandardWrapperValve.invoke( >>> StandardWrapperValve.java:213) >>> >> org.apache.catalina.core.StandardContextValve.invoke( >>> StandardContextValve.java:178) >>> >> org.apache.catalina.core.StandardHostValve.invoke( >>> StandardHostValve.java:126) >>> >> org.apache.catalina.valves.ErrorReportValve.invoke( >>> ErrorReportValve.java:105) >>> >> org.apache.catalina.core.StandardEngineValve.invoke( >>> StandardEngineValve.java:107) >>> >> org.apache.catalina.valves.AccessLogValve.invoke >>> (AccessLogValve.java >>> :541) >>> >> org.apache.catalina.connector.CoyoteAdapter.service >>> (CoyoteAdapter.java >>> :148) >>> >> org.apache.coyote.http11.Http11Processor.process >>> (Http11Processor.java >>> :869) >>> >> >>> org.apache.coyote.http11.Http11BaseProtocol >>> $Http11ConnectionHandler.processConnection >>> (Http11BaseProtocol.java:664) >>> >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket( >>> PoolTcpEndpoint.java:527) >>> >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( >>> LeaderFollowerWorkerThread.java:80) >>> >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run( >>> ThreadPool.java:684) >>> >> java.lang.Thread.run(Thread.java:534) >>> >> >>> --------------------------------------------------------------------- >>> ----------- >>> >> 2006-12-22 06:08:55,671 (http-0.0.0.0-8443-Processor4) [ >>> >> TransactionUtil.java:259:INFO ] [TransactionUtil.rollback] >>> transaction >>> >> rolled back >>> >> 2006-12-22 06:08:55,671 (http-0.0.0.0-8443-Processor4) [ >>> >> RequestHandler.java:268:ERROR] Request processShipOptions >>> caused an >>> error >>> >> with the following message: ERROR: Could not complete the >>> Process Ship >>> >> Options; to be called as a Request Event >>> >> >>> [file:/E:/ofbiz_tmn/applications/ecommerce/script/org/ofbiz/ >>> ecommerce/customer/CustomerEvents.xml#processShipOptions] >>> >> process [Method to execute named setIsGift threw an exception: >>> >> java.lang.NullPointerException] >>> >> 2006-12-22 06:08:55,671 (http-0.0.0.0-8443-Processor4) [ >>> >> RequestHandler.java:385:INFO ] [RequestHandler.doRequest]: >>> Response is >>> a >>> >> view. >>> >> 2006-12-22 06:08:55,671 (http-0.0.0.0-8443-Processor4) [ >>> >> RequestHandler.java:537:INFO ] servletName=control, >>> view=optionsetting >>> >> Secondly, shipping costs are not added to the order total during >>> >> checkout. The order total simply shows shipping as '0' and >>> nothing is >>> >> added to the order for shipping. >>> >> Rohit >>> > >>> > -- >>> > This message is automatically generated by JIRA. >>> > - >>> > If you think it was sent incorrectly contact one of the >>> administrators: >>> > http://issues.apache.org/jira/secure/Administrators.jspa >>> > - >>> > For more information on JIRA, see: >>> http://www.atlassian.com/software/jira >>> > >>> > >>> > >>> > >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/-jira--Created%3A-%28OFBIZ-561%29-Errors-in- >>> anonymous-checkout.-tf2876196.html#a8039196 >>> Sent from the OFBiz - Dev mailing list archive at Nabble.com. >>> >>> > > > -- View this message in context: http://www.nabble.com/-jira--Created%3A-%28OFBIZ-561%29-Errors-in-anonymous-checkout.-tf2876196.html#a8041172 Sent from the OFBiz - Dev mailing list archive at Nabble.com.
