To set up custom fields for your client, so that they will automatically fill in a form:
Go to Settings Cog > Contacts > Contact Custom Fields
You will be taken to the page just below, and at the bottom is the area where you can add new custom fields for the clients or locations. For example, to have the city pulled from the Client information, have it set to Client, and then you can check the box if you want the city added to search functions, and then fill in the variable (what you would like it recognised as when you use it as a variable). 'City' would work well enough in this case. And then click Save, to save the variable in your settings.
This will now create the field automatically in your client profiles, and can be edited in edit mode or added when a new contact is created. If you go into your contacts, you can choose the Edit pen on the Billing card, and the field will show as a Custom Field in the client information, ready to be filled. This will need to be edited into the billing and / or contact information in order for it to be pulled from the client so that it automatically fills out in the form.
In the Form Builder itself, make a note of the object name of where you would like the custom field to be filled out. For this continued example, this would be _City. And then you can go up to where the CRM Client information is (usually noted as CRM Client). In that section there will be a new dropdown for the new custom client field. Choose _1towncity in that dropdown, and then Save Draft and Deploy / Publish Template.
Once that has been Saved and Published, and so long as that field is filled out in the Contact information, the information from that custom variable should automatically fill out in the required field, when the contact is chosen.
Now when the client name is chosen in that form, it will fill out the information of the custom field that was edited into the Contact's information.