Magento Checkout: Item out of stock charges customer but no order / order confirmation - magento

I am using Magento 1.6 with the out-of-the-box one page checkout.
Upon the final submit, after the customer has reviewed their order, there seems to be a glitch: If an item has become out of stock, the customer is notified and the order seems not to be going through (no order is created and no confirmation page). However, authorize.net does get the complete transaction request and charges the customer. It seems to only happen if an item has become out of stock. (Customer could be lingering to hit the submit button for quite a while.)
What can I do? Add a java script function to check upon stock on clicking submit?
Is this a known bug?
Thanks!

Is your system set to allow Backorders?
System > Config > Catalog > Inventory > Backorders "No Backorders".
If that is set to disallow backorders I wonder why the add-to-cart button even displays.
If you are using a custom template I might start there in troubleshooting. Switch back to a default template and see if this issue persists.

Related

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: Create order in backend and have customer complete payment

I'm exploring implementation options in Magento and am wondering if anyone has attempted or found a solution to this scenario...
I would like to be able to setup an order via the Magento backend (add products, set shipping price, etc) then have the customer be able to complete the order by logging into their account and proceeding through the checkout process.
Would be really great if the customer could get an email notification with a link directly to the payment step/checkout.
Is there a public extension that does this or something similar? Is the only option to push the products to a customer's cart then manually notify? Any other approaches on this?
Two possible ways of accomplishing this (assuming that all product are enable in that store)
In Admin create new order for that customer and add all items to quote, then under 'Items Ordered -> Action' click 'Move to Shopping Cart' (items will disappear from quote and should appear in the customer shopping cart once log in)
Create a custom quotation module (or modify new order creation) that email the customer with a link that will restore the quote on so the customer can complete the transaction
The Cart2Quote extension provides exactly that functionality.

Magento 1.7 - Can't Create Invoice for Check/Money Order Sales

I have a Magento store, running on 1.7.0.2.
I am unable to move orders from Pending or Processing to Complete if the payment method is Check/Money Order.
Basically, on the Create Invoice screen, clicking on the [Submit Invoice] button at the bottom of the page does nothing. No errors, no JavaScript warnings, just nothing.
I've tried 3 different browsers, and it's occuring on the live site and on my staging site.
Credit Card orders move to Complete automatically once shipped, Purchase Orders move to Complete by selecting "Capture Offline" when creating an invoice, but still the orders paid for with "Check / Money Order" elude all of my abilities to create an invoice.
Any assistance would be much appreciated.
Check payment methods you have enabled in magento admin.
I don't know if this is related to your issue or not, but I had the same issue. After looking at the page source, i saw that there was no onclick event for the submit invoice button.
What i did, which is hardly a solution, but works for me is add another button that adds the correct "onclick" when clicked. I called it "validate invoice".
edit the file /app/design/adminhtml/default/default/template/sales/order/invoice/create/items.phtml
at line 124, right above <?php echo $this->getChildHtml('submit_button') ?>
I added:
<button onclick="$$('div .submit-button').invoke('writeAttribute','onclick','$(\'edit_form\').submit()');alert('Done');">Validate Invoice</button>
Click "Validate Invoice" button, and then you can submit the invoice.
Again, it's hardly a solution, but it definitely works for me.
What browser and OS are you using? Have had the same issue with a customers of mine, they use Explorer and window. I then tried in Chrome on a Mac and that did the trick.

product qty revert when paypal window closed in magento

Here i am facing one issue. when create an order through paypal in magento after placing an order it is redirecting to paypal. here i am not paying amount just clicked on return to merchant site. in this case qty is reverting correctly to product. in this case order is showing in admin side as pending_payment status.
but forexample i am not clicking any button in paypal and not redirecting to merchant site and just close the window. in this time also order showing in backend as pending_payment status but not reverting qty to product.
anyone advise me what to do in this case.
thanks,
murali.
we are just deleting this order after an half-hour.
Here is the code for delete pending_payment orders from orders grid. for this we set a cron job for delete paypal pending orders. if user close the paypal window it reverts the qty and delete that order. you can check it out here. copy code from below url and place it in magento root folder and set cron for delete pending orders :)
http://eightlessons.blogspot.in/2013/03/delete-pendingpayment-order-status-from.html

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...

Resources