Use tabs for fields that aren't required.
Split the fields up (eg. Personal, financial, Accounting) into seperate appropriate tabs.
Find out what information people normally should fill in, if they fill in all of your form, that's not really UX, because that really are a lot of fields. If you are using this in a commercial application, users are going to think it's to crowded and to difficult, leading to more support calls, ... Perhaps you should look into it with your boss, what information can be automated / deleted. If i'm not mistaking, this is a legal document or a contract. If it's a contract, clients with address, name, number, ... / products with their tax and info should already be in the system, this would make the information overflow some easier to bear ;)
You also have derived fields, eg. when users fill in a city you can get the post/zip-code, region and country. When they fill in the streets, you know all of the previous (or can make a selection based on that), just saying.
Splitting in a wizard is one way to address it.
I normally have tabs with the first tab = "global" with all required fields.
Then i seperate tabs for their use and their usage (= used a lot - yes / no?).