Update a payment device
PUT api/payment_devices/payment_device_id
Updates an existing payment device. Only the fields included in the request are changed.
Request syntax
put api/payment_devices/<payment_device_id> '{"<field>":"<value>"}'
Request parameters
The request accepts the following data in JSON format. You can't change the store a payment device belongs to with this action. To move payment devices between stores, see Move payment devices between stores.
| Parameter | Type | Description | Required | Default value |
|---|---|---|---|---|
payment_device_type_id | Integer | The ID of the payment device type. For more information, see List all payment device types. | No | N/A |
register_number | Integer | The register number the payment device is associated with. | No | N/A |
mac_address | String | The MAC address of the payment device. | No | N/A |
group | String | The group the payment device belongs to. | No | N/A |
product_type | String | The product type of the payment device, for example EPP. | No | N/A |
device_location | String | The location of the payment device within the store. | No | N/A |
status | String | The status of the payment device, for example Deployed or Awaiting Deployment. | No | N/A |
serial_id | String | The serial number of the payment device. | No | N/A |
device_ip | String | The IP address of the payment device. | No | N/A |
device_terminal_id | String | The terminal ID of the payment device. | No | N/A |
active | Boolean | Whether the payment device is active. | No | N/A |
pedpooling | Boolean | Whether PED pooling is turned on for the payment device. | No | N/A |
last_inspected_date | String | The date the payment device was last inspected. | No | N/A |
action_last_executed_by | String | The user who last performed an action on the payment device. | No | N/A |
action_last_executed_at_timestamp | String | The timestamp of the last action performed on the payment device. | No | N/A |
last_transaction_timestamp | String | The timestamp of the last transaction processed by the payment device. | No | N/A |
firmware_version | String | The firmware version of the payment device. | No | N/A |
hardware_version | String | The hardware version of the payment device. | No | N/A |
p2pe_payment_applications | String | The P2PE payment applications installed on the payment device. | No | N/A |
p2pe_non_payment_applications | String | The P2PE non-payment applications installed on the payment device. | No | N/A |
Response syntax
{
"exporter_job": integer,
"id": integer,
"store_id": integer,
"register_number": integer,
"device_ip": "string",
"device_terminal_id": "string",
"payment_device_type_id": integer,
"mac_address": "string",
"serial_id": "string",
"unit_serial_id": "string",
"device_location": "string",
"product_type": "string",
"group": "string",
"pedpooling": boolean,
"status": "string",
"action_last_executed_by": "string",
"action_last_executed_at_timestamp": "timestamp",
"last_transaction_timestamp": "string",
"firmware_version": "string",
"p2pe_payment_applications": "string",
"p2pe_non_payment_applications": "string",
"hardware_version": "string",
"owner_name": "string",
"last_inspected_date": "string",
"last_inspected_by": "string",
"created_at": "timestamp",
"updated_at": "timestamp"
}
Response parameters
If the action is successful, an HTTP 200 response is returned. The following data is returned in JSON format.
| Field | Type | Description |
|---|---|---|
exporter_job | Integer | The ID of the exporter job created for the change. |
id | Integer | The ID of the payment device. |
store_id | Integer | The ID of the store the payment device belongs to. |
register_number | Integer | The register number the payment device is assigned to. |
device_ip | String | The IP address of the payment device. |
device_terminal_id | String | The terminal ID of the payment device. |
payment_device_type_id | Integer | The ID of the payment device type. |
mac_address | String | The MAC address of the payment device. MAC addresses are returned in lowercase. |
serial_id | String | The serial number of the payment device. |
unit_serial_id | String | The unit serial number of the payment device. |
device_location | String | The location of the payment device in the store. |
product_type | String | The product type of the payment device, for example EPP. |
group | String | The group the payment device belongs to. |
pedpooling | Boolean | Whether PED pooling is enabled for the payment device. |
status | String | The status of the payment device, for example Deployed or Awaiting Deployment. |
action_last_executed_by | String | The user who last changed the payment device. |
action_last_executed_at_timestamp | Timestamp | The timestamp of the last change to the payment device. |
last_transaction_timestamp | String | The timestamp of the last transaction on the payment device. |
firmware_version | String | The firmware version of the payment device. |
p2pe_payment_applications | String | The P2PE payment applications on the payment device. |
p2pe_non_payment_applications | String | The P2PE non-payment applications on the payment device. |
hardware_version | String | The hardware version of the payment device. |
owner_name | String | A display name for the payment device, built from the store, register number, device type, serial number, and IP address. |
last_inspected_date | String | The date the payment device was last inspected, in the format MM/DD/YYYY HH:MM:SS TIMEZONE. |
last_inspected_by | String | The user who last inspected the payment device. |
created_at | Timestamp | The timestamp of when the payment device was created. |
updated_at | Timestamp | The timestamp of when the payment device was last updated. |
Errors
The following are errors returned by this API. For a complete list of common errors, see Common errors.
| Code | Message | Cause |
|---|---|---|
| - | - | - |
Examples
Example: Set the location of a payment device
This example sets the location of the payment device with ID 135738 to Front counter. Only device_location changes; the other fields keep their values.
ruby api.rb <customer_code> put api/payment_devices/135738 '{"device_location":"Front counter"}'
Response
{
"exporter_job": 1781587,
"id": 135738,
"store_id": 25511,
"register_number": 901,
"device_ip": "10.53.23.44/26",
"device_terminal_id": null,
"payment_device_type_id": 144,
"mac_address": "00:0b:4f:12:34:57",
"serial_id": "DOCS-TEST-0001",
"unit_serial_id": null,
"device_location": "Front counter",
"product_type": "EPP",
"group": null,
"pedpooling": true,
"status": "Deployed",
"action_last_executed_by": "test.user",
"action_last_executed_at_timestamp": "2026-10-10T16:48:46.286Z",
"last_transaction_timestamp": null,
"firmware_version": "",
"p2pe_payment_applications": "",
"p2pe_non_payment_applications": "",
"hardware_version": "",
"owner_name": "Store 2324 (Honolulu/HI): Register 901 (E280FP) Serial number: DOCS-TEST-0001 Ip: 10.53.23.44/26",
"last_inspected_date": null,
"last_inspected_by": null,
"created_at": "2026-10-10T16:47:50.877Z",
"updated_at": "2026-10-10T16:48:46.321Z"
}