Member Payments

Interface

The Payments interface allows you to see your existing payments, check their status, edit them and also give you more information about what went wrong in case a payment fails.

Payments list

Adding a payment manually

Add Payment

Payments can also be added manually. In order to do so, click on the Add New button found at the top of the PMS -> Payments page.
Afterwards, you will be prompted to select an user and then set the subscription and payment info.

The payment is linked to an user so if the user is not a member yet, the selected subscription plan will be added to his account and activated. If the user you are adding the plan to is already a member, his current subscription will be updated.

Editing a payment

Edit Payment page

If you hover over a payment row, the Edit Payment action will appear. This page lets you edit some of the information we store about a payment.

For example, if are using the Manual / Offline payments gateway, you can set the payment status to Completed after you confirmed a users payment. You can also edit the Transaction ID field if you want to store some external reference about the payment.

When a payment is set to Completed the associated subscription is also activated.

Payment Statuses

Completed

If a user pays correctly, the status of the payment will be set to Completed and a transaction ID will be added.
His subscription will be activated and he will have access to your restricted content.

Pending

When redirecting the user to PayPal to pay for the membership you provide, the payment is saved in the database with a status of Pending.

After the user has completed the payment within PayPal, PayPal sends a payment notification (IPN) back to your website with information about the payment.
The system processes this information and completes the payment saved in your website’s database if the user paid correctly.

We also save extra information for the payment (eg. Transaction ID) so you can easily correlate your website payments with the ones from your PayPal account.

If we do not receive a response from PayPal, the payment status will be set to Failed.

Failed

When a payment fails, it’s status will be set to Failed. This happens instantly for any non-IPN gateway, but for gateways which send the response through an IPN, the status is changed to failed after a while, if a response is not received.
If you follow the Edit Payment link, you will be able to check the Payment Logs to figure out why the payment has failed.

Payment Logs

Logs for a Completed Payment

Payment Logs show on the right side of the Edit Payment screen and they give you more information about a payment.

In the screenshot above we can see that the user was sent to PayPal to complete the payment and afterwards the plugin received the IPN and set the payment status to Completed, activating the users subscription.

View Details

For some of the saved logs, additional data that might be relevant to that action is also saved. To see this data, you can press the View Details button and a modal will open.

IPN received from PayPal

For example, when the plugin receives an IPN from PayPal, all the received information is saved alongside the log entry. What is stored depends on the payment gateway that you have configured.

Failed Payment

Logs for a Failed Payment

This is an example of a failed payment. We can see that the user registered and was sent to the PayPal Checkout to complete the payment but the plugin did not receive a notification about that action so after some time, it changed the payment status to Failed.

The examples from above are for the PayPal Standard gateway. The logs look differently based on the payment gateway that is used to pay.

Payment Requirements

IPN for PayPal gateways

An IPN URL correctly configured in your account is necessary for PayPal payments to work correctly. If payments are not set to Completed on your website but you receive the money in your PayPal account, you should check if the IPN is setup correctly.

PayPal Standard

How to activate IPN for PayPal Standard

Log into your PayPal account -> Click Profile -> Go to Profile and settings -> My selling tools -> Click “Update” in the Instant Payment Notifications section -> Turn On IPN and set your listener’s URL.

pms_paypal_ipn_settings

The Notification URL should contain:

https://www.yourdomain.com/

and

?pay_gate_listener=paypal_ipn

URL

https://www.yourdomain.com/?pay_gate_listener=paypal_ipn

Also check “Receive IPN messages (Enabled)” then Save changes.

PayPal Express & Pro

https://www.cozmoslabs.com/docs/paid-member-subscriptions/add-ons/paypal-pro-and-express-checkout/#Setting_up_Instant_Payment_Notifications_IPN

SSL certificate

An SSL certificate is used to establish a secure encrypted connection (HTTPS). PayPal IPN has been updated to https for added security, therefor you’ll need to install an SSL certificate on your membership site in order to accept payments.

You can obtain security certificates for free instead of paying for traditional SSL certificates (which cost ~ 80$+/year) and install them easier using Let’s Encrypt. It is a free, automated and open certificate authority that issues domain-validated certificates.

If you have a cPanel licence, you should be able to use their AutoSSL feature in order to obtain a free Let’s Encrypt certificate. Contact your hosting provider for more information.