You need to be careful here.. If your application is talking to phone, I would strongly advise against BT. Simple reason, you cannot get it to work with iPhone. You need to become an MFI member and pay Apple tax(i.e. royalty) and put an authentication chip.
If your app is vertical and you can specify Android, bt is ok.
Depending on your complexity, if you need additional or more comprehensive protocols, you need to license a BT stack from somebody unless you want to spend 6 months developing yourself. The BT stack mentioned above is good for basic stuff but wouldn't work for more complex stuff.
The commercial BT stacks cost about 20K and comes with a royalty as low as tens of cents. (Volume is the determining factor)