Terminal
Terminal Locations
Create and manage merchant locations for terminal reader registration and in-person payments.
POST /locationsGET /locationsNeroPay location id
Create location
POST
/locationsCreates a terminal location for the merchant or connected merchant.
| Parameter | Type | Required | Description |
|---|---|---|---|
display_name | string | Yes | Location display name shown in dashboards and reader selection. |
line1 | string | Yes | Address line 1. |
city | string | Yes | Town or city. |
postal_code | string | Yes | Postcode. |
country | ISO country code | Yes | Two-letter country code, for example GB. |
is_default | boolean | Optional | Set this as the default location. |
'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $secretKey,
'Accept: application/json',
'Content-Type: application/json',
'X-NeroPay-Timestamp: ' . $timestamp,
'X-NeroPay-Signature: ' . $signature,
'Idempotency-Key: ' . bin2hex(random_bytes(16)),
],
CURLOPT_POSTFIELDS => $rawBody,
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $response;
{
"success": true,
"data": {
"id": 14059,
"display_name": "Main Store",
"line1": "1 Demo Street",
"city": "London",
"postal_code": "SW1A 1AA",
"country": "GB",
"is_default": true,
"neropay_location_id": "tml_nero_123",
"account_id": "NPEE4E742AB2_6165"
}
}
List locations
true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $secretKey,
'Accept: application/json',
],
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $response;
{
"success": true,
"data": [
{
"id": 14059,
"display_name": "Main Store",
"country": "GB",
"neropay_location_id": "tml_nero_123",
"is_default": true
}
]
}
{
"success": false,
"error": {
"code": "validation_failed",
"message": "The country field must be a valid ISO country code.",
"details": {
"amount": [
"The amount field is required."
]
}
}
}