Have reviewed the implementation and the API doesn't appear changed. Have you configured Hosted Checkout Pages within your PayPal Manager correctly? This is done from the PayPal Manager and not from your regular PayPal account. Below is the URL.
manager.paypal.com/
Once logged in you can configure Hosted Checkout Pages under the Service Settings section. You should have the following configured.
Enter Cancel URL: Cancel URL as provided in the CBSubs gateway
Enter Error URL: Cancel URL as provided in the CBSubs gateway
Cancel URL Method: GET
Show confirmation page: On my website
- Note: You are welcome to use "On a PayPal hosted page" here though if you prefer. It works with either.
Enter Return URL: Return URL as provided in the CBSubs gateway
Return URL Method: GET
Use Silent Post: Yes
Enter Silent Post URL: Notification URL as provided in the CBSubs gateway
Enable Secure Token: Yes
I also recommend the following while testing to make sure your site is accepting payments instead of using live payments.
Transaction Process Mode: Test
You can generate test credit cards below.
developer.paypal.com/api/nvp-soap/payflow/payflow-pro/payflow-pro-testing/
Next within your CBSubs gateway be sure to set "Paypal Advanced server" to "Paypal Advanced test server" so you can safely make test payments.