Magento – Add fields to shipping (and customer) address in checkout process

checkoutmagento2shipping-address

I know that I can add "Address lines" in Stores > Configuration > Customer Configuration > Name and Address Options > Number of Lines in a Street Address but the address is stored as a single String in quote_address table.

I need to have four separate fields for customer address:

  • Street
  • Number
  • Complement
  • District

And

  • Area code (before telephone field)

I'd like to show them in that order…

I've already created the number, complement, district, area_code columns in quote_address and customer_address_entitytables. Now I need to show it in frontend and save the custom data to these columns.

Any hints on how to accomplish this?