If RS-232 defines electrical characteristics, what is the transfer protocol?
It is entirely possible for a device two work from +5V, yet communicate using RS232 signal levels (~ -10V / +10V). There are common chips (max232 is a typical one) that do the conversion.

Note that between the micro-controller and the max232 chip communication uses the asynch/uart protocol, but using 5V (or 3.3V) and 0V. This is sometimes referred to as 'RS232 at TTL level' or 'uart at ttl level'. It is a bit foolish to convert from such level to true rs232, just to convert back 10cm later to the same ttl level, hence some devices communicate directly at this level. 

When RS232 is mentioned it is generally assumed that the asynch/UART protocol is used.

Barcode readers generally work by inserting the barcode as characters into a data stream. When the connection is RS232, this takes the form of ASCII characters. When the barcode reader is connected to the keyboard (or nowadays via USB) it emulated keys being pressed, so it can provide input to any program that accepts keyboard input. You probably want to avoid this type because you would have to emulate USB and part of the USB stack on your micro-controller to get this to work.