6 things you must not forget when integrating with GTPay
I had some interesting moment integrating GTBank payment gateway for a client recently. I wonder why so much have changed about the integration. It is funny you can't have a straight integration without escalating to GTBank support team; that is if you are lucky to talk to someone knowledgeable. The banks gateway have not been interesting because the support team have little knowledge of the platform.
I have created this blog post to help you with smooth integration, so you can do less calling and sending of emails. Make sure you don't forget the following things when integrating your GTPay platform to your application.
1. The documentation link has changed
The documentation URL has changed from https://ibank.gtbank.com/gtpay/Test/mman-tech_l.html to https://ibank.gtbank.com/gtpay/IntegrationAPI/mman-tech.html. It is surprising that the documentation for GTPay has changed and the support team still shares the outdated one. It took so much time to figure this out as I kept using gtpay_tranx_hash instead of gtpay_hash as updated in the new documentation. Please note this, it would make you sleep well.
2. You can only test Naira on the DEMO instance
If you are interested in collecting money from international cards, you won't be able to test this on the demo instance. You can only test with local currency (Naira) and develop for other currencies using appropriate currency codes.
3. You don't need a standalone Re-query functionality to pass UAT
As you know that GTPay only has iced on WebPay. It is just another WebPay integration but with custom element names and customisation. Your integration would have to pass through WebPay UAT team before it is passed and you are moved to production. Infact, you will be sent the same WebPay UAT document to fill. However, you don't need to worry, Standalone Re-query (a way of getting transaction status at any point in time, even days after a transaction) functionality that is required for WebPay integration is not needed here. I mean, WebPay requires you to have a process in your backend or admininstrator's panel to re-query transactions at any point in time bit this is not required for GTPay. So, you can breathe relieve...you don't have to do this.
4. The LIVE and the DEMO gateway URL and Credentials are the same
You would probably be thinking your user credentials and URL would change like the way other payment gateways do. They have separate credentials for Demo and Live. You do not need to worry about this, GTPay would only turn your instance to Live when you have satisfied their UAT requiement. So nothing changes. I don't feel this is a good approach anyway. I prefer separation of concerns than have merchants concern about who stumbles on their credntials that is sent in plain text via email.
5. Your Transaction ID has to be unique on the platform
Oh this got me into trouble. Your Transaction ID (gtpay_tranx_id) is not unique to you alone. It has to be unique on the platform. This implies, sending numbers would probably return an error because someone would have used such, I would suggest you append some random characters or a prefix like word to different your Transaction IDs.
If you take note of all these points you won't have to worry about your integration and you might not probably fall victim of mistakes others have made. However, you might not get GTPay support team to reply useful information to you.
6. You won't need the Interswitch WebPAY Merchant ID
Your Interswitch WebPAY Merchant ID won't be needed at any point in your integration. I am sure you would have also wondered why send it to you then? I still wonder too. You might need it for enquiry reasons but not for integration purpose. You are safe not to worry about it.
Hope this put smile on someone's face.