NeroPay Docs
API & Integrations

Tables and Registers

Commerce

Tables and Registers

Use table and register endpoints for restaurants, cafés and multi-till POS setups.

TablesRegistersPOS

Tables, areas and registers

MethodEndpointPurpose
GET/tablesList tables.
POST/tablesCreate table.
DELETE/tables/{id}Delete table.
GET/registersList registers.
POST/registersCreate register.
DELETE/registers/{id}Delete register.

Create table

ParameterTypeRequiredDescription
namestringYesTable name or number.
area_idintegerOptionalTable area id when areas are enabled.
seatsintegerOptionalNumber of seats.
is_activeboolean/integerOptionalWhether the table is active.
 '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": 9001,
    "name": "Table 1",
    "area_id": 1,
    "seats": 4,
    "is_active": 1
  }
}

Create register

ParameterTypeRequiredDescription
namestringYesRegister or till name.
location_idinteger/stringOptionalLocation reference.
is_activeboolean/integerOptionalWhether register is active.
 '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": 9501,
    "name": "Front Till",
    "location_id": "tml_nero_123",
    "is_active": 1
  }
}

Delete examples

 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;
 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": false,
  "error": {
    "code": "resource_not_found",
    "message": "Table was not found for this merchant.",
    "details": null
  }
}