When the redesign of the payments UI and email notifications was introduced recently, it also introduced an error in the IPNs of custom fields (option_selection1 etc). This error doesn't happen in the sandbox, as it still uses the old style UI etc., which makes testing somewhat difficult. The error is only apparent if a user leaves a custom field blank. E.g. if the payments form has fields os1, os3, & os4, then the IPN message contains option_selection1 (os1), option_selection2 (os3), & option_selection3 (os4). In the sandbox, and under the old UI, this mapping is the same regardless of whether the fields are filled or blank. With the new UI, if a field is blank it is not included in the message, and the option_selection values are re-assigned. E.g. if in the above scenario the user leaves os1 blank, the IPN message contains option_selection1 (os3) & option_selection2 (os4). If os3 is blank, the message contains option_selection1 (os1), option_selection2 (os4). This makes it impossible to process the IPN in code in a consistent manner. Added to which it's an undocumented change, and different from the sandbox. I presume this change was unintentional and is a bug. A side issue is that the custom fields are no longer included in the email notification, which makes manual verification much more difficult. I would like to report this to PayPal tech support, but I can no longer find any way to raise support tickets. Can anyone tell me how to expedite this with PayPal?
... View more