Introduction
Getting started
Use the Nexpay API to build integrations that handle complex cross-border payment flows — from creating payees and getting FX quotes to collecting funds and tracking payments through to completion.
Quick start
End-to-end guide to making your first payment.
Get your API keys
Create and manage your API keys.
Authentication
Learn how to authenticate your API requests.
API Reference
Explore the full API specification.
The Nexpay API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes and verbs (GET, POST, PUT, DELETE).
No SDK — talk to the REST endpoints directly
Nexpay does not ship official client SDKs. Every integration calls the REST endpoints directly using your language's standard HTTP client (fetch, axios, httpx, requests, okhttp, URLSession, Curl, etc.). Examples in this site are JavaScript fetch, but they translate one-to-one to any HTTP library — the contract is the URL, headers, JSON body, and response envelope. The full OpenAPI 3.x specification is published at v2-spec.nexpay.com.au for code-gen if you need typed clients.
Payments run on payment intents
Every payment in Nexpay is a payment intent (/v2/payment-intents) — a typed wrapper that models the who (payer, subject, recipients), the how (delivery mode), and the how much (amount mode), so one endpoint handles every scenario: operator-driven payments, reusable payment links, batch payroll, and refunds.
- Manual payment with splits — drive a payment end-to-end on the payer's behalf, optionally splitting a commission to your tenant.
- Payment links — send the payer a URL where they enter their own details and pay.
Making your first payment
The typical flow:
- Create a payee — set up the recipient of funds.
- Get a quote — check the exchange rate and fees.
- Upload documents — provide the payer's identity document.
- Create and submit a payment intent — build the intent, dry-run it, then submit.
For a complete walkthrough, see the Quick start guide.
Key concepts
Before building your integration, familiarize yourself with these concepts:
- Terminology — understand Nexpay's key terms (payments, payers, payees, payouts, quotes).
- Currencies & countries — how amounts, currency codes, and country codes work.
- Idempotency — safely retry payment requests without duplicates.
- Errors — how to handle error codes and HTTP status codes.
- Rate limiting — understand API request limits.
Errors
Nexpay uses conventional HTTP response codes to indicate the success or failure of an API request. Codes in the 2xx range indicate success. Codes in the 4xx range indicate an error given the information provided. Codes in the 5xx range indicate an error with Nexpay's servers.
To learn more about how Nexpay handles errors, check this article.
Versioning
Nexpay's API is versioned to support future backwards-incompatible changes. Currently, our API version is v2.