# Update Account Information in Other Mastercard Systems
source: https://developer.mastercard.com/payment-account-management/documentation/onboarding/update-account-integration/index.md

Once you move your project to production, you can use the PAM API to update account details in ABU, MDES, and PAR Vault.

## Overview {#overview}

In this tutorial you will learn how to configure and run the Payment Account Management API. You will also learn how the authentication and encryption modules work for this API client. Ensure you have followed the pre-requisites of this guide before creating your own API from scratch.

The following steps will provide you guidance on the integration for sending the `/updateAccount` request as well as confirming the changes using the `/requestStatus` call.
Diagram updateAccount

## APIs used in this tutorial {#apis-used-in-this-tutorial}

* Payment Account Management API

  * [Update Account](https://developer.mastercard.com/payment-account-management/documentation/api-reference/index.md) endpoint
  * [Request Status](https://developer.mastercard.com/payment-account-management/documentation/api-reference/index.md) endpoint

## What will you learn? {#what-will-you-learn}

* How to create an API Client using Open API Generator
* How to add and enable Authentication and Encryption to the API Client
* How to make an API call to update account information using the `/updateAccount` request, and then confirming the changes using the `/requestStatus` call

## Pre-requisites {#pre-requisites}

To complete this tutorial, you will need:

* Payment Account Management API [specification YAML](https://developer.mastercard.com/payment-account-management/documentation/api-reference/index.md) file.
* Access to the Sandbox environment (<https://sandbox.api.mastercard.com/paa/paymentaccount/static/1/0/>)
* A project created with the Payment Account Management API.
* Your OAuth API signing key certificate (suffixed "p12")
* The Consumer Key identifier, Key Alias and Key Password associated with the above key. You should have downloaded Encryption Keys.

## Procedure {#procedure}

### 1. Generate Mastercard API client {#1-generate-mastercard-api-client}

To generate the API client or to apply this guide to a different API, follow [Generating and Configuring a Mastercard API Client
tutorial](https://developer.mastercard.com/platform/documentation/security-and-authentication/generating-and-configuring-a-mastercard-api-client/).

### 2. Authenticate your client requests {#2-authenticate-your-client-requests}

To install the appropriate authentication libraries for your chosen language, search within our [OAuth](https://github.com/Mastercard?&q=oauth1) GitHub repos.

To authenticate your client requests, follow the steps in this [tutorial](https://developer.mastercard.com/platform/documentation/security-and-authentication/generating-and-configuring-a-mastercard-api-client/#step-6-create-an-api-client-instance-and-enable-authentication).

### 3. Encrypt your client requests {#3-encrypt-your-client-requests}

To install the appropriate encryption libraries for your chosen language, search within our [Mastercard Client Encryption](https://github.com/Mastercard?&q=client-encryption) GitHub repos.

To add encryption to your requests, follow the steps [here](https://developer.mastercard.com/platform/documentation/security-and-authentication/generating-and-configuring-a-mastercard-api-client/#step-7-enable-encryption).

### 4. Send your request/receive responses {#4-send-your-requestreceive-responses}

You can use example requests included in the documentation for your API.

For example, when calling [**updateAccount**](https://developer.mastercard.com/payment-account-management/documentation/api-reference/index.md#update-account) for the PAM API, you can use the following example:

API Reference: `GET /updateAccount`

Make sure to structure your request as an unencrypted payload (look for the examples given in the request model of the above). To see more examples, refer to the [API Reference](https://developer.mastercard.com/payment-account-management/documentation/api-reference/index.md).
Note: Include your request in a function if you wish. We have chosen to do so to keep the file structure consistent. Double check that the encryption configuration you've set (if any) corresponds with the API configuration.

We are now going to reuse the instance variable created earlier to call the API as follows:
* JavaScript

```JavaScript
NameOfAPICall api = new NameOfAPICall(client);
NameOfRequestSchema request = buildNameOfAPISchema();
NameOfResponseSchema response = api.NameOfAPICall(request);
```

You can find your respective **NameOfAPICall** and **NameOfRequestSchema** inside the appropriate API service file found under directory `/src/api`. The API call name should be a function, and the request schema should be within said function.

Similarly, to confirm the status of the request, you then need to call the `/requestStatus` endpoint and provide the `requestId` parameter that was included in the `/updateAccount` request.


API Reference: `GET /account-maintenance/requestStatus`

<br />

