Product: Mortgage

I am a XXXX XXXXr who is an XXXX XXXX that has 9 bank accounts with Chase ( between my business accounts and my personal accounts ). I do a lot of business with my bank and have formed a good relationship with my business bankers. They told me that since I do so much business with the bank, that I should apply for a mortgage and referred me to their mortgage associate that was going to start the process. On XX/XX/XXXX I started looking for a home to purchase. We found a home and we officially went under contract on XX/XX/XXXX  with a closing date of XX/XX/XXXX. On XX/XX/XXXX I transferred all the money that was needed to close to the title company to be held in escrow. During this time a lot of information was sent to the bank for their underwriters since I am a business owner. Whatever information they requested, it was sent back to them within the same day of it being requested. On XX/XX/XXXX a commitment letter was issued by Chase with additional requirements. All requirements were met. On XX/XX/XXXX a Closing Disclosure was issued with a closing date set for XX/XX/XXXX. During this time period the bankers that were involved gave my wife and I very little to no information on what was going on and why there was so much delay with the closing. The bank started requesting more and more information, which was promptly given to them. On XX/XX/XXXX my deposit of XXXX was officially unprotected by the contract and Chase was asking for more and more information to " make the loan work ''. Now with my deposit at risk, Chase asked that I get XXXX gifted to me from a family member in which I was able to do on XXXX.17. Still this was not good enough and the bankers involved were harder and harder to reach and provided little to no answers of what was really wrong. They kept asking for more and more information and had me get my CPA to sign letters explaining my companies financials and how an XXXX XXXX works etc. I was able to find out later that the reason why they were having such a hard time with my loan is because the funds that were put in escrow on XX/XX/XXXX originally came from one of my business accounts and apparently they could not use those funds? Even after trying to explain how I am XXXX XXXX XXXX XXXX XXXX XXXX and how the government taxes an XXXX XXXX, they still were n't able to use them. They dragged this out until XX/XX/XXXX before officially denying my loan for reason : " Insufficient funds to consummate the transaction '' even though I had all the money needed to close in escrow, I met all the requirements of what needed to be in reserve in my bank accounts, AND had XXXX gifted to me. Chase drug this out way beyond my protection period and showed little to no regard for the money that I had already spent on this process and the XXXX in deposit that now officially belonged to the seller. This was by far the worst experience me and my family has gone through. The stress that they caused is beyond explanation, not to mention all the financial damages. I have asked to make a formal complaint within Chase since the official denial on XXXX with XXXX XXXX whom I believe is the VP of mortgage in Florida and she has not provided me that information yet to date despite that I have requested it on 4 different occasions. My main concern/complaint is simply this : If you had a problem with where my funds came from, why was n't this addressed during the pre-approval process? Chase has had access to all of my accounts since day one and that is one of the first things underwriters look for and approve.Why would they wait till after my money in deposit is unprotected to tell me that they cant use that money because it came from my business account? You cant wait days before a closing to tell a family that there is a problem with the funds that have been in place for over 30 days that you all of the sudden could n't use them. That is not right and has caused a lot of XXXX XXXX on me and my family. I have kept every single record of this whole experience and can furnish all emails, forms, text messages, expenses etc. upon request