I am trying to put Cash on delivery as a payment method at checkout. No success so far. At payment step I get a "No payment method" message.

Things I did: cleared the cache, recompiled, installed different payment modules (magento-sample, Inchoo, Braintree), and then removed them. Also I tried different combinations of settings in admin pannel (merchant country, shipping methods). I disabled all payment methods, then enabled one at a time. The browser cache is empty.

In my final struggle I went full debugging and checked the messages between the server and the client. With wireshark I discovered that the message is received from server: {"payment_methods":[{"code":"cashondelivery","title":"Cash On Delivery"}],"totals":{details_about_products_in cart}. Then I went on jquery debug. In the picture, the data, received from server, is saved and is the same as the json above. After this function, the page gets a total refresh and the message "No payment methods is shown". Enable Onepage Checkout is enabled and desired.

enter image description here

How do I show Cash on delivery payment method in checkout?

  • You should have to do nothing more than select yes from the dropdown to enable it, as it's included with Magento by default, and then clear the configuration and page cache types on the Cache Management page in the admin. Is this a clean install? Any error logs in var/log directory? Aug 31, 2016 at 18:14
  • I forgot to mention that I work in developer mode. I cleared the cache, just to be sure. The Cash on delivery methos is selected in admin panel, otherwise the response from the server shouldn't be received as in the example. No errors in var/log directory
    – Ivy
    Aug 31, 2016 at 18:39
  • Are you checking out with a sample data product? I've found that shipping methods don't always display for products from the sample data. Aug 31, 2016 at 19:56

1 Answer 1


The solution was simple: the file in the Theme\Magento_Checkout\layout\checkout_index_index.xml (copied from Luma theme) was wrong, thus making the error above. The solution was simple: I deleted the file and let the app\code\Magento\Checkout\layout\checkout_index_index.xml take the page.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.