Update a payment device

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.

ParameterTypeDescriptionRequiredDefault value
payment_device_type_idIntegerThe ID of the payment device type. For more information, see List all payment device types.NoN/A
register_numberIntegerThe register number the payment device is associated with.NoN/A
mac_addressStringThe MAC address of the payment device.NoN/A
groupStringThe group the payment device belongs to.NoN/A
product_typeStringThe product type of the payment device, for example EPP.NoN/A
device_locationStringThe location of the payment device within the store.NoN/A
statusStringThe status of the payment device, for example Deployed or Awaiting Deployment.NoN/A
serial_idStringThe serial number of the payment device.NoN/A
device_ipStringThe IP address of the payment device.NoN/A
device_terminal_idStringThe terminal ID of the payment device.NoN/A
activeBooleanWhether the payment device is active.NoN/A
pedpoolingBooleanWhether PED pooling is turned on for the payment device.NoN/A
last_inspected_dateStringThe date the payment device was last inspected.NoN/A
action_last_executed_byStringThe user who last performed an action on the payment device.NoN/A
action_last_executed_at_timestampStringThe timestamp of the last action performed on the payment device.NoN/A
last_transaction_timestampStringThe timestamp of the last transaction processed by the payment device.NoN/A
firmware_versionStringThe firmware version of the payment device.NoN/A
hardware_versionStringThe hardware version of the payment device.NoN/A
p2pe_payment_applicationsStringThe P2PE payment applications installed on the payment device.NoN/A
p2pe_non_payment_applicationsStringThe P2PE non-payment applications installed on the payment device.NoN/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.

FieldTypeDescription
exporter_jobIntegerThe ID of the exporter job created for the change.
idIntegerThe ID of the payment device.
store_idIntegerThe ID of the store the payment device belongs to.
register_numberIntegerThe register number the payment device is assigned to.
device_ipStringThe IP address of the payment device.
device_terminal_idStringThe terminal ID of the payment device.
payment_device_type_idIntegerThe ID of the payment device type.
mac_addressStringThe MAC address of the payment device. MAC addresses are returned in lowercase.
serial_idStringThe serial number of the payment device.
unit_serial_idStringThe unit serial number of the payment device.
device_locationStringThe location of the payment device in the store.
product_typeStringThe product type of the payment device, for example EPP.
groupStringThe group the payment device belongs to.
pedpoolingBooleanWhether PED pooling is enabled for the payment device.
statusStringThe status of the payment device, for example Deployed or Awaiting Deployment.
action_last_executed_byStringThe user who last changed the payment device.
action_last_executed_at_timestampTimestampThe timestamp of the last change to the payment device.
last_transaction_timestampStringThe timestamp of the last transaction on the payment device.
firmware_versionStringThe firmware version of the payment device.
p2pe_payment_applicationsStringThe P2PE payment applications on the payment device.
p2pe_non_payment_applicationsStringThe P2PE non-payment applications on the payment device.
hardware_versionStringThe hardware version of the payment device.
owner_nameStringA display name for the payment device, built from the store, register number, device type, serial number, and IP address.
last_inspected_dateStringThe date the payment device was last inspected, in the format MM/DD/YYYY HH:MM:SS TIMEZONE.
last_inspected_byStringThe user who last inspected the payment device.
created_atTimestampThe timestamp of when the payment device was created.
updated_atTimestampThe 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.

CodeMessageCause
---

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"
}