magento customize onepage checkout process - magento

I want to customize the onepage checkout process in magento in such a way that step 1 consists of shopping cart if user logged in otherwise login form and after login cart should be there. now in 2nd step; there should be input form of billing information, shipping information, payment methods options and shipping options. now in 3rd step, order review and 4th would be payment and last one would be Receipt and place order.

You're basically rewriting the onepage checkout at this point. The controlling JS opcheckout.js is written pretty tightly for the existing process, so don't count on being able to reuse it in any sane manner. That said, if you take a look at the actual model/block classes (Mage_Checkout_Model_Type_Onepage and Mage_Checkout_Block_Onepage, respectively) they're actually pretty cleanly written, so you should be able to steal them for your version.

http://www.excellencemagentoblog.com/magento-onestep-checkout-remove-payment-method-step You can go through above mentioned link it covers aspects of customizing one page checkout.

Related

Different checkout pages based on product category in Magento

I am new to Magento .So please forgive me if I am asking something silly.
I am working on a Magento shop where I have a requirement that when I select some product in certain category say X, then I am redirected to one page checkout where I have default shipping method and do not want any payment method. i.e. Skip shipping and payment method step in chekout.
Whereas if I click some other categories then I get redirected to onepage checkout with shipping and payment option.
So basically what I need in form of code is -
if(category==X)
then Checkout without Shipping and payment method
else
Checkout with Shipping and Payment options.
As far as I have explored the magento structure , it is far too complex then other CMS. I am not able to even find files where i have to make changes in code. Anybody out there who can guide me for right approach toward the solution? Or is there any extension which fulfills such requirement?
Thanks in advance.
First, create the new payment method for the category (and shipping method if you need that too).
http://www.magentocommerce.com/wiki/5_-_modules_and_development/payment/create-payment-method-module
http://www.magentocommerce.com/wiki/5_-_modules_and_development/shipping/create-shipping-method-module
Then I would probably extend the controller, though you probably could also use an observer.
Extend magento core controller (Checkout/OnepageController)
Keep in mind that the customer may have products from another category in their cart, and what to do in that case.

Magento Hooks - Will Magento allow me to do this?

I'm going to be starting a E-Commerce project and the client is interested in using Magento. In this project, when a customer adds something to the cart, I'll need to pull them out of the flow, where they'll proceed through a custom wizard-esque area.
They basically design a document using a drag and drop interface. After they finish, that document will be saved as a PDF, and I want them redirected to checkout
So my questions are
Does Magento have hooks available for after an item is added to the
cart ?
If I pull them away to this other section of the site (Wizard
portion), changes they make will potentially add costs to
their cart. Would I still have access to products, prices, and the
cart so that I can continue to modify their cart until they return
to checkout ?
Magento users Event-Observer pattern, where you can hook into virtually any action which is performed and execute your custom code,
Refer to below links,
http://inchoo.net/category/ecommerce/magento/events-observers/
https://gist.github.com/peterjaap/6973324
http://huztechbuzz.wordpress.com/2014/04/26/complete-list-of-all-events-in-magento/
http://www.nicksays.co.uk/magento-events-cheat-sheet-1-7/
So you have to figure out which event you can use and plugin your custom code.
As long as i remember all the cart info ( products/prices ) is stored in the $_SESSION. So you can get all the information from there you need, modify it via your so-called wizzard and udpate the session information after that!
Cheers! :)

Magento: Remove Place (Review) Order Page in Standard Checkout (NOT OnePage Checkout)

I'm working on a project where the site only provides "Free Shipping".
I'n my standard page (NOT one page checkout), after coming from Paypal, customers still need to see the "Review Order" page. This page is unnecessary because we only have free shipping.
Is there a way to remove this page?
Thanks

Auto add items to cart upon login: default behavior?

John goes to bestwidgets.com and puts 5 red widgets in his cart, logs in then decides not to purchase red widgets and logs out.
John comes back the following day (to the same machine) and decides what he needs are blue widgets. He adds 5 blue widgets to his cart and proceeds to checkout. He then logs in and keeps on trucking thru the one page checkout. Only AFTER he finishes his purchase he realizes that 5 red widgets got automatically added to his cart (when he logged in, though most people wont even realize that).
John now thinks bestwidgets.com are crooks, cancels his order and never comes back.
Am I missing something here or is this magento’s default behavior!??
Magento Community 1.5.1.0
This is the default behavior in Magento, but this has nothing to do with the "Persistent Shopping" feature but with "Quote Life Time". As usual with Magento we left the decision how the store should work to the merchants running the store as they know their market best and what is the best way to configure their store. If you go to System->Configurations under Sales->Checkout in the Shopping Cart tab you should be able to set the number of days the quote (or shopping cart) is remembered (Quote Lifetime (days)). Setting it to 0 should not remember the cart between each login of the customer.
If your using Enterprise: Enterprise_Persistent and/or Community Mage_Persistent disable them via app/etc/modules in the corresponding XML to disable this functionality if your worried about customers not realizing their previous added products are in their cart during checkout.
Am I missing something here or is this magento’s default behavior!??
Yes it is Magento's default behavior. I get your opinion about the crookishness feeling on this, however, I believe most would say it's to help the customers remember what they were looking at and help them spend money. Subtle difference...

Magento custom save order

We have a custom discount option other than magento default discount/coupon option. In that customer can choose the full amount to be paid from their balance amount with the account.
So if they choose to pay the total amount then i want to skip the magento payment tab. In the custom action i have to save the order and redirect the checkout page customer to checkout success page. How can i do that. When i call order->save(), it throws error like " Should select a payment option."
Please help me to skip the payment option on checkout page
Rather than skipping that option entirely, creating a new payment type to pay from the account would probably be clearer to the customer. You could preselect that option for the customer, and keep the rest of the system intact.
Hope that helps!
Thanks,
Joe

Resources