Documentation menu
Getting started

What Paylinky is and the two ways to accept payments.

View raw

Welcome to Paylinky

Paylinky lets African businesses accept Mobile Money and crypto payments with a single integration. Paylinky routes payments through licensed payment partners, adds KYC-verified merchant accounts, a unified wallet, signed webhooks and a real sandbox.

Two ways to integrate

Hosted Page APIDirect API (SDK)
What you buildAlmost nothing — redirect the customer to a Paylinky checkout linkYour own checkout UI, forms and flows
EndpointPOST /api/v1/payment-linksPOST /api/v1/collect, POST /api/v1/crypto/collect
Customer experiencePaylinky-hosted page (country, operator, phone, OTP, crypto QR)Fully branded by you
Best forInvoices, WhatsApp/SMS links, quick launchesApps, marketplaces, custom checkouts

You can use both with the same API key.

Base URL

text
1https://paylinky.vercel.app/api/v1

All requests and responses are JSON. All endpoints require Authorization: Bearer <key> (see Authentication).

Environments

EnvironmentKey prefixMoney moves?Activation
Sandboxplk_test_…No — simulatedInstant
Liveplk_live_…YesRequires approved KYC and manual activation by the Paylinky team

Conventions

  • Amounts are numbers in the currency's main unit (e.g. 1000 XAF). Crypto amounts are USDT.
  • References. Every payment has a Paylinky reference (e.g. PLK-7XK2M9QPLA) and your optional merchant_reference.
  • Statuses: pending, success, failed, cancelled, expired, refunded.
  • Errors use { "error": "code", "message": "Human readable" } — see Errors.
  • Idempotency: re-sending a request with the same reference returns the existing payment (idempotent_replay: true) instead of creating a duplicate.
Never trust the browser to confirm a payment. Deliver goods only after a payment.completed webhook or a server-side GET /transaction/{id} that returns success.