---
description: >-
  There are primarily 2 ways to facilitate firmware updates to the Braintree
  card readers.
---

# Managing Firmware Updates

## Why are Firmware Updates Important?

As we release new functionality, improve performance, enhance user experience as well as fix bugs, these changes get pushed to the card readers through firmware updates.  In order for this to work the card reader must be powered on and connected to the internet.  It is always recommended to test these new versions in the sandbox environment before pushing to production.  Click the link below to see our latest App Version Release Notes:

{% content-ref url="../reference/app-version-release-notes" %}
[app-version-release-notes](../reference/app-version-release-notes)
{% endcontent-ref %}

## 1) How to install an update to the Reader using the admin menu on the reader:

{% hint style="info" %}
The passcode referenced below is for Sandbox only.  There is a different passcode for production which you can get from the PayPal support team at **eis-hw-support@paypal.com**&#x20;
{% endhint %}

First, open the device settings screen by going to the PayPal branded screensaver and then **simultaneously press   `2`** + **`8`** to display the settings screen. Before displaying the settings screen the device will prompt for a passcode. Enter `123456` followed by <img src="https://1330402423-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M6GgIF79CNAhEDh9YbJ%2F-MHC1oMiFmEstCOpDssG%2F-MHC3apwhk8GoiR07Wf2%2Fgreen_btn-inline.png?alt=media&#x26;token=4aee92dd-1302-4986-9fa7-cc208bdca843" alt="" data-size="original"> when prompted.

![](https://1330402423-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M6GgIF79CNAhEDh9YbJ%2F-MRXdQHH1cR1k-xKGq9b%2F-MRXdU9Uc11rkwD190-z%2Fgeneric-settings.png?alt=media\&token=706775a5-0c0a-44ed-ae86-35c117ba09d0)

Towards the bottom of the screen, you'll see the currently installed version number. If there's an update available to install, you'll see a button that says `Install Update`. After pressing the install button, the device will proceed to download and install the update. As part of the update the device will restart. Once the device returns to the PayPal branded screensaver it is ready for use.&#x20;

## 2) How to install an update to the Reader using the GraphQL API:

{% tabs %}
{% tab title="GraphQL Mutation" %}
```graphql
mutation RequestFirmwareUpdateFromInStoreReaderInput ($input: RequestFirmwareUpdateFromInStoreReaderInput!) {
    requestFirmwareUpdateFromInStoreReader(input: $input) {
        clientMutationId
        inStoreContext {
            id
            status
            reader {
                id
                name                
                status
                softwareVersion
            }
        }
    }
}
```
{% endtab %}

{% tab title="GraphQL Variables" %}
```graphql
{
	"input": {
		"readerId": "your reader ID here"
    }
}
```
{% endtab %}

{% tab title="Sample API Response" %}
```graphql
{
    "data": {
        "requestFirmwareUpdateFromInStoreReader": {
            "clientMutationId": null,
            "inStoreContext": {
                "id": "aW5zdG9yZWNvbnRleHRfIkjfgiey79622VmNGZkNTQ2NTI5ZTc3NTUyMGEyNWZhNDJlI1ZFUklGT05FLTgwNS0wMTctNDU0I3VzLXdlc3QtMg",
                "status": "COMPLETE",
                "reader": {
                    "id": "aW5zdG9yZX769ccl8jY3B3c2Y0Mmh3OWo1OWhjbiNWRVJJRk9ORS04MDUtMDE3LTQ1NA",
                    "name": "POS Terminal #5",
                    "status": "ONLINE",
                    "softwareVersion": "3.2.1"
                }
            }
        }
    },
    "extensions": {
        "requestId": "1f003122-112d-48f8-a6f5-8f2b58039016"
    }
}
```
{% endtab %}
{% endtabs %}
