Stephanie here from Shopify.
You can omit PO boxes by using our Fraud filter app. You can set up rules within the app to automatically cancel orders if the address includes 'PO BOX'.
Here's how it will look within the app:
Fraud filter is an excellent app that is entirely free. You can check it out here.
Hope this helps! Feel free to reach out to our support (http://bit.ly/2uVU8jk) if you have any other questions! We're available 24/7.
This solution appears not to allow the customer to change to a street delivery address and just cancels the order without explanation. This is reflects badly on the store owner and causes frustration for the customer. There's got to be a better way! Or at least a message warning why the order can't be processed. Warning the admin is not helpful in this scenario.
Although I'm really impressed with Shopify, they occasionally make some stupid left field decisions.
No merchant want's an ordered cancelled when the customer types a PO box, they want the customer to retype with the street address (unless of course the merchant actually ships by Canada Post), otherwise PO boxes are useless.
I don't buy this PCI compliance issue. You are already checking for a blank string. You can just as easily check for PO Box and a few derivatives, and you would catch 99% of this stuff.
Also, you don't need to enforce PCI compliance until you get to the payment information, so why not give us back control of the first two pages of the checkout, while you are at it.
Not super impressed with the Shopify suggested fixes for the issue of not allowing orders to come through with a PO Box ship address. The two (not great) options I've found are:
1) Customize the "Shipping Address" title, which doesn't apply to me since I do not have Shopify Plus.
2) Use the Fraud App and set a rule to cancel the order. The fact that the customer notification email in the Fraud app is not customizeable, is limiting and lacks the most basic levels of customer service.
Neither option here is a suitable response or attempt to solve the problem. Hope this feedback helps Shopify to come up with a solution that is useful to the vendor/shop admins, while being informative and understandable to customers on the front end.
I installed the Fraud Filter app to cancel orders if the customer enters a P.O. Box in the shipping address and updated the verbiage in the Shopify cancellation email to let them know that it was likely canceled for this reason and to re-order using a physical address in addition to adding "we cannot ship to P.O. Boxes" in the shipping section of the ordering fields.
However, I have found that while the fraud app is canceling the orders and they are reflected as canceled in the Shopify order section, Shopify is still letting the charge go through, which I have to manually refund, and then still sending the order to our vendor for fulfillment. I just discovered this today as I was marking orders as fulfilled. I need the app to fully cancel the order, remove it from since daily order file that we send to our vendor for the fulfillment, and not charge the customer at all. Basically, I've given away free goods after issuing a refund for the canceled order as there is no way to go back in and recharge the customer for the order. And then, since our vendor sees the order on the daily sales report, they are sending it to the PO Box via USPS, which completely defeats the purpose. Otherwise, this app does me no good. Any help with that? I've just opened a support ticket with the app developer about this.