Hi @simeonokwo,
Thanks for reaching out and for the detailed explanation.
From what you’ve described, this appears to be a checkout field configuration issue rather than a payment gateway problem. WooCommerce is still validating the billing postcode as a required field, but the field itself is not being rendered on the checkout page when the shipping plugin is active.
As a first step, could you please help us narrow this down by checking the following:
- Temporarily switch your theme to Storefront.
- Keep only WooCommerce and WooCommerce Advanced Zip & Condition Shipping with Admin UI active.
- Clear any cache and then check whether the ZIP/postcode field appears on the checkout page.
This will help determine whether the field is being removed by the theme or another customization.
Additionally, please confirm:
- Your store country under WooCommerce → Settings → General
- Whether postcodes are enabled and used for that country
Once we have that information, we’ll be in a better position to advise on the next steps.
Thanks, and we’ll be happy to continue troubleshooting with you.
Storefront and the two plugins still do not make the zip code field available. Although the transaction went through without asking for zip. I expect to see the zip field.
As for the store country setting the attached screenshot links shows it: https://ibb.co/HLPRM3dV and https://ibb.co/v4RpQZQ2
Hi @simeonokwo,
Thanks for checking that and for sharing the screenshots. Based on your results, this confirms two important things:
- The issue is not caused by your theme or Paystack
- WooCommerce itself is not rendering the postcode field for your current store configuration
From your screenshots, your store country is set to Nigeria. For Nigeria, WooCommerce does not enable postcode/ZIP fields by default, as postcodes are not universally used there. When a country is configured this way, WooCommerce intentionally hides the postcode field at checkout. What’s causing the conflict
- WooCommerce hides the postcode field due to the selected country
- The Advanced Zip & Condition Shipping plugin still requires a postcode for rate calculation
This results in:
- No postcode field being shown
- Validation errors or inconsistent checkout behaviour
This also explains why:
- The field never appears (even with the Storefront theme)
- Checkout can still succeed without a postcode
- The shipping plugin behaves unexpectedly
What you can do next
Option 1: Force-enable the postcode field (not officially supported)
You can override WooCommerce’s default behaviour with custom code to always show the postcode field. However, this would be a customization and falls outside the scope of WooCommerce core support.
Option 2: Use a shipping plugin that supports non-postcode countries
Some shipping plugins support:
- City-based
- State-based
- Custom-field-based shipping conditions
without relying on WooCommerce’s postcode field.
Option 3 (Recommended): Contact the shipping plugin author
The plugin should ideally:
- Detect when the store country does not support postcodes
- Either render its own postcode field or avoid enforcing postcode validation
At this point, since WooCommerce core is behaving as designed for your country setting, the best next step is to contact the WooCommerce Advanced Zip & Condition Shipping plugin developer and share:
- Your store country (Nigeria)
- That WooCommerce does not output a postcode field for this country
- That the plugin still requires one for its shipping logic
It’s been a while since we heard back from you for this reason we are closing this thread.
If WooCommerce has been useful for your store and you appreciate the support you’ve received, we’d truly appreciate it if you could leave us a quick review here:
https://ww.wp.xz.cn/support/plugin/woocommerce/reviews/#new-post
Feel free to open a new forum topic if you run into any other problem.