# Update Device You can either update the configuration of a device or take an action on the device Terminals must be online and connected to the network in order for the request to be successful. You can initiate an action on a . Actions supported vary by gateway. FINIX_V1 and DUMMY_V1 terminals support the following actions: - - Activate the device to enable processing - - Deactivate the device to disable processing - - Cancel any active transaction and return to the idle screen DATACAP_V1 terminals support the following actions: - - Activate the device to enable processing - - Deactivate the device to disable processing TRIPOS_CLOUD_V1 terminals support following actions: - - Activate the device to enable processing - - Deactivate the device to disable processing - - Update the idle message content on the terminal - - Remotely reboot the terminal You can also use a PUT request to update the , , , and of the . Functionality varies by gateway/device. Endpoint: PUT /devices/{device_id} Version: 2022-02-01 Security: BasicAuth ## Path parameters: - `device_id` (string, required) ID of the . ## Header parameters: - `Finix-Version` (string) Specify the API version of your request. For more details, see Versioning. Example: "2022-02-01" ## Response 200 fields (application/json): - `id` (string) The ID of the activated . - `created_at` (string) Timestamp of when the object was created. - `updated_at` (string) Timestamp of when the object was last updated. - `android_version` (string) The Android version installed on the . - `configuration` (object) Information used to configure how the handles transaction flows. - `configuration.allow_debit` (boolean) Enable processing of transactions through Debit rails. If set to , Debit card transactions will instead be processed through Credit rails. - `configuration.allow_standalone_authorizations` (boolean) Sets whether the device allows initialization authorizations on its interface. and only. - `configuration.allow_standalone_refunds` (boolean) Sets whether the device allows initialization refunds on its interface. and only. - `configuration.allow_standalone_sales` (boolean) Sets whether the device allows initialization sales on its interface. - `configuration.bypass_device_on_capture` (boolean,null) Sets whether or not the device will be used to capture transactions. This field should be set to unless there are special circumstances. - `configuration.check_for_duplicate_transactions` (boolean) Sets if the device will check for duplicate transactions. only. - `configuration.display_tip_on_receipt` (boolean) Sets whether the device will display the blank tip amount on the receipt for authorizations to be later captured. and only. - `configuration.idle_image_file_id` (string,null) The ID of the file to be displayed on the device when it is idle. Passing a value of resets the device's idle image to the default. - `configuration.idle_message` (string,null) Sets the idle message text on the terminal. This is what will be presented on the welcome screen. and only. - `configuration.prompt_amount_confirmation` (boolean) Sets if the cardholder needs to confirm the amount they'll pay. only. - `configuration.prompt_for_signature` (string) Determines when the terminal prompts for an e-signature. - : The terminal will always request an e-signature. - : The terminal will never request an e-signature. - : The terminal follows card network recommendations on whether to prompt for a signature. - : The terminal requests an e-signature only when the transaction amount is greater than or equal to . Enum: "ALWAYS", "NEVER", "ON_NETWORK_RECOMMENDATION", "ON_THRESHOLD_AMOUNT" - `configuration.prompt_manual_entry` (boolean) Sets if the device allows for manual entry as a card input method. and only. On if this is set to true manual entry will be the default entry option. - `configuration.prompt_receipt_confirmation` (boolean) Sets whether or not the device presents a screen prompting the buyer to print receipt at the end of the transaction flow. and only. - `configuration.prompt_tip_on_screen` (boolean) Sets whether the device will display the suggested tipping screen. and only. - `configuration.signature_threshold_amount` (any) The transaction amount at which the terminal prompts for an e-signature. - `configuration.surcharge_basis_points` (integer) Represents the transaction amount that a charges the buyer when creating a or an . The value cannot exceed (i.e., 3%). For devices on Standalone Mode, the Finix Payment Application on the terminal will calculate and send a or an request with the surcharge added. Customers integrated directly into Finix API must contact Support to incorporate surcharging appropriately into their integration. - `configuration.tipping_details` (object) An object that sets the configurations for the tipping page if it appears. and only. - `configuration.tipping_details.allow_custom_tip` (boolean) Allows the buyer to set a custom tip. and only. - `configuration.tipping_details.fixed_options` (array) Sets the fixed amount that will be displayed on the terminal. Defaults to . Must be three integer values that represent cent values. and only. - `configuration.tipping_details.percent_options` (array) Sets the percentages that will be displayed on the terminal. Defaults to . Must be three integer values that represent percentages. and only. - `configuration.tipping_details.percent_tipping_threshold` (integer) The inclusive value at which the terminal will present a percent based prompt instead of a fixed value prompt. Defaults to . and only. - `description` (string,null) Additional information about device (e.g. self serving terminal). - `enabled` (boolean) Whether the is enabled. indicates disabled. - `firmware_version` (string) The current version of the device's firmware. - `merchant` (string) ID of the resource. Example: "MUxxxxxxxxxxxxxxxxxx" - `model` (string) The model type of the . Enum: "PAX_A800", "PAX_A920PRO", "D135" - `name` (string) The display name of the used for filtering purposes. - `payment_app_version` (string) The device’s current app version. - `prompt_signature` (string) When to prompt for a signature. Enum: "ALWAYS" - `serial_number` (string,null) The serial_number is a unique identifier for the , located on the back and typically composed of ~16 digits. Ensure the serial number is set before activating the , though it can also be added later using a PUT request. - `tags` (object,null) Include up to 50 pairs to annotate requests with custom metadata. - Maximum character length for individual is 40. - Maximum character length for individual is 500. (For example, , , ) - `_links` (object) For your convenience, every response includes several URLs which link to resources relevant to the request. You can use these to make your follow-up requests and quickly access relevant IDs. - `_links.authorizations` (object) - `_links.authorizations.href` (string) - `_links.merchant` (object) Link to the resource that was used in the request. - `_links.self` (object) Link to the resource that was used in the request. - `_links.transfers` (object) ## Response 401 fields (application/json): - `total` (integer) - `_embedded` (object) - `_embedded.errors` (array) - `_embedded.errors.code` (string) Enum: "UNKNOWN" - `_embedded.errors.logref` (object) - `_embedded.errors.message` (string) - `_embedded.errors._links` (object) - `_embedded.errors._links.self` (object) - `_embedded.errors._links.self.href` (string) - `_embedded.errors._links.source` (object) ## Response 403 fields (application/json): - `total` (integer) - `_embedded` (object) - `_embedded.errors` (array) - `_embedded.errors.code` (string) Enum: "FORBIDDEN" - `_embedded.errors.logref` (object) - `_embedded.errors.message` (string) - `_embedded.errors._links` (object) - `_embedded.errors._links.source` (object) - `_embedded.errors._links.source.href` (string) ## Response 404 fields (application/json): - `total` (integer) - `_embedded` (object) - `_embedded.errors` (array) - `_embedded.errors.code` (string) Enum: "NOT_FOUND" - `_embedded.errors.logref` (object) - `_embedded.errors.message` (string) - `_embedded.errors._links` (object) - `_embedded.errors._links.source` (object) - `_embedded.errors._links.source.href` (string) ## Response 406 fields (application/json): - `total` (integer) - `_embedded` (object) - `_embedded.errors` (array) - `_embedded.errors.code` (string) Enum: "NOT_FOUND" - `_embedded.errors.logref` (object) - `_embedded.errors.message` (string) - `_embedded.errors._links` (object) - `_embedded.errors._links.source` (object) - `_embedded.errors._links.source.href` (string) ## Response 422 fields (application/json): - `total` (integer) - `_embedded` (object) - `_embedded.errors` (array) - `_embedded.errors.logref` (object) - `_embedded.errors.message` (string) - `_embedded.errors.code` (string) Enum: "UNPROCESSABLE_ENTITY" - `_embedded.errors._links` (object) - `_embedded.errors._links.self` (object) - `_embedded.errors._links.self.href` (string)