magento How do I? manual order (backend) free shipping, actually pickup - magento

magento How do I? manual order (backend) free shipping, actually pickup
Hi we want to be able to enter order in the adminhtml backend (we enter for customer).
Our problems are
1) the customer pays us cash. How do we enable this only for the backend (now we have to select credit card,- the option availbale on checkout)
2) The customer wants to pickup. But we dont want to offer this option to all customers via checkout. So this option is only available for us in the backend
Has anyone run into this before?

You can allow cash payment in the Model:
public function isAvailable($quote = null)
{
return (parent::isAvailable($quote) && Mage::app()->getStore()->isAdmin());
}
This will enable you payment method only in Admin.

For free shipping at backend, I suggest trying this free module. It gives you a option of adding a custom shipping rate while creating order at the backend, that you can always set to zero according to your needs.
http://www.magentocommerce.com/magento-connect/admin-custom-shipping-rate.html
As far as pay by cash is concerned, you can use the check/moneyorder payment method, and just hide the phtml code for this method on the frontend.

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: 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 not creating order for M2Epro Orders

I have implemented M2Epro with magento.
I have used Ebay_Available_quantity attribute to set ebay available quantity.
But there are time where website normal stock is zero and product is out of stock and its still listing on ebay.
When someone buys it on ebay. It does make an order on M2Epro. But does not allow to make order as a magento order.
Is it because it is out of stock or quantity is zero ?
Can we have exceptions for third party sales ?
Thanks
Abhi
We also encountered this issue some time ago and this is what M2e answered on an email:
Thank you for provided details.
I checked your FBA order XXXX and I understand that you
want Magento order creation for FBA orders do not depend on stock
availability.
Let me please explain the logic how Magento orders are created. When
a channel order is imported in M2e Pro, M2e Pro checks settings
provided in Account settings > Orders tab. If corresponding settings
for Magento order creation are provided - M2E Pro sends a request to
Magento to create a Magento order for the channel order.
Magento orders are created due to Standard Magento functionality and
Core Models. Magento does not let to create an order if the product is
out of stock or 'disabled' or does not have available qty in Magento.
These requirements should be met so that the order was successfully
created.
M2e Pro cannot affect the logic of Magento orders creation process.
You can temporarily set 'in stock' status and qty available if you
want Magento order to be created at one for FBA order.
Hope this explanation will be helpful. Please let me know if I can
assist you with something else.
Next email:
Other our customers use backorders feature. As a possible workaround
for creation orders when product quantity is 0, you can allow for
needed products (product should be in stock, manage quantity - "yes".
This will allow Magento order creation for corresponding FBA order if
qty=0. You can set this parameter in Magento product inventory.
I have consulted with our development department on your case. As a
possible workaround, we can provide you with a part of the code which
is responsible for orders functionality. If your developers would be
able to adjust the needed changes, we would be glad to assist you.
Please also note, that we will not guarantee the proper work when some
custom modifications to the code are applied. In case this suggestion
is approved by your developers, please send us your confirmation and I
will send you a part of the code.
The code they wanted to provide was useless, it was just a hint that the magic happens in
app/code/community/Ess/M2ePro/Model/Order.php
public function createMagentoOrder()
which is quite obvious.
Please consider that backorders feature will bring other issues, so we do not use this and currently live with this situation as it is.
For me it is a quite important and standard situation to have FBA stock but no magento stock, so I don't understand why they don't fix the problem.
When time is available we will do a fix ourselves.

How to block free shipping method in frontend only in magento

I am in a tensed situation. I am behind this for more than 1 day. Is there anyway to block showing free shipping method in checkout page, but showing it on admin panel page.
For eg: i purchased a product paying shipping charges for shipping method. But it is not delivered , In that case, through admin Panel, admin may able to reorder the same quote, free of cost and shipping charges, so free shipping method should show in admin panel. But When I enable that, this is shown on frontend also, so how can I block free shipping in frontend(customer checkout), but keeping it enable in admin panel.
I am sorry for poor English. I think, the example that i provided you make the question clear.
Thanks in advance.
Sure it is , just edit the shipping methods template and make a if condition by shipping method code or extend the shipping method and set the isActive method to distinct front and backend

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