I am designing a Point of Pay, as in a Point of Sales, pretty much the same functionality.
Someone comes with a payment slip containing a barcode and the cashier will scan it, and the system can derive from the barcode what the payment is about and start the procedure filling information where appropriate, and ask for the user's review.
The other way is for the user to start the procedure manually and choose the type of payment before entering the details of it.
The barcode reader will be a simple keyboard wedge and the application will be the same across many environments.
So what I am thinking is a home page with buttons for the different payment options for the manual entry and dedicate a separate area that the keystrokes will be placed and when they satisfy a validation, start the payment procedure for the matching type.
That way I make the assumption that all keyboard strokes are for the barcode, and actually I don't expect anyone to write anything else in that page, other than a barcode.
Is that a good practice or is it violating any design rule?