Skip to main content

Frequently Asked Questions

General

How long do transfers take?

Bank transfers (NIP) are typically instant. In rare cases, they may take up to 30 minutes during peak periods.

What are the fees?

Transaction fees vary by payment method and volume. See your dashboard for your specific rate schedule.

Can I test without real money?

Yes — use the Sandbox environment. It uses test data and sandbox credentials, so no real money moves.

How do I get support?

Open a ticket from your dashboard or email support@payscribe.ng.

Integration

What's the base URL for the API?

  • Sandbox: https://sandbox.payscribe.ng/api/v1
  • Production: https://api.payscribe.ng/api/v1

How do I prevent duplicate transfers?

Use a unique ref parameter on every transfer request. If the same ref is sent again, Payscribe returns the existing result without processing a duplicate. See Idempotency.

What happens if a webhook fails?

Payscribe retries failed deliveries according to the configured retry policy. Verify each delivery, process its event ID once, and use the Webhooks & Events reference for the current schedule and recovery behaviour.

Can I have multiple API keys?

Yes. You can create multiple API keys with different permission levels and expiry dates. Navigate to Settings > API Keys in the dashboard.

KYC & Compliance

What KYC levels do you support?

Three tiers: Tier 0 (basic details), Tier 1 (address + DOB + ID), Tier 2 (identity documents). Higher tiers unlock higher transaction limits.

How long does KYC verification take?

BVN verification is instant. Document-based verification takes 1–24 hours depending on volume.

What identification documents do you accept?

International passport, driver's license, National ID, and Voter's card.

Virtual Accounts

What banks support virtual accounts?

9PSB, PalmPay, and Cashconnect MFB. 9PSB supports both static and dynamic accounts; PalmPay supports static only (BVN required).

How many virtual accounts can I create?

Unlimited static accounts. Dynamic accounts have no limit but each is single-use with a maximum of NGN 1,000,000.

Can I reuse a virtual account number?

Static accounts are permanent and can receive unlimited payments. Dynamic accounts expire after one use or the configured expiry time.

Transfers

What's the minimum transfer amount?

NGN 100 for bank transfers.

What's the maximum transfer amount?

Default maximum is NGN 1,000,000 per transaction. Higher limits can be configured per business — contact support.

How do I verify an account number before sending?

Use the POST /api/v1/payouts/account/lookup endpoint to get the account name before initiating a transfer.

Cards

What card types are available?

Virtual USD cards and physical cards.

How many cards can I issue?

Maximum 3 active cards per business.

What's the minimum card funding amount?

NGN 500 per transaction.

Bills

What billers are supported?

Airtime (all major networks), data bundles, electricity (IKEDC, AEDC, EKEDC, KEDCO, PHED), cable TV (DSTV, GOtv, Startimes), and betting (Bet9ja, Sportybet).

Is KYC required for bill payments?

KYC Level 2 is required for electricity purchases.

API

What's the rate limit?

POST requests are limited to 60 requests per minute per source IP address. If exceeded, you receive 429; use the Rate Limits reference for safe backoff and reconciliation behaviour.

How do I handle pagination?

List endpoints support page and page_size parameters. See the Pagination reference.

What authentication method do you use?

Bearer token authentication with API keys. Pass the key that matches the endpoint environment in the Authorization header: Authorization: Bearer $PAYSCRIBE_API_KEY. Use a ps_pk_test_... key for sandbox and a ps_pk_live_... key for production.

Was this page helpful?

Report a docs issue →