Magento – Enable Credit Card Save just for backend orders

backendorderspaymentpayment-gateway

I have a credit card gateway with my bank but does not allow backend orders… Is there a way where I can place backend orders for some clients that prefer placing orders over the phone and use the CC save payment method? I will manually check the cards and put them trough a manual credit card machine.
Love to hear some expert opinion on this 🙂

Looking forward to your replies!

Cheers

Best Answer

Each payment method that extends Mage_Payment_Model_Method_Abstract has the following member variables:

protected $_canUseInternal              = true; //can use in admin
protected $_canUseCheckout              = true; //can use in onepage checkout
protected $_canUseForMultishipping      = true; //can use in multishipping

As shown above they are default 'true'.

If you want to use a method only for admin override their values in your payment model as follows:

protected $_canUseInternal              = true; //can use in admin
protected $_canUseCheckout              = false; //can use in onepage checkout
protected $_canUseForMultishipping      = false; //can use in multishipping

Then enable the method from the system->configuration->payment methods section. It shouldn't appear in the frontend (but test it in case I'm wrong) but you should be able to see it in when creating an order from the backend.

Related Topic