Connect PayPal
When PayPal is connected, every invoice you share carries a Pay button. Your customer pays on PayPal, the money arrives in your PayPal account, and Laabam One records the receipt against the invoice automatically.
This takes about five minutes. You do it once.
The money goes straight to your own PayPal account. Laabam One never holds it. That is why you have to create these credentials yourself — they are what allow us to charge on your behalf.
Before you start
You need a PayPal Business account.
A Personal account will let you create credentials that look completely valid, and they will fail when a customer tries to pay. If you are not sure which you have, sign in to PayPal — a Business account shows a Business menu at the top.
Upgrading from Personal to Business is free and takes a few minutes on PayPal's site.
Step 1 — Create an app on PayPal
- Go to the PayPal Developer Dashboard and sign in with your PayPal Business login.
- Make sure the toggle at the top left says Live, not Sandbox.
- Click Create App.
- Give it any name you like —
Laabam Oneis a sensible choice — and choose Merchant as the type. - Click Create App.
PayPal keeps a completely separate set of credentials for testing (Sandbox) and for real money (Live). Sandbox keys will never take a real payment, and live keys will not work in test mode. Whichever you copy, you must set the matching mode in Laabam One in Step 3.
Step 2 — Copy the two values
On the app page you have just created you will see:
| On PayPal | Paste into Laabam One as |
|---|---|
| Client ID | Client Id |
| Secret key 1 — click the eye icon to reveal it | Client Secret |
Copy them somewhere safe for a moment. PayPal will not show the secret again in full once you navigate away, though you can always create a new one.
Step 3 — Enter them in Laabam One
- In Laabam One, go to Settings → Payment Gateways.
- Choose PayPal.
- Paste the Client Id and Client Secret.
- Set Environment Mode to Live.
- Leave the Accepted Currencies as they are unless you have a reason to change them — they are already set to everything PayPal can process.
Step 4 — Test the connection
Click Test connection before you save.
This asks PayPal whether the credentials work. Nothing is charged and nothing is created — it is simply a question.
| What you see | What it means |
|---|---|
| Connected to PayPal (Live). | You are done. Click Save & Activate. |
| PayPal rejected these credentials in Live mode… | Either a value is mistyped, or you copied sandbox keys. Check the Live/Sandbox toggle on PayPal and the Environment Mode toggle here — they must match. |
| Could not reach PayPal. | A temporary network problem. Try again in a moment. |
Then click Save & Activate.
Which currencies PayPal can take
PayPal can process these on Laabam One:
USD · EUR · GBP · AUD · CAD · SGD · MYR
If you invoice in one of those, there is nothing more to do.
If you invoice in a currency that is not on the list
PayPal cannot process every currency — Kenyan shillings, for example, cannot be charged through PayPal at all. If your invoice is in a currency PayPal does not accept, the payment page will show no Pay button and will explain why. That is deliberate: it is better than a button that fails.
You have two options:
- Raise those invoices in a supported currency — USD is the usual choice.
- Turn on currency conversion in your invoice settings. Laabam One then shows the customer the converted amount before they agree to pay, charges in the supported currency, and still credits the invoice in its own currency.
Ask us if you would like conversion switched on — it is off by default, because a customer should never be surprised by the amount that leaves their account.
What your customer sees
- They open the invoice link you sent and click Pay.
- They are taken to PayPal and sign in, or pay by card as a guest.
- PayPal returns them to your invoice page.
- The payment is taken, the page confirms it, and the invoice updates to paid.
The receipt appears in Laabam One against that invoice, with the PayPal transaction reference, so it reconciles against your PayPal statement.
Troubleshooting
The Pay button does not appear. Either the gateway is not active, or the invoice is in a currency PayPal cannot process. Check Settings → Payment Gateways — the card should read Connected and Live. If it does, check the invoice currency against the list above.
"PayPal rejected these credentials." Nine times out of ten this is the Live/Sandbox mismatch. The credentials on PayPal's Sandbox tab and its Live tab are different, and only the pair matching your Environment Mode will work.
The customer says they paid but the invoice still shows unpaid. Send us the invoice number. Every payment attempt is logged with its PayPal reference, so we can tell you exactly what PayPal reported and when.
Optional — add a webhook
You do not need this to take payments. Laabam One completes the payment when your customer returns from PayPal, so a webhook is not part of the setup.
It is worth adding as a safety net for one uncommon case: a customer who approves the payment on PayPal and then closes the tab before being sent back. With a webhook, that payment still reaches your invoice.
To add it, on the same PayPal app page:
- Scroll to Live Webhooks and click Add Webhook.
- Webhook URL:
https://laabam.app/webhooks/paypal - Tick these four events:
CHECKOUT.ORDER.APPROVEDCHECKOUT.ORDER.COMPLETEDPAYMENT.CAPTURE.COMPLETEDPAYMENT.CAPTURE.DENIED
- Save.
There is no secret to copy back into Laabam One. We confirm every payment directly with PayPal rather than trusting what a webhook tells us, so nothing needs to be shared.