Skip to main content

Authentication

Every direct Payscribe API request is authenticated with the API key issued in Settings → API Keys. Send it in the Authorization Bearer header from a server you control.

curl https://sandbox.payscribe.ng/api/v1/my-account/balances \
-H "Authorization: Bearer $PAYSCRIBE_API_KEY"

Credentials and environments

CredentialCurrent formatPurposeWhere it belongs
Sandbox API keyps_pk_test_...Authenticates sandbox API requests.Server environment during development and testing.
Production API keyps_pk_live_...Authenticates production API requests.Production server environment only.
Webhook secretps_test_... / ps_live_...Verifies Payscribe webhook signatures. It does not authenticate API calls.Server environment, stored separately from the API key.
Treat the API key as sensitive

Although older dashboard and code paths call it a “public key”, the current API uses this key to authenticate business API operations. Do not place it in browser or mobile code, source control, logs, screenshots, URLs, or support tickets. Keep it on your server and protect it like any credential that can move money.

Sandbox

Use a ps_pk_test_... key with https://sandbox.payscribe.ng/api/v1. Pairing a test key with the production URL, or a live key with the sandbox URL, is an authentication error.

Production API access also enforces the business IP allowlist configured in the dashboard. Add the outbound IP address of the server that sends your API requests before going live.

Next steps

Was this page helpful?

Report a docs issue →