CRM_Core_Payment_MJWTrait::getPropertyBagAsArray() lacks support for legacy prop names in PropertyBag::propMap
This appears to be the cause of authnet#27, "Authorize.net Error code 33 with missing billing address".
- MJWTrait provides
getPropertyBagAsArray()
as a way to get contribution-related parameters into an array instead of a PropertyBag, apparently for reasons of compatibility with authnet and/or mjwtrait code. - However, it does not account for the alternate/legacy names defined in the static
PropertyBag::propMap
array. - As a result, various billing address properties are not recognized by name in the available contribution parameters array, and thus contributions made through the AuthNet extension are failing due to lack of various billing address properties.
I have a PR forthcoming to address this by adding alternate property names to the array returned by CRM_Core_Payment_MJWTrait::getPropertyBagAsArray()
.