Hi Dino,
As far as i'm aware each printer is different and requires drivers added to the phone to print. Applications specific to a user's printer will have file encoding and a set message packet format to send over wifi or bluetooth. These apps also set up a printing service that can run in the background and allow you to print.
This is where to start reading on the subject:
https://developer.android.com/reference/android/printservice/package-summary.html
Depending on the development time you have on your project, I would allow the user to export the receipt to the externalStorage/Document (or Downloads) and let the printer app for the user's printer do the printing.
I know, HP, Fuji Zerox and Brother have their own apps that easily print to their branded printers.