Need suggestion for placing foreign keys in the databases
Assuming a company can have more than one shipping address, the key would be a column added on Shipping Address table (aptly named 'customer_id' and the foreign key definition on the Shipping Address table. If you wanna avoid same address more than once, also add a unique key on shipping address table that can include (customer_id, contact_name) 

On an unrelated note, make sure your created_at and updated_at use timestamps ;)