Page 1 of 1

Payment Methods - Not showing

Posted: Tue Nov 15, 2016 5:40 pm
by BarryPr
Hi,

Trying to setup payment methods. Cash On Delivery for a start.

This is what I have done so far:

Countries: Deleted them all except South Africa
Zones: All but South Africa Zones
Taxes: Setup
Shipping: Local Pickup Only

When I checkout I get:

Warning: No Payment options are available. Please contact us for assistance!

What am I missing?

Thanks.

Regards,
Barry

Running on my local machine as I am new to opencart. Once I have this I will setup on domain.

Re: Payment Methods - Not showing

Posted: Wed Nov 16, 2016 1:27 am
by opencartmart
Seems you are testing using wrong GEO zone. Be sure you are in right GEO zone while testing

Re: Payment Methods - Not showing

Posted: Thu Nov 17, 2016 3:01 pm
by BarryPr
Thanks.

I set the Geo Zone to South Africa - All Zones. No luck.

Here can be no confusion as to the Country or the Zones. I have removed every single country with their respective zones except that of South Africa.

Yet no payment method. And Cash On Delivery is the only one installed.and enabled.

Re: Payment Methods - Not showing

Posted: Thu Nov 17, 2016 3:42 pm
by opencartmart
Are you using any third party checkout module?

Re: Payment Methods - Not showing

Posted: Thu Nov 17, 2016 4:00 pm
by BarryPr
Thanks for getting back to me. Nope everything is as I have downloaded it.

Re: Payment Methods - Not showing

Posted: Thu Nov 17, 2016 9:14 pm
by pipoy
1st - check if your test customer is registered with address meeting the zone condition "All but South Africa Zones"
2nd - Make sure that the module Cash on Delivery is set to your desired zone
3rd - Make sure that this module is enabaled

Re: Payment Methods - Not showing

Posted: Fri Nov 18, 2016 12:24 am
by 1132932051@qq.com
Hello
Whether your module is enabled,
And configured correctly?

Re: Payment Methods - Not showing

Posted: Sun Nov 20, 2016 1:01 pm
by BarryPr
pipoy wrote:1st - check if your test customer is registered with address meeting the zone condition "All but South Africa Zones"
2nd - Make sure that the module Cash on Delivery is set to your desired zone
3rd - Make sure that this module is enabaled

Test Customer is Country South Africa
Cash On Delivery is set to South Africa
Module is Installed and Enabled

Thank you for your input. Appreciated.

Re: Payment Methods - Not showing

Posted: Sun Nov 20, 2016 1:49 pm
by opencartmart
Is there any module installed that is restricting it to appear? I mean, are you using any payment modules filter or restrictor?

Re: Payment Methods - Not showing

Posted: Sun Nov 20, 2016 2:33 pm
by BarryPr
opencartmart wrote:Is there any module installed that is restricting it to appear? I mean, are you using any payment modules filter or restrictor?
Thanks again. Really appreciate the questions. Double checking everything.

Short answer to both questions: No.

I installed opencart.
I removed all references to any Country but South Africa.
Rand (ZAR) is Default currency
COD is set to South Africa
There are no other Zones available but South Africa

All payment modules have been uninstalled except COD.

No new modules have been installed. No restrictions.

Here is a breakdown:

Payment COD Setup:

Total: 0.01
Order Status: Pending
Geo Zone: South Africa
Status: Enabled
Sort Order: 5

Settings System Setup - Local:

Country: South Africa
Currency: Rand

Settings System Setup - Option:

Use Store Tax Address: Shipping Address
Use Customer Tax Address: Shipping Address

Checkout:

Order Status: Pending



Settings Localisation - Currencies:

Rand (Default)

Settings Localisation - Countries:

South African (Default)

Settings Localisation - Zones:

South African States listed only. 9 states in total

Settings Localisation - Geo Zones:

South Africa

Geo Zone Name: South Africa
Description: South Africa

Country: South Africa
Zone: All Zones

All Taxes use South Africa. No other countries in DB to reference.

Re: Payment Methods - Not showing

Posted: Sun Nov 20, 2016 2:47 pm
by opencartmart
Look at code inside COD:

Code: Select all

$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone_to_geo_zone WHERE geo_zone_id = '" . (int)$this->config->get('cod_geo_zone_id') . "' AND country_id = '" . (int)$address['country_id'] . "' AND (zone_id = '" . (int)$address['zone_id'] . "' OR zone_id = '0')");
		if ($this->config->get('cod_total') > 0 && $this->config->get('cod_total') > $total) {
			$status = false;
		} elseif (!$this->cart->hasShipping()) {
			$status = false;
		} elseif (!$this->config->get('cod_geo_zone_id')) {
			$status = true;
		} elseif ($query->num_rows) {
			$status = true;
		} else {
			$status = false;
		}
According to code, COD can be validated to false any of following reason:

1. COD limit amount is greater than order total
2. If the product you are trying to purchase does not need shipping option
3. If COD GEO zone does not match with customer GEO zone.

Do you think all three conditions are valid during checkout?

Re: Payment Methods - Not showing

Posted: Tue Nov 22, 2016 12:39 pm
by BarryPr
opencartmart wrote:Look at code inside COD:

According to code, COD can be validated to false any of following reason:

1. COD limit amount is greater than order total
2. If the product you are trying to purchase does not need shipping option
3. If COD GEO zone does not match with customer GEO zone.

Do you think all three conditions are valid during checkout?
Oh man after all that!!!! It added the item to the cart without it asking about the product Options. Then this means a bug. Something to be fixed. I created a new product with no options and it all worked.

Perfect! Thanks a stack.

Where do I report this as a bug?

Re: Payment Methods - Not showing

Posted: Tue Nov 22, 2016 8:06 pm
by opencartmart
It is not bug. If product option is not required, then it should be optional. Was it mandatory option?

Re: Payment Methods - Not showing

Posted: Wed Nov 23, 2016 1:35 pm
by BarryPr
opencartmart wrote:It is not bug. If product option is not required, then it should be optional. Was it mandatory option?

I will play around and if not sorted I will open a new discussion. Thanks again for your help!

Not sure how to mark this as SOLVED.

Re: Payment Methods - Not showing

Posted: Fri Nov 30, 2018 5:15 pm
by kelvin.jones
In case this happens to others while using COD for testing.... the product being purchased needs to require shipping.

If there is no shipping required then the COD module assumes that cash will never be taken on delivery because it can't be delivered. Makes sense, but over thinks it!!

Easy to comment out the few lines of code in the modules' PHP where its second if() statement looks for whether there is any shipping. Get rid of that and COD works the same as any other payment method.

Great for testing.

Re: Payment Methods - Not showing

Posted: Sun Aug 18, 2019 10:50 pm
by jalaj
Hi ,

I am also facing same issue , i am using opencart in 5th website , i didnt found it before . can support team help me on screen share . I checked almost all possibilities .