Thanks for your prompt replay Pankaj!
I did not hack Guru core, I use a component called JoomFuse and they connect my Joomla users with my InfusionSoft contacts.
Basically I create an access level and a group in Joomla for a specific course, example "Course A" and then in Guru I say that Course A is free for members of that same access level. When someone buys Course A via InfusionSoft it tags that person accordingly and JoomFuse component assigns them to that access level in joomla, thus giving that user access to the course.
The problem is that a lot of the times it doesn't work as smoothly. If the contact has more than one email (if their primary email differs from their PayPal), etc. then it doesn't detect that they belong to that access level and then it takes them to the Guru checkout page instead of giving them access.
InfusionSoft uses WePay to process payments. Here's info on Infusion's API if it helps: https://developer.infusionsoft.com
I hope this helps please let me know if you have any questions.
Cheers!
-Nash