Google Checkout - null countryCode error
Posted: Tue Nov 23, 2010 11:19 am
We're having a recurring issue with Google Checkout integration. Occasionally AC throws an exception when calculating shipping & taxes, resulting in an end customer getting the default shipping rate. This is obviously problematic because tax isn't calculated, and it also means that customers outside the US can place orders when they normally should not be able to. Here's the exception:
The XML sent from Google appears valid. I've even tried to reproduce the issue myself by filling up my shopping cart with the same products and using the same address as the ones causing exceptions, but it works for me. So for all I can tell the error is random. Has anyone else bumped into this? Any ideas? I can post the XML if it helps. Thanks!
Code: Select all
System.ArgumentNullException: Value cannot be null.
Parameter name: countryCode
at CommerceBuilder.Shipping.ShipZoneDataSource.LoadForAddress(String countryCode, Int32 provinceId, String postalCode)
at CommerceBuilder.Orders.BasketShipment.get_ShipZones()
at CommerceBuilder.Shipping.ShipMethodDataSource.LoadForShipment(IShipment shipment)
at CommerceBuilder.Orders.BasketShipment.get_ApplicableShipMethods()
at CommerceBuilder.Orders.BasketShipment.IsShipMethodApplicable(ShipMethod shipMeth)
at CommerceBuilder.Payments.Providers.GoogleCheckout.AC.AcCallbackRules.GetShippingResult(String ShipMethodName, Order ThisOrder, AnonymousAddress Address)
at CommerceBuilder.Payments.Providers.GoogleCheckout.MerchantCalculation.CallbackProcessor.Process(String CallbackXML)
at MerchantCalc.ProcessRequest(HttpContext context)