NeroPay Docs
Checkout API

Rest API

REST API Docs

Integrate NeroPay into your checkout flow with a simple JSON-based payment API. The API accepts standard HTTP requests, returns structured JSON responses, and supports both sandbox and live environments.

Introduction

The NeroPay Payment Gateway API is designed for fast and simple integration into your website, mobile app, or business software. You can initiate payments, redirect customers to checkout, and receive instant payment notifications in your system.

Authentication is handled using your API keys. Requests made with invalid keys will be rejected. For testing, use the sandbox endpoint. For production payments, use the live endpoint shown in the Initiate Payment section below.

Supported Currencies

NeroPay currently supports the following currencies:

Currency Name Symbol Code
British Pound £ GBP
Euro EUR
US Dollar $ USD

Get Your API Keys

To start using the API, log in to your NeroPay merchant account and open the API Keys section from the dashboard.

There you will find:

  • Public Key — used when initiating API requests
  • Secret Key — used to verify signatures and secure your integration

You can generate a new API key at any time by clicking Generate API Key. Keep your secret key private and never expose it in client-side code.

Need an account? Sign in here.

Initiate Payment

To create a payment, send a POST request to one of the following endpoints.

Live Endpoint

https://eu.neropay.app/payment/initiate

Sandbox Endpoint

https://eu.neropay.app/sandbox/payment/initiate

Sandbox Test Email

test_mode@mail.com

Sandbox Verification Code

222666

Request Method: POST

The request supports the following parameters:

Parameter Type Required Description
public_key string (50) Yes Your public API key.
identifier string (100) Yes A unique identifier used to match the payment in your own system.
currency string (4) Yes Currency code in uppercase, for example GBP, EUR, or USD.
amount decimal Yes Payment amount.
details string (2000) Yes Description of the transaction or ordered products.
ipn_url string Yes Your Instant Payment Notification callback URL.
success_url string Yes The URL where the customer is redirected after a successful payment.
cancel_url string Yes The URL where the customer is redirected if the payment is cancelled.
customer_name string (150) Yes Customer full name.
customer_email string (150) Yes A valid customer email address.
customer_phone string (20) Optional Customer phone number.
customer_address string (150) Optional Customer billing or delivery address.
customer_shipping_method string (150) Optional Shipping method for the order.

Example PHP Request

 'DFU80XZIKS',
    'currency' => 'GBP',
    'amount' => 100.00,
    'details' => 'Purchase T-shirt',
    'ipn_url' => 'https://example.co.uk/ipn_url.php',
    'cancel_url' => 'https://example.co.uk/cancel_url.php',
    'success_url' => 'https://example.co.uk/success_url.php',
    'public_key' => 'your_public_key',
    'customer_name' => 'John Doe',
    'customer_email' => 'john@mail.com',
    'customer_phone' => '01234567890',
    'customer_address' => 'ABC Road, Stockport, SK7 8KJ',
    'customer_shipping_method' => 'Delivery',
];

// Live endpoint
$url = 'https://eu.neropay.app/payment/initiate';

// Sandbox endpoint
// $url = 'https://eu.neropay.app/sandbox/payment/initiate';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);
curl_close($ch);

// $result contains the API response
echo $result;

Example Responses

Error Response

{
  "error": "true",
  "message": "Invalid api key"
}

Success Response

{
  "success": "ok",
  "message": "Payment initiated. Redirect to URL.",
  "url": "https://example.com/initiate/payment/checkout?payment_id=eJSAASDxdrt4DASDASVNASJA7893232432cvmdsamnvASF"
}

Validate the Payment and IPN

After payment processing, NeroPay sends a server-to-server notification to your ipn_url. You should use this notification to verify the payment status and update your order in your system.

Endpoint

Your business application IPN URL

Request Method: POST

You will receive the following parameters:

Parameter Description
status Payment status returned by NeroPay.
identifier Your original payment identifier.
signature A hash signature used to verify the request.
data Contains payment details such as amount, currency, charges, and transaction information.

Example PHP Verification