A paired user can create a new pair of keys via BLE without the Smart Lock beeing in pairing mode. It requirs only the knowledge of the Admin PIN.
Another practical solution could be to always use the same keys (for all your guests), which you have stored inside your app. In this case you can not use the access management of the Smart Lock (e.g. expiring or deleting a key after a certain time window, access logs, …) and have to handle that (shared) key securely inside your own App, but you work around the need to create new keys for every guest.
Searching for libraries that have the BLE API implemented is a good source for understanding how it works. e.g. GitHub - I-Connect/NukiBleEsp32
This does not speed up the response time