PIXEL PULSE DIGITALTHE DIGITAL HEARTBEAT ← All Resources

Make.com and PayFast in South Africa: How to Confirm a Payment Automatically

Published

Key takeaways

  • PayFast's ITN is a server-to-server notification, so it arrives even if the customer closes the browser.
  • In Make.com, receive it with a Custom webhook and route only COMPLETE payments to your confirmation steps.
  • Verify the signature, the sender, the amount and PayFast's own confirmation before trusting a notification.
  • Return a quick 200 response and make the update safe to repeat so a duplicate does not send two confirmations.

The short answer

To confirm PayFast payments automatically in Make.com, point PayFast's notify URL at a Make webhook, check that the payment is complete and genuine, then update your records and email the customer. Make receives the notification, a router acts only on completed payments, and the webhook answers PayFast with a success response so it stops retrying.

What PayFast's notification is

PayFast calls this the Instant Transaction Notification, or ITN. After a customer pays, PayFast sends a server-to-server POST to the notify URL you set on the payment. It carries your payment reference, PayFast's own payment ID, the payment status and the amounts. It is separate from the customer's browser redirect, so it still arrives if they close the tab.

The Make.com scenario, step by step

In Make, start the scenario with a Custom webhook and give PayFast that address as the notify URL. Run one test payment so Make learns the fields. Then add a router with one route filtered to payment status COMPLETE. Anything else, such as a cancelled or pending payment, should not trigger a confirmation or a paid pass.

The checks that keep it safe

Before you trust a notification, check it. PayFast's documentation asks merchants to verify four things: the signature matches, the request comes from PayFast, the amount equals what you expected for that order, and PayFast confirms the data when you post it back to its validation endpoint. In Make you can do the last step with an HTTP module. Follow PayFast's current developer documentation for the exact steps.

Updating your records and replying

Then do the business work. Look up the order by your own payment reference, mark it paid in your Google Sheet or Airtable, and send the confirmation email. Add a Webhook response module that returns a 200 status quickly, because PayFast expects an answer. Make the update idempotent: if the same notification arrives twice, the customer should not receive two passes.

A real example: the Futbol Alliance

We built this for The Futbol Alliance, a youth football camp. Their fourth Make.com scenario receives PayFast's notification, acts only on payments PayFast marks complete, updates the registration in the Google Sheet and sends the confirmation email. It has been tested in the PayFast sandbox and will go live once the client's merchant account is approved. Bank transfer is the live payment method today.

Principles worth copying, and where to go next

The decisions that kept it simple are worth copying. One sheet is the single source of truth, each scenario does one job, and every scenario answers with a clear success or error so a problem shows up as a message and not as silence. Read the full automation write-up for the other three scenarios, or ask us to build a payment flow like this for your business.

Need something like this built? Talk to Pixel Pulse Digital

We build the automations, sites, and compliance systems we write about. Tell us what you're working on.

Chat to us on WhatsApp

More from the Pixel Pulse Digital Resource Hub