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:
Paidnice reads your invoice data from Xero or QuickBooks (invoice number, amount due, currency, and your account short code).
Paidnice dynamically builds a URL with that data.
Example:
https://payment.provider.com/pay?amount={{DueAmount}}&inv={{InvoiceNumber}}&org={{ShortCode}}
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
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 totalmerchant=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
Go to Settings → Payments → Custom Payment Links in Paidnice.
Toggle Enable Custom Payment Link to ON.
Paste your payment provider’s checkout link format.
Insert the merge tags (
{{DueAmount}}
,{{InvoiceNumber}}
,{{ShortCode}}
,{{InvoiceCurrency}}
) where needed.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.