API Changelog

Track every API change β€” breaking changes, new features, and deprecations.

v2.4.02026-05-28
✨New Featurepackages/sdk/*

Multi-language SDK release

Official SDKs now available in Python, PHP, Go, Java, and Ruby in addition to TypeScript.

✨New Featurepackages/cli

CLI webhook listener

New `nkapfin listen` command for real-time webhook event streaming to your local machine.

✨New Feature

Postman/Insomnia export

Export API collections directly from the Playground in Postman v2.1 or Insomnia v4 format.

⚑Improvement

Changelog page

Versioned changelog with 8-language support and breaking change notification subscriptions.

v2.3.02026-05-15
✨New FeaturePOST /v1/payments

PAPSS cross-border rail

Added Pan-African Payment & Settlement System (PAPSS) rail for intra-Africa transfers.

✨New FeaturePOST /v1/credit/score

Alternative credit scoring

Mobile money transaction patterns now factor into credit decisions via Brain AI.

⚑Improvement

Smart routing cost optimization

selectRail() now considers 24h corridor cost history for better route selection.

v2.2.02026-04-30⚠️ Breaking Change
⚠️Breaking ChangePOST /v1/webhooks/endpoints

Webhook payload structure change

Event payloads now wrap data in a `data` field. Previous flat structure is deprecated and will be removed in v3.0.

✨New FeaturePOST /v1/ghost-cards

Ghost card spending limits

Added per-merchant and per-category spend limits on virtual cards.

πŸ”§Bug Fix

MTN callback timeout

Fixed issue where MTN Mobile Money callbacks would timeout after 8 seconds instead of configured 30s.

πŸ“¦DeprecationPOST /v1/kyc/check

/v1/kyc/check endpoint

/v1/kyc/check is deprecated in favor of /v1/kyc/score which returns richer data. Removal planned for v3.0.

v2.1.02026-04-10
✨New FeaturePOST /v1/embedded/widgets

Embedded Finance widgets

New /v1/embedded/widgets API for creating drop-in payment, balance, and KYC widgets.

✨New FeaturePOST /v1/payments/bulk

Bulk payment disbursement

Batch up to 500 payments in a single API call with automatic retry logic.

⚑Improvement

Rate limit headers

All responses now include X-RateLimit-Remaining and X-RateLimit-Reset headers.

v2.0.02026-03-20⚠️ Breaking Change
⚠️Breaking Change

API key format change

API keys now use nkp_live_ and nkp_test_ prefixes instead of the old sk_ format. Old keys remain valid until 2026-09-01.

⚠️Breaking Change

Amount field renamed

All amount fields renamed from `amount` to `amountMinorUnits` for clarity. Both accepted during migration period.

✨New Feature

Multi-tenant data isolation

Complete row-level security and schema isolation per tenant.

✨New FeaturePOST /v1/fraud/analyze

AI fraud detection

Real-time transaction fraud scoring via Brain AI. Returns risk score 0-100 with reasons.

πŸ”§Bug Fix

Double-spend prevention

Idempotency key now enforced at database level to prevent race condition double-spends.

v1.5.02026-02-28
✨New FeaturePOST /v1/payments

Orange Money rail

Added Orange Money as a payment rail for CEMAC countries.

✨New FeaturePOST /v1/transactions/:id/reverse

Transaction reversal

New endpoint to reverse completed transactions with audit trail.

⚑Improvement

Swagger documentation

Complete OpenAPI 3.0 docs now served at /api/docs with auth testing built in.

πŸ”” Subscribe to updates

Get notified when we release breaking changes.

πŸ“¦ SDKs

TypeScriptPythonPHPGoJavaRuby