https://medium.com/@mupeta.andyson/building-course-assist-part-18-integrating-a-new-payment-gateway-53cdc0c026d