PO box comparison
Block PO boxes: native shipping-rate hide vs checkout validation vs AddressFence
Native Shopify can block a PO Box on shipping. Since 17 June 2026, Checkout Blocks address validation is available to all merchants for that ship-to job. Billing is not covered. Do not block every PO Box.
Live listing: apps.shopify.com/address-guard (handle address-guard). The older Address Blocker app sunset on 31 August 2026. Publish only the address types your policy needs, then test a blocked address and an allowed street address.
How-to for the billing job: PO box blocker for the billing address. Adjacent: B2B purchase order · staff permissions audit.
Three controls, three surfaces
| Control | What it sees | PO Box on billing? |
|---|---|---|
| Native shipping-rate hide | Whether a carrier or delivery profile offers a rate to that ship-to | No. Billing is never rated. Digital carts have no shipping rates. |
| Native checkout validation (Checkout Blocks, all merchants since 17 June 2026) | Shipping address types (PO Box and similar types you enable) | No. Billing address is not covered. Shipping can be blocked natively. |
| AddressFence checkout validation | billingAddress (and shipping, if you turn that on) at checkout |
Yes, if the published function targets billing. Still only the patterns you enable. |
Native checkout can block non-compliant shipping addresses since 17 June 2026. This site’s AddressFence pages only document a billing rule and a sibling street-number check after Address Blocker sunset on 31 August 2026. Do not block every PO Box. This page does not claim address line 2 or country-level coverage the listing text here does not describe.
When you should not block all of them
A store that sells to people who only have a PO Box for delivery should keep ship-to boxes available. Blocking every PO Box, locker, military, or diplomatic type because a shipping-format list includes them is the wrong default.
- Leave PO Box shipping on when parcels really go to a box.
- Do not copy locker, military, diplomatic, or USPS gopost® types onto billing unless that is the written policy.
- Do not force shipping = billing just to “catch” a box. That blocks gift checkouts and still lets a matched PO Box through.
- Digital or shipping-not-required carts never run a shipping-only rule. Decide whether billing is in scope at all before you publish.
AddressFence does not decide that policy. You enable types, publish, and you can roll the function back.
Where AddressFence still differs
Use native Checkout Blocks when the job is a non-compliant shipping address — available to all merchants since 17 June 2026. Use AddressFence when the job is a field error on billing, or the sibling street-number check after Address Blocker sunset on 31 August 2026. Do not block every PO Box.
| Path | Still missing |
|---|---|
| Rate hide | No checkout field error. No billing read. Buyer can still complete checkout if another rate or a digital cart exists. |
| Native shipping format validation | Does block a PO Box on shipping. Does not cover billing. A street ship-to plus a PO Box on the card still passes. |
| AddressFence | Does not hide carrier rates. Does not replace AVS. Does not block types you left off. Not a fraud guarantee. |
Street-number (“no bare street line”) is a sibling rule on the same listing. The older Address Blocker app that some stores used for that check sunset on 31 August 2026. It is not a shipping-rate hide, and it is not a reason to block every PO Box.
Install, publish only the types you mean, then prove one block
- Open the AddressFence listing (
apps.shopify.com/address-guard) and install it. - Turn on PO Box (and only the extra types your policy needs). Target billing if that is the gap.
- Publish to checkout validation.
- Test one address that must error and one normal street address that must pass. Roll back if the live function is wrong.
This page does not add prices. Confirm the live listing. This is checkout address validation, not legal advice.
What this page is not
- Not an instruction to block every PO Box.
- Not a shipping-only how-to. If you only need ship-to format blocks, native checkout validation may already cover it.
- Not B2B purchase-order number validation. That job is B2B PO number required.
- Not a fraud, AVS, or chargeback guarantee. Not legal advice.
Can Shopify checkout already block a PO Box?
Yes, on shipping. Since 17 June 2026, Checkout Blocks address validation is available to all merchants and can block a PO Box on the shipping address. Billing address is not covered. Hiding carrier rates for a PO Box ship-to is a different control: it removes a rate, it does not attach a field error to billing. Native Shopify can block PO boxes on shipping. The remaining gap is billing and edge cases, not “Shopify cannot block PO boxes.”
Should I block every PO Box?
No. Do not turn on every address type just because a shipping format list includes them. Leave PO Box shipping available when buyers legitimately receive parcels at a box, and do not copy locker, military, or diplomatic types onto billing unless that is the store policy. Gift checkouts also break if you force shipping and billing to match.
Where does AddressFence still differ from native shipping-rate hide and checkout validation?
Native checkout can block non-compliant shipping addresses for every merchant since 17 June 2026. AddressFence pages on this site document a billing-targeted rule and a sibling street-number check after Address Blocker sunset on 31 August 2026 (handle address-guard). Do not block every PO Box. This page does not invent address line 2 or country-level coverage.
Does hiding shipping rates stop a PO Box on the card billing address?
No. Carrier rules and delivery customizations decide whether a rate is offered to a ship-to. Digital carts and “billing different from shipping” still collect a billing address. Rate hide does not validate billing fields.
Does this comparison guarantee fewer chargebacks?
No. Rejecting an address pattern is not AVS, not a fraud guarantee, and not legal advice. False positives happen if a street line contains “PO Box” as extra text. Test a blocked address and an allowed street address before you leave a rule live.
Related pages
- PO box blocker for the billing address — start path and billing tests
- AddressFence: PO Box Blocker — live App Store listing
- Reviewer screencast
- B2B PO number required — purchase-order numbers, not PO Boxes
- Staff permissions audit checklist
- Shopify apps hub
- Tools
Not legal advice. Not a fraud or chargeback guarantee. Do not block every PO Box. Native shipping PO Box blocks do not validate billing. Test blocked and allowed addresses before you leave a function published.