Skip to main content

Setting up Online Payments (Paystack - Africa)

Switch on Paystack, add your API keys and webhook URL, set payment rules per service and send payment reminders.

Written by Stephen

Paystack online payments let your customers (pet parents) in Africa pay for bookings online, through the payment link in their booking emails or in the customer portal. Paystack is switched on for your account by our support team. You then add your Paystack keys and webhook URL in Settings > Online Payment Setup, and decide how much has to be paid (the full price, a deposit or a set amount) for each service.

A quick Paystack overview

We chose Paystack as our payment provider in Africa for a number of reasons:

  • Paystack is a subsidiary of Stripe and offers an online payments platform for businesses in a number of African countries.

  • Customers enter their card details in Paystack's own payment window, so KennelBooker never sees or stores them.

  • Payments are processed and paid directly into your own Paystack account. Your money never touches our accounts.

Where to find Paystack online payments

  • Settings > Online Payment Setup: switch on Paystack, add your keys and webhook URL, and set the payment rules. The page is headed Online payments.

  • Payments in the main menu: the Paystack payment requests sent to customers, with reminders. This menu item appears once Paystack is switched on.

  • Staff need the Settings permission to change Online Payment Setup, and the Online payments permission to open the Payments page. You give these in Settings > Staff Accounts, under What they can access.

Step 1: ask us to add Paystack to your account

Send our support team a message asking for Paystack to be added to your account. Once we've done that, Settings > Online Payment Setup shows Online Payments - Paystack Integrate with an Enable Paystack button, and you can carry on with the rest of this guide. Paystack is only offered on accounts that don't already have Stripe connected.

Step 2: switch on Paystack

  1. Go to Settings > Online Payment Setup.

  2. Click Enable Paystack.

The page now shows the Online Payment Settings section, with Enable Paystack switched on, and the Paystack key fields.

Step 3: copy your Paystack API keys into KennelBooker

  1. Open your Paystack account (sign up first at paystack.com if you haven't already).

  2. In Paystack, go to Settings (at the bottom of the left-hand menu), then API Keys & Webhooks.

  3. Copy your Live Secret Key (it starts with sk_) and your Live Public Key (it starts with pk_).

  1. Back in KennelBooker, on Settings > Online Payment Setup, paste the secret key into Paystack - Secret Key and the public key into Paystack - Client Key.

Step 4: add the Paystack webhook URL (don't skip this)

The webhook is how KennelBooker finds out about a Paystack payment when the customer closes their browser before Paystack sends them back to us. Without it, those payments are taken by Paystack but never recorded against the booking.

  1. On Settings > Online Payment Setup, copy the address shown in Paystack - Webhook URL.

  2. In your Paystack dashboard, go to Settings > API Keys & Webhooks and paste the address into both the Test and the Live webhook URL boxes. Save it in Paystack.

  3. Back in KennelBooker, click Update Settings under the Paystack keys to save your keys.

Step 5: choose your Paystack payment settings

The Online Payment Settings section of Settings > Online Payment Setup has these options for Paystack. Click Update Settings to save them.

  • Enable Paystack: turns the Paystack integration on or off.

  • Enable Online Payments & Email Payments: lets customers pay online for bookings, or through the link sent in the booking confirmation email. Switch this on to take payments.

  • Let customers make ad-hoc payments on the Online System: customers can make part payments online, while still paying deposits through the booking confirmation email.

  • Let customers pay for the full booking price if they wish: when a customer is asked for a deposit, they can choose to pay the full balance instead.

  • Make online payments optional: at the end of an online booking, customers can choose to pay online or just submit the booking request.

  • Add Payment Link to Acknowledgement Emails: where a payment link can be created, it's added to the booking acknowledgement email. Your acknowledgement email template needs the [payment_info] placeholder.

  • Full Payment Message and Deposit Payment Message: the wording shown on the online booking system when payment in full, or a deposit, is needed at the time of booking.

Stripe-only options (card terminal, saving cards, passing on fees, Bancontact, MOTO) aren't shown when you use Paystack.

Step 6: set Paystack payment rules for each service

The Per service sections of Settings > Online Payment Setup set the rules for each service you offer (they use your own service names). Each has its own Update Settings button. Depending on the service, you'll see:

  • Payment Type: Full Price, Deposit / Partial Payment (enter the Percentage) or Set Amount (enter the amount).

  • Require customers to pay online: customers are asked to pay when they book online.

  • Do not accept online bookings unless payment is received: when on, an online booking is only added once the customer has paid. When off, a booking whose payment isn't completed is still added, labelled Provisional.

  • Auto confirm bookings if paid: when on, a booking is confirmed automatically once it's paid. When off, it stays Provisional until you confirm it.

  • Payment Due by: a number of days from the Payment Requested Date, Booking Start Date or Booking End Date.

  • Request balance in reminder email: adds a request to pay the outstanding balance to that service's booking reminder email.

Sending Paystack payment reminders

Once a booking has a payment request (a deposit or the full amount), you can chase it from Payments in the main menu.

  • Filter the list with Payment Status (All Payments, Not Paid, Paid, Cancelled) and Booking Status, and change the Sort Order.

  • Click Resend on a payment request to email the customer the payment link again.

  • Delete cancels a payment request you no longer need. It then shows under the Cancelled payment status.

  • Clean up Payments (remove payments for bookings already paid) clears out requests for bookings that have since been paid.

Asking for the booking balance in the reminder email

You can use the booking reminder email (the one sent a few days before check-in) to ask customers to pay what's left on their booking:

  1. In Settings > Online Payment Setup, tick Request balance in reminder email for each service you want it for, and click that section's Update Settings.

  2. In Settings > Email Settings, section Reminders before check-in, make sure Send reminder emails is on for that service.

  3. Make sure your reminder email template contains the [payment_info] placeholder. That's where the payment wording and link appear.

How customers pay with Paystack

When a customer clicks the payment link (or pays in the customer portal), Paystack's payment window opens and shows the payment options Paystack offers on your account, such as card payment (credit and debit cards). The payment is processed by Paystack and the money is paid into your Paystack account. KennelBooker records the payment against the booking.

What Paystack online payments don't do

  • KennelBooker doesn't hold your money or decide when you're paid. Paystack pays out on its own schedule.

  • Paystack can't be switched on from your own account. Our support team adds it for you first.

  • The Stripe-only features (card terminal, saved cards, passing on card fees, Bancontact and MOTO) aren't available with Paystack.

Paystack: frequently asked questions

How do I get Paystack on my KennelBooker account?

Paystack is added to your KennelBooker account by our support team. Send us a message, and once it's added, click Enable Paystack on Settings > Online Payment Setup.

Which currency are Paystack payments taken in?

Paystack payments through KennelBooker are currently charged in South African rand (ZAR). If your business uses another currency, contact our support team before you set Paystack up.

Where do I put my Paystack keys?

Paste your Paystack Live Secret Key into Paystack - Secret Key and your Live Public Key into Paystack - Client Key on Settings > Online Payment Setup, then click Update Settings. You'll find both keys in Paystack under Settings > API Keys & Webhooks.

Do I need to set up the Paystack webhook?

Yes. Copy the Paystack - Webhook URL from Settings > Online Payment Setup into both the Test and Live webhook URL boxes in Paystack (Settings > API Keys & Webhooks). Without it, a payment where the customer closes their browser before returning to KennelBooker is taken by Paystack but not recorded on the booking.

Can I take a deposit instead of the full price with Paystack?

Yes. In Settings > Online Payment Setup, set the service's Payment Type to Deposit / Partial Payment and enter the percentage, or to Set Amount and enter the amount. Click that section's Update Settings.

How do I resend a Paystack payment link?

Go to Payments in the main menu, set Payment Status to Not Paid, find the payment request and click Resend. The customer gets an email with the payment link again.

Can I pass the Paystack fee on to my customers?

No. Passing on card fees is a Stripe-only setting and isn't shown when you use Paystack.

Can I turn off Paystack payments for a while?

Yes. Switch off Enable Paystack (or Enable Online Payments & Email Payments) in Settings > Online Payment Setup and click Update Settings.

Paystack: common problems

I can't see the Enable Paystack button

The Enable Paystack button only shows once our support team has added Paystack to your account, and only if Stripe isn't connected. Send us a message to have it added.

A customer paid with Paystack but the booking still shows unpaid

This usually means the customer closed their browser before Paystack sent them back to KennelBooker and the Paystack webhook isn't set up. Check that the Paystack - Webhook URL from Settings > Online Payment Setup is in both the Test and Live webhook URL boxes in Paystack. For the payment that's already missing, check it in your Paystack dashboard and contact support with the booking reference, the customer name and the Paystack payment reference.

Customers aren't being asked to pay

Check that Enable Paystack and Enable Online Payments & Email Payments are on, and that the service's Require customers to pay online setting is on, in Settings > Online Payment Setup. Also check that both Paystack keys are filled in and saved.

The payment link isn't in my emails

The payment link appears where the email template contains the [payment_info] placeholder. Add it to the template (Settings > Email Settings > Email templates). For acknowledgement emails, also switch on Add Payment Link to Acknowledgement Emails; for reminder emails, tick Request balance in reminder email for the service.

Related articles

Did this answer your question?