I'm developing an EPOS system using Laravel, Vue and Pusher. I want to integrate a card reader so that on the EPOS the user can specify how much money to charge the customer on the card machine, then wait for a response from the card reader to then process the payment.
I've looked at Stripe but all I see is a manual input option where the user must type in the card information into Stripe's programmatic input fields (pulled from their hosted script) and then on the server side all you get is a token that you use to interact with Stripe's API. That's all very good, since the card information doesn't even hit your server, but it's not great for a POS system designed for convenience stores.
I haven't been able to find any card reader that explicitly states you can use an API to interact with it - they are all just plug-and-play.
Here's the concept of what I want to achieve:
- EPOS operator requests a card payment of X amount.
- Amount gets sent to the card reader via server/client API
- Card reader accept payment for the given amount
- Card reader sends payment to payment provider server (Stripe or equivalent)
- EPOS system listens for the response from the payment provider
- Show any errors if any, else if successful close the transaction
Is there a product that facilitates this or is there a more elegant solution to handling this?