Integrating EMV payment devices / terminals with eConduit payment gateway on your POS applications with a signature slips. fully secured,robust data transfer between payment gateway and application server.
eConduit EMV integration – This payment gateway setup will work on both Windows and Mac machines as well as iPad.
EMV Device/Terminal Setup:
The device/terminal vendor will register the device with eConduit. A firmware package will be deployed by eConduit in their cloud servers to install on device through unique serial number of the device.
Switch on device/terminal and connect it to the Ethernet. The device/terminal will pull all the required firmware data libraries automatically from eConduit server. This can also be done by going to the device settings, Select update firmware.
Make sure to unblock the device/terminal IP from firewall restrictions, if any.
The device/terminal shows an status as POS Online after firmware is successfully downloaded and device is ready to pair. In the next step we need to pair this device to a register by activating it through payment gateway to obtain API Key and API password. These keys are to be used in each API call to payment gateway for a successful transaction and to maintain merchant account summary.
Each device is provided with a unique serial number(S/N), The length of this serial number varies based on EMV device manufacturer. After the device is loaded with all required up to date latest firmware, We will integrate it into application using terminal activate API call to eConduit payment gateway. This includes a two step process,
- Client Boarding process :
The device serial number and a Reference ID must be provided to pair a device to register and proceed to client boarding process
Boarding of clients is accomplished by sending an HTTP GET request with client information in query string by calling https://econduitapp.com/setup/activateTerminal.aspx?. Each boarding request allows the contact information to populate in an Iframe window with below details
The Re seller Name and Reference ID are needed for support, reconciliation and proper terminal pairing with merchant account. The Reseller Name will be provided to merchants upon sending an email to eConduit support, with device serial number and manufacturer details. Where in a Reference ID can be any random unique number defined from POS application.
ReferenceID is a unique id that references the client/merchant/organization and can be defined on your end. If the merchant has multiple devices, A single ReferenceID can be passed for all of them, where the payment gateway links all terminals together. The first time a client is directed to boarding page, they will be asked to confirm their contact information, once added to payment gateway system this page will no longer shown and can directly proceed to terminal pairing process.
- Activating device/terminal:
By submitting contact info with reference id and re-seller name to payment gateway, The payment gateway requests for terminal serial number that is to be paired.
By entering terminal serial number on above screen, A test signal with a sale transaction of $0.02 will be sent to terminal.
When the terminal is shown with a test signal, it can be declined or processed by swiping a card. After successful pairing of terminal, The payment gateway(eConduit) will push a json response back to the parent window with Terminal ID, API Key and API Password
Sample json response :
{
"TerminalID":15,
"ApiKey":"a0k9ez02-e7ef-1m5k3-0eba-7001y391e6gs8",
"ApiPassword":"f91ffb69-fn4y6-32e2-p3k93-9e5kj7yuq2398"
}
Ensure to store the above keys in POS application Database. The same obtained keys should be used to send the transaction requests and payment gateway will process all requests by validating the keys provided. The pairing window will not be closed automatically or allow user to close it but, that needs to be done in the integration when you receive credentials back from eConduit.
It is very important to note that an EMV device can be paired and used with only a single register at a time. However, it can be used with any number of registers by UN-pairing and re-pairing to a new register.
- Processing transactions through Device/Terminal:
An Iframe pop up is suggested to handle Web API communications between register and payment gateway servers – so that process works on both Desktop and iPad versions of POS application.
Each transaction request should be sent individually to the payment gateway and in response a card token will be provided which has to be saved in DB for future reference and reconciliations.
The below web API’s are used to run all types of transaction which are categorized by sending different values for “command” parameter. The transaction are pushed to payment gateway servers using below API,
All the payments,refunds,void,Tip adjustments and authorizations are handled with above web API using appropriate command value in API call. Various commands which can be sent to payment gateway in API calls to send appropriate signal to terminal are,
Sale command – To request a sale command, Below is the sample API request to payment gateway, which rings a sale transaction on terminal.
On successful payment by swiping the card on terminal, The payment gateway provides a json response with complete data of sale transaction with Terminal ID,Reference ID,card token,Amount paid, Card type, Last four digits of card,Name of cardholder, Any Error message from terminal. The API also returns below result code for each request along with above additional information
API responses towards transaction requests :
- Approved – Received upon successfully processing payment through gateway
- Declined – Received when payment gateway declines the transaction request
- Error – Received with appropriate message when there is an discrepancy in data sent through API request to gateway and processor
- Connection Timeout – Received when the maximum time limit is reached for a request between POS application, Payment gateway and processor
- Terminal Busy – Received when a new signal is sent to terminal when a transaction is already in process
- Canceled – Received when a cashier/client cancels the transaction on terminal
As like the sale command, Below are commands which are supported by eConduit payment gateway
- Refund command
- Void Command
- Tip Adjustments
- Authorization command
For a sale transaction, Partial payments can be processed by showing an alert to the cashier and return the UI active control to the payment panel with the amount paid and a correct balance due showing.
Some of the payment devices allow for credit or debit commands to be sent to the device wherein the clerk had to ask customer if it is a credit or debit card. Which then would need to be passed to payment gateway to send to the terminal. The command is sent as a debit card transaction and the terminal expects a pin debit transaction. The check cards clear under normal sale command and doesn’t require a change to the process. It’s not worth coding to pin debit because with EMV migration in place, it’s likely chip and pin will create a new process to accept payments with pin. So, eConduit does not support a pure debit command. Some of the terminals still ask the customer.
- Receipt printing :
Once the transaction is successful, A receipt will be printed with the transaction amount paid through
- Browser print
- IP print
- Printer Device
The item details and the card details through which the payment was made are printed on the customized receipt to customer.