Skip to main content

Using Custom Payment Links in Paidnice

Connect Paidnice to almost any payment provider that supports hosted checkout links.

Denym avatar
Written by Denym
Updated today

With Custom Payment Links, you can connect Paidnice to almost any payment provider that supports hosted checkout links.

This gives your customers a seamless “Pay Now” button on invoices, customer portals, and emails – without the need for a direct API integration.


How it Works

When you enable Custom Payment Links in Paidnice:

  1. Paidnice reads your invoice data from Xero or QuickBooks (invoice number, amount due, currency, and your account short code).

  2. Paidnice dynamically builds a URL with that data.

    • Example:

      https://payment.provider.com/pay?amount={{DueAmount}}&inv={{InvoiceNumber}}&org={{ShortCode}}
  3. When a customer clicks Pay Now, Paidnice redirects them to your payment provider’s hosted checkout page, pre-filled with:

    • Invoice number (as reference)

    • Amount due

    • Currency

    • Your merchant ID / shortcode

  4. The customer completes the payment directly with your provider, and you receive the funds just as if you had sent them the link manually.

Think of it as a mail merge for payment links – Paidnice fills in the blanks for you.


Example: PayFast (South Africa)

For PayFast, the link structure looks like this:

https://payment.payfast.io/ext/xero/request?inv={{{InvoiceNumber}}}&shortcode={{{ShortCode}}}&merchant=23761728&amount={{{DueAmount}}}
  • {{InvoiceNumber}} = your customer’s Xero/QBO invoice number

  • {{ShortCode}} = your Paidnice account shortcode

  • {{DueAmount}} = the invoice total

  • merchant=23761728 = your PayFast merchant ID

When the customer clicks Pay Now, they’re taken to PayFast’s checkout page with the invoice pre-loaded.


Setup Steps

  1. Go to Settings → Payments → Custom Payment Links in Paidnice.

  2. Toggle Enable Custom Payment Link to ON.

  3. Paste your payment provider’s checkout link format.

  4. Insert the merge tags ({{DueAmount}}, {{InvoiceNumber}}, {{ShortCode}}, {{InvoiceCurrency}}) where needed.

  5. Save changes.

Paidnice will now automatically show a Pay Now button in:

  • Customer portal pages

  • Invoice reminder emails

  • Payment confirmation screens


⚠️ Not supported: providers that only allow API calls without hosted checkout links (e.g., pure EFTPOS, Adyen in API mode, or providers requiring tokenized sessions).


Troubleshooting

  • Customer redirected but amount is blank? → Make sure you used the {{DueAmount}} merge tag.

  • Reference not showing? → Confirm your provider supports passing invoice numbers via URL.

  • Button not showing in emails? → Check that Custom Payment Links is enabled and saved.


Best Practices

  • Always test your link with a real invoice to ensure parameters populate correctly.

  • Use the provider’s sandbox/test mode before going live.

  • Include invoice reference in the link where possible, so payments reconcile easily.


Summary: Custom Payment Links let Paidnice generate dynamic “Pay Now” buttons for providers like PayFast, Stripe, PayPal, and others. If your provider supports hosted checkout links, Paidnice can integrate seamlessly without a full API connection.

Did this answer your question?