Unfortunately for you, OPOS does not offer this functionality natively. The closest it has is "Page Mode", where you set the OPOS receipt or slip printer into a Page Mode state, and then all your print commands are buffered internally by the Service Object. You then issue an OPOS pageModePrint() command to send the entire receipt to the printer at a later time. But OPOS does not offer access to the buffer, and the vendor is free to implement it in any way they want (including not implementing the capability at all.)
To solve your problem, the easiest solution I can think of would be to check your Service Object to see if it supports networked printing. Perhaps the service object is already capable of printing to a network attached printer, or to another computer hosting a printer. The vendor may offer access to the Page Mode buffer via DirectIO commands. Your printer vendor may offer these as additional (paid) features, or they may offer to custom write one for you. If the vendor already offers an Ethernet communication board option for your printer, it's likely they already have everything you need. It can't hurt to ask.
If not, you are certainly free to write your own Service Object to accomplish the task of buffering the data and making it available to your application. It's certainly not impossible to slide a custom Service Object as a "wedge" between the Common Controls and the vendor-provided Service Object, and permit custom control via the DirectIO() method. I once did exactly that to add scanner buffer functionality before, but I've never done it for anything as complex as a printer.