Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
I figured out my problem. I had misnamed the install function. I am now able to create the fields and instances, but when I try to set the new value, it doesn't work. I am using commerce_payment_transaction_new to create my transaction. I set my new value using $transaction->tr_vendor_user_reference=$current_vendor. When I save it using commerce_payment_transaction_save, the value does not get saved to the database in the field_data_tr_vendor_user_reference table.
I had thought about that, but I thought that fieldable controlled the UI for fields. I am sure that this was part of the problem, but it isn't the complete problem. I just tried setting the fieldable setting, and it still did not create the field. I thought it was because the field creation happens in the .install, but I separated out the setting of fieldable into another module that is enabled first, and it still did not work.
Thank you and God bless! The issue was the CSS/JS aggregation, not permissions on the folder. For some reason aggregation wouldn't work on the webserver when I deployed it.