I started out small. When we found many customers demanded a way to import their bank statement, we decided to see if it would be possible.

Version 1, four years ago, only matched customer invoices and it immediately created the payment upon import. Then came the possibility for vendor bills and creating journals. Multi-currency and multi-invoice selection was added as well. Then it hit off.

One thing was clear from the start: we should build it inside NetSuite so users don’t have to learn a new interface. And it still is fully built on custom records and suitescript. This is quite important for us. It makes the tool stable and maintenance is easier. We try to make navigation similar to NetSuite so instinctively you can find your way.
The time savings for our customers are not only from importing the statement and automated matching. Of course it helps a lot when you don’t have to go to 9 different places in the system to create bank transactions, and that you don’t have to retype what is on the statement. Time saving is in reconciliation as well (when you process the entire statement, there is no reason the bank balance should be off), and in many small features. I will touch on some of them.

Payment differences. It’s a hassle if you have to handle those manually. A real life example from own experience: we rent our office from a company that uses Salesforce and a local accounting system. We order meeting rooms, park our cars and order coffee, all processed through a Salesforce app and sent to the accounting system. They send us a combined invoice for all services and debit our account for the total amount. Don’t ask me how, but about half of the time they manage to debit 1 cent less then the actual invoice amount. So the invoice in NetSuite will remain open for 1 cent. In Netsuite, you have to create a journal for 1 cent to write it off and make a payment to apply the journal to the bill.

In the Bank Statements SuiteApp, handing such payment differences is a 1-click action. Administrators can define how such differences should be booked in the GL.
Foreign currency payments is another one. When you send a USD invoice and the customer pays to your AUD bank account, you have to manually set the right exchange rate in NetSuite. The Bank Statements SuiteApp will recognize the AUD amount that was deposited and the USD amount of the invoice and automatically set the right exchange rate.
Last but not least, for recurring charges you can setup custom matching rules. Anything not related to a bill or invoice can be automatically handled with those rules. Some large customers have imported hundreds of those rules. It’s a one-time effort and it will benefit you forever.