IPN (Instant Payment Notification) is a POST message sent by PayPal (for regular merchant accounts) whenever a transaction is completed on their side. This message contains all the data regarding the payment transaction completed by a form user.
What are Incomplete Payments?
Each submission on a PayPal Personal (Standard) integrated form is initially considered an INCOMPLETE PAYMENT entry. JotForm uses the IPN message to determine whether a submission’s payment is successful or not. If successful, the submission is marked as completed — the post-submission actions are then performed — such as sending out the NOTIFICATION and AUTORESPONDER emails and sending the submission data to Webhook URLs (if there is any).
If the payment is not successful, the submission remains Incomplete.
Therefore, IPN is crucial for your payment forms to work smoothly.
Completing Submissions Without Payments
Under the submissions page, an INCOMPLETE PAYMENTS button will appear in the toolbar if you have submissions that were not paid for, or whose corresponding IPN was not received by JotForm (hence the failure to be marked as completed). This button will bring up the list of the submissions with incomplete payments.
In the sheets page, click the Kebab Menu (three vertical dots icon) > Click the Pending Payments:
NOTE: Clicking the COMPLETE SUBMISSION button on the list of incomplete payment submissions will NOT process payments. It will simply trigger the post-submission actions and dump the data to the submissions list as if it was paid for (but not really).
Completing Paid Submissions
IPN is crucial for JotForm to mark your submissions as completed if there was really a payment made. In the event that PayPal IPN was disabled at the time of submission, you can still have them marked as completed by triggering the corresponding IPNs.
Luckily, Paypal keeps a history of IPN messages sent/not sent by their server.
Under the IPN Settings page, there is a link that says IPN History page. On that page, you can find the IPN messages that were not sent — its status should be Disabled.
Select the unsent IPNs then click Resend Selected. Doing so will allow JotForm to process the Incomplete Payments on our side (with valid payments) and finally mark them as completed.
IPN settings can be found under Settings > Seller Tools > Instant Payment Notification (for Personal accounts):
Settings > Account Settings > Website Payments > Instant Payment Notifications (for business account):
For your PayPal Personal (Standard) integrated form to work with JotForm, IPN Message Delivery needs to be enabled. Enabling IPN requires a default notification URL. You can enter any Notification URL, but for JotForm-initiated PayPal transactions, the URL will always be overridden with https://www.jotform.com/ipns/paypal.php.
Keeping Message Delivery set as Enabled will ensure that PayPal works with your JotForm form.
Sending IPN to a Custom URL for JotForm-Initiated Transactions
There are times when you want to send the IPN data to your own URL, perhaps for data processing, but you also do not want JotForm and PayPal integration to break.
This is where IPN Relay comes into play. The IPN message reaches our server first, then, if an IPN Relay URL is set, JotForm relays the message to that URL.
To set an IPN Relay URL, click the PAYPAL FIELD on your form, click the Payment Settings (wand icon), then expand the ADDITIONAL GATEWAY SETTINGS section.
Scroll down until you see the IPN RELAY URL. Enter your preferred URL on the field then click the CONTINUE button at the bottom to save.
You’re done! Easy as that!