Currently I'm working in a team creating a custom POS solution. We came to a point were we'd like to integrate with a IC/Credit Card terminal (like VeriFone which we have, i.e. Vx510). I think the simplest mode is to allow Cashier to manually enter into the terminal the amount a client has to pay. In more advanced (the desired) way our POS will send to the terminal the amount to be payed.
Regardless of the "mode" we'd like to get the information from VeriFone if the transaction was successful or not. Here's the dead end we've reached. AFAIK, to program VeriFone terminals or integrate with it you have to become a certified VeriFone developer. If it is so, then I know where to start. If not, please let me know.
Are there any other ways to get information for a terminal that the payment was successful? Are there any 3rd party libraries to communicate with this kind of devices? The most relevant to my problem SO thread I could find is this but it wasn't much of help for me. We don't want to process any confidential data, therefore we don't want to integrate with Authorize.NET
Ok, things got clear a bit... It turns out that if you buy a device from a manufacturer (e.g. VeriFone) it comes "clean", so you have to program it all by your own and satisfy PCI Compliance. Therefore, you have to be certified developer... at least for VeriFone devices.
However if you order a terminal from some kind of 3rd party provider, for example SIX, or Polskie ePłatności (one of the providers in Poland), it comes with some kind of, let call it "firmware". This "firmware" will, or at least should provide you an application for performing cashless transactions. It also should come with handy communication protocol. Of course you'll have to sign some kind of NDA.
In short:
If you want to integrate with a credit card terminal just call a local credit card payment service and ask them to send you a terminal you want to integrate with. Keep in mind that every country has its own transactions centers so your solution will be country-wide.