I'm trying to add a new Custom attribute to the Magento customer model, and I think that I've set everything up correctly from what I've been able to scour off of this website & google, but I'm just not having any luck with it.

Essentially, the project is about overloading some of the functionality for the Magento Customer module, we want to execute some custom code in & around the Customer saving, loading and authentication functionality.

I'm building all of my interceptors into a custom module which I've successfully vendored into my Dev instance.

This module has an InstallData.php script which does successfully create my Custom Attribute:

Have you cross verified this attribute is created in backend
– Prashant ValandaFeb 7 '19 at 17:03

I can confirm that the attribute is being shown on the admin form, but that form gives the same error, stating that the MSISDN is a required value, even when that form field is filled in.
– DuncanAFeb 8 '19 at 12:20

Thank you for the feedback, I've tried making that change to the attribute, but I'm still getting the same error. Is there anywhere that I could see a list of the valid options for that setData() method? I've tried googling it, but I'm not finding anything.
– DuncanAFeb 8 '19 at 9:00

And after doing the whole process of reinstalling the module, Magento is now finally able to read the custom attribute from my JSON Request & save it to the database.

Disclaimer: The above install script has been created by using a "throw-everything at-the-wall-and-see-what-sticks" approach, so I'm sure that some coding guidelines
& best practices are being violated.