- Your backend creates a checkout session.
- Payfonte returns a checkout URL.
- You redirect the customer to that URL.
- Customer completes payment and Payfonte notifies your system via webhook.
Why Use Standard Checkout?
Fastest Launch
Minimal frontend complexity. Your backend creates a checkout and redirects users.
Hosted Experience
Payfonte handles payment method UI and provider-specific interactions.
Reliable Status Updates
Use webhook events and transaction verification for final payment outcomes.
Integration Steps
Collect payment details on your backend
Prepare required fields like
amount, currency, country, and customer information.Create checkout session
Send a request to
POST /payments/v1/checkouts with your client-id and client-secret.Create Checkout Request
Parameter Reference
| Field | Type | Required | Description |
|---|---|---|---|
reference | string | Recommended | Unique transaction identifier from your system |
amount | integer | Yes | Amount in minor units (no decimals) |
currency | string | Yes | ISO currency code (for example NGN) |
country | string | Yes | ISO country code (for example NG) |
user | object | Yes | Customer object (email/phone/name fields) |
redirectURL | string | No | Customer return URL after checkout |
webhook | string | No | Per-transaction webhook override URL |
metadata | object | No | Custom fields for your internal tracking |
Status values
Collection status values from API responses:pendingfailedabandonedsuccess
Amount Rule (Important)
Payfonte does not support decimal API amounts. Send integer minor-unit values only.500.00 NGN->500001250.75 NGN->125075
After Redirect and Payment
Customer redirect result
Customer redirect result
After checkout, customer is redirected to your
redirectURL with transaction context such as status and reference.Webhook notification
Webhook notification
If webhooks are configured, Payfonte sends asynchronous status updates to your webhook endpoint.
Final state verification
Final state verification
For critical flows, verify transaction status from your backend before shipping goods or crediting wallets.
Failed payment handling
Failed payment handling
If payment fails, allow user retry and keep your order state pending until final success is confirmed.
Production Best Practices
| Practice | Why It Matters |
|---|---|
| Generate references server-side | Prevent duplicate references and improve reconciliation |
| Process webhook idempotently | Avoid duplicate order fulfillment on retries |
| Validate redirect parameters | Protect against malformed/forged client-side values |
| Use backend verification | Ensure final status before business-critical actions |
Related Docs
Inline Checkout
Embedded checkout alternative for on-page payment.
Webhooks
Set up and validate payment event callbacks.
API Reference
Endpoint and schema details for checkout operations.