You can't, at least not without root or any other "patch"-solutions.
There are a few solutions which doesnt work well and need some preparation.
Solution 1:
Create a second App which must be preinstalled and have a PACKAGE_ADDED receiver. Onec it receives the installation of your App it will run it at least onec.
Solution 2:
Create a BOOT_COMPLETED receiver but this means that the device need to reboot to get activated. Even with this solution it may or may not work. Since Android 3.1 google have added a security policy to require (the most devices) that the App has been started at least one time to get in activate-state (some manufacturer dont have this security policy).
Solution 3: (Only working solution)
Create a different Package for your "Customers-App". Onec the app is installed from Playstore and started, it will validate if an app with the customers-namespace is installed. If yes, then it will start to do your Customers-Sqlite-Stuff and uninstall the app after.
Example:
com.myapp.customer -> installed
com.myapp.playstore -> installed -> started -> validate if com.myapp.customer is installed and activate the "customers routine" -> remove com.myapp.customer
Edit:
Using Androids Gradle Plugin 3+ allows your to create flavors which allows you to create different package names / builds easily.
https://developer.android.com/studio/build/build-variants.html