---
title: "Update Account"
method: PUT
path: "/{Version}/clients/{ClientID}/accounts/{AccountID}"
tags: ["Account"]
---

# Update Account

`PUT /{Version}/clients/{ClientID}/accounts/{AccountID}`

Updates the Account. Use `v1` to replace all fields.

## Path parameters

- `Version` string, required
- `ClientID` string, required
- `AccountID` string, required

## Query parameters

- `RejectDuplicateCard` string
- `OKToAddDuplicateCard` string

## Request body

- UpdateAccount
  - `card` object — Payment Card Data. Choose ***exactly ONE*** of the following: - <<glossary:Payment Card Not Encrypted>> - <<glossary:Payment Card Encrypted>> - `token` - `device` *object* If <<glossary:Version>> is `v1`: either `card` object or `bank` object is required* If `Version` is `v2`: `card` object or `bank` object is optional.
    - `accountNumber` string — <<glossary:Payment Card Not Encrypted>> A Primary Account Number (PAN/Card Number) Compatible *only* with `expirationDate` and nothing else.
    - `expirationDate` string — <<glossary:Payment Card Not Encrypted>> Expiration Date in YYYYMM Compatible *only* with `accountNumber` and nothing else.
    - `keyID` string — Required field of ***<<glossary:Payment Card Encrypted>>*** 22 character KeyID. Ensure the RSA key you're using to encrypt the card data is consistent with this keyID Compatible with `data` and nothing else. Use is allowed if <<glossary:Version>> is `v1` (not `v2`)
    - `data` string — Required field of ***<<glossary:Payment Card Encrypted>>*** [RSA-encrypted card data](https://developers.tabapay.com/reference/pci-helper-rsa#/what-data-do-i-encrypt) using RSA key with KeyID `keyID`. Compatible with `keyID` and nothing else Use is allowed if <<glossary:Version>> is `v1` (not `v2`)
    - `token` string, byte — Card Token (from the [PCI-compliant iFrame](https://developers.tabapay.com/reference/browser-sdk#/basic-custom-iframe)) Incompatible with any other `card` field. Use is allowed if <<glossary:Version>> is `v1` (not `v2`)
    - `device` object — Card Data from either a [Secure Device](https://developers.tabapay.com/docs/card-present-transactions#/) or from a [GooglePay PaymentMethodToken](https://developers.tabapay.com/reference/googlepay#/) Incompatible with any other `card` object(s) or field(s) Use is allowed if <<glossary:Version>> is `v1` (not `v2`)
      - `id` string, required — Either: - TabaPay-assigned device ID - [GooglePay|gatewayMerchantId](https://developers.tabapay.com/reference/googlepay#/)
      - `blob` string, required — URL-safe, Base64 encoded card data
  - `owner` Owner, required — Owner Details
    - `name` Name, required — Name Use Either: (1) `company` **OR** (2) `first`, `middle`, `last`, and `suffix` If choosing (2), `first` and `last` are required, `middle` and `suffix` are optional*
      - `company` string — Company Name Incompatible with any other `name` field.
      - `first` string — First Name Incompatible with `company` name
      - `middle` string — Middle Name Incompatible with `company` name
      - `last` string — Last Name Incompatible with `company` name
      - `suffix` string — Suffix Incompatible with `company` name
    - `address` object — Address. *All fields optional.* However, if you're planning on using AVS in [QueryCard](https://developers.tabapay.com/reference/cardquery#/), provide an accurate `zipcode` at the minimum. And, if you can, provide an accurate `line1` value as well.
      - `line1` string — Address Line 1
      - `line2` string — Address Line 2
      - `city` string — City
      - `state` string — State Code [State Code](https://developers.tabapay.com/reference/us-state-codes#/) must be a valid 2-character code if `country` is [840](https://developers.tabapay.com/reference/country-codes#/) or [Canadian 2-char code](https://developers.tabapay.com/reference/canadian-province-codes#/) if [124](https://developers.tabapay.com/reference/country-codes#/).
      - `zipcode` string — Zip Code If `country` is `840`, `zipcode` must be 5 or 9 digits. If country is `124`, `zipcode` must be in the *A1A 1A1* format. Zip codes from other countries will not be checked.
      - `country` string — [Country Code](https://developers.tabapay.com/reference/country-codes#/) *Optional. Default is `840`*
    - `phone` object — Phone *object*
      - `countryCode` string — 1-3 digit Country Calling Code *Optional.* Default is `1`.
      - `number` string, required — Phone Number. For phone numbers with `countryCode` equal to `1` (or blank), provide a 10-digit phone number. For all `countryCodes`, other than `1`, a 4-14 digit phone number is accepted.

## Response `200`

Account is updated.

- ApiResponseSCECEM
  - `SC` integer — [HTTP Status Code](https://developers.tabapay.com/reference/http-status-codes#/)
  - `EC` string — Internal Error Code. This is used to help TabaPay team members trace an error.
  - `EM` string — Short description of the error if an error occurred.

## Other responses

- `207` — Account updated, but update duplicate card check failed.
- `409` — Duplicate card check matched.

---

[API](https://skmtc.dev/tabapay/apis/tabapay-apis.md) · [All operations](https://skmtc.dev/tabapay/apis/tabapay-apis/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/tabapay/tabapay-apis/revisions/154fa3d585cf/schema)
