---
title: "Updates an existing customer"
method: POST
path: "/customers/{id}"
tags: ["Customers"]
---

# Updates an existing customer

`POST /customers/{id}`

Updates an existing customer

## Path parameters

- `id` string, required

## Request body

- UpdateCustomerRequest
  - `email` string, email — The customer email address.
  - `shipping` Shipping
    - `address` Address — Represents basic address information.
      - `line1` string, nullable — The first line of the address.
      - `line2` string — The second line of the address.
      - `city` string, nullable — The city of the address.
      - `postalCode` string, nullable — The postal code of the address.
      - `state` string, nullable — The state, county, province, or region.
      - `country` string, required — A [two-letter Alpha-2 country code](https://www.iban.com/country-codes) as described in the [ISO 3166](https://www.iso.org/iso-3166-country-codes.html) international standard.
    - `name` string, nullable — The recipient’s name.
    - `phone` string, nullable — The recipient’s phone number.
    - `email` string, email, nullable — The recipient’s email address.
    - `organization` string, nullable — The recipient’s organization.
    - `additionalAddressInfo` AdditionalAddressInfo — Captures any information that's not included in the basic address.
      - `neighborhood` string, nullable — The neighborhood of the address.
      - `division` string, nullable — A division within an organization.
      - `phoneticName` string, nullable — The phonetic spelling of a name.
  - `defaultSourceId` string — The identifier of the default source attached to this customer.
  - `taxCertificate` TaxCertificate
    - `companyName` string, required — The name of the company that holds the certificate.
    - `taxAuthority` string, required — The issuing state.
    - `startDate` string, date-time, required — Tax certificate start date.
    - `endDate` string, date-time, required — Tax certificate end date.
    - `fileId` string, required — The identifier of the file that contains the tax certificate.
  - `requestToBeForgotten` boolean — If <code>true</code>, indicates this customer has submitted a request to be forgotten.
  - `type` 'business' | 'individual' — The type of customer.
  - `metadata` Metadata — Key-value pairs used to store additional data. Value can be string, boolean or integer types.
  - `locale` string — A locale designator that combines the two-letter ISO 639-1 language code with the ISO 3166-1 alpha-2 country code.
  - `enabled` boolean — Usually used to disable the customer. The default is <code>true</code>. If <code>false</code>, attempts to create orders for the customer will fail.

## Response `200`

200 OK

- Customer
  - `id` string — The unique identifier for the customer.
  - `createdTime` string, date-time — The time at which the customer was created.
  - `email` string, email — The customer email address.
  - `shipping` Shipping
    - `address` Address — Represents basic address information.
      - `line1` string, nullable — The first line of the address.
      - `line2` string — The second line of the address.
      - `city` string, nullable — The city of the address.
      - `postalCode` string, nullable — The postal code of the address.
      - `state` string, nullable — The state, county, province, or region.
      - `country` string, required — A [two-letter Alpha-2 country code](https://www.iban.com/country-codes) as described in the [ISO 3166](https://www.iso.org/iso-3166-country-codes.html) international standard.
    - `name` string, nullable — The recipient’s name.
    - `phone` string, nullable — The recipient’s phone number.
    - `email` string, email, nullable — The recipient’s email address.
    - `organization` string, nullable — The recipient’s organization.
    - `additionalAddressInfo` AdditionalAddressInfo — Captures any information that's not included in the basic address.
      - `neighborhood` string, nullable — The neighborhood of the address.
      - `division` string, nullable — A division within an organization.
      - `phoneticName` string, nullable — The phonetic spelling of a name.
  - `defaultSourceId` string, uuid — The identifier of the default payment source attached to this customer.
  - `sources` Source[] — An array of Source objects attached to this Customer.
    - `id` string — Unique identifier for the source.
    - `clientSecret` string — Used for client-side retrieval using a public key.
    - `createdTime` string, date-time — Time when the source was created.
    - `type` 'creditCard' | 'directDebit' | 'googlePay' | 'applePay' | 'payPal' | 'payPalBilling' | 'payPalCredit' | 'wireTransfer' | 'customerCredit' | 'alipay' | 'bPay' | 'onlineBanking' | 'codJapan' | 'klarnaCredit' | 'klarnaCreditRecurring' | 'konbini' | 'bankTransfer' | 'msts' | 'bancontact' | 'giftCard' | 'ideal' | 'amazonPay' | 'afterPay' | 'ccAvenue' — The payment type of the source. The payment type will correspond to another element in the source response that contains detailed information specific to the type. For example, a type of creditCard indicates that there is an object in the response named creditCard.
    - `currency` string — Three-letter ISO currency code.
    - `amount` number, double — Amount associated with the source. Once ready, the source will be charged this amount. Required for single_use sources.
    - `reusable` boolean — If true, you can reuse this source, if false, only once.
    - `owner` Owner — The owner of the payment source.
      - `firstName` string
      - `lastName` string
      - `email` string
      - `organization` string, nullable — The organization of the payment source owner.
      - `upstreamId` string
      - `address` Address, required — Represents basic address information.
        - `line1` string, nullable — The first line of the address.
        - `line2` string — The second line of the address.
        - `city` string, nullable — The city of the address.
        - `postalCode` string, nullable — The postal code of the address.
        - `state` string, nullable — The state, county, province, or region.
        - `country` string, required — A [two-letter Alpha-2 country code](https://www.iban.com/country-codes) as described in the [ISO 3166](https://www.iso.org/iso-3166-country-codes.html) international standard.
      - `additionalAddressInfo` AdditionalAddressInfo — Captures any information that's not included in the basic address.
        - `neighborhood` string, nullable — The neighborhood of the address.
        - `division` string, nullable — A division within an organization.
        - `phoneticName` string, nullable — The phonetic spelling of a name.
    - `creditCard` CreditCard
      - `lastFourDigits` string — The last four digits of the card number.
      - `expirationMonth` number — One to two digits representing the expiration month.
      - `expirationYear` number — Four digits representing the expiration year.
      - `brand` string — The card brand.
    - `googlePay` GooglePay
      - `lastFourDigits` string — The last four digits of the card number.
      - `expirationMonth` number — One to two digits representing the expiration month.
      - `expirationYear` number — Four digits representing the expiration year.
      - `brand` string — The card brand.
    - `payPal` PayPal
      - `redirect` Redirect
        - `redirectUrl` string
        - `returnUrl` string
        - `cancelUrl` string
      - `directDebit` PayPalToken
        - `token` string
    - `payPalBilling` PayPal
      - `redirect` Redirect
        - `redirectUrl` string
        - `returnUrl` string
        - `cancelUrl` string
      - `directDebit` PayPalToken
        - `token` string
    - `payPalCredit` PayPal
      - `redirect` Redirect
        - `redirectUrl` string
        - `returnUrl` string
        - `cancelUrl` string
      - `directDebit` PayPalToken
        - `token` string
    - `directDebit` DirectDebit
      - `redirect` DirectDebitRedirect
        - `redirectUrl` string
        - `returnUrl` string
    - `wireTransfer` WireTransfer
      - `accountHolder` string — .
      - `bankName` string — .
      - `city` string — .
      - `country` string — .
      - `referenceId` string — .
      - `accountNumber` string — .
      - `additionalBankInformation` string — .
      - `iban` string — .
      - `swiftCode` string — .
    - `payCo` PaycoResponse
      - `redirectUrl` string
      - `returnUrl` string
      - `payCo` Payco
    - `alipay` Alipay
    - `applePay` ApplePay
    - `bPay` BPay
      - `accountHolder` string
      - `bankName` string
      - `city` string
      - `country` string
      - `referenceId` string
      - `accountNumber` string
      - `billId` string
      - `customerPaymentReference` string
      - `swiftCode` string
    - `onlineBanking` InternetBankPayment
      - `bankCode` string
    - `codJapan` JapanCOD
    - `klarnaCredit` Klarna
      - `shipping` KlarnaShipping
        - `recipient` string
        - `phoneNumber` string
        - `address` KlarnaAddress
          - `line1` string
          - `city` string
          - `state` string
          - `country` string
          - `postalCode` string
        - `email` string
      - `token` string
    - `klarnaCreditRecurring` KlarnaRecurring
      - `returnUrl` string
      - `cancelUrl` string
    - `konbini` Konbini
      - `storeId` string
      - `receiptNumber` string
      - `printableInvoiceUrl` string
      - `storeName` string
      - `localizedStoreName` string
      - `storeLogoUrl` string
    - `bankTransfer` BankTransfer
    - `msts` MSTS
    - `bancontact` Bancontact
    - `ideal` Ideal
    - `giftCard` GiftCard
      - `cardCurrency` string — The currency used by the card.
      - `conversionRate` number — The conversion rate of the currency.
      - `lastFourDigits` integer — The last four digits of the card.
    - `amazonPay` AmazonPay
    - `afterPay` AfterPay
    - `ccAvenue` CCAvenue
    - `flow` 'standard' | 'redirect' | 'receiver' — The authentication flow of the source.
    - `state` 'pending_funds' | 'pending_redirect' | 'requires_action' | 'chargeable' | 'consumed' | 'cancelled' | 'failed' — The status of the source, one of pending_funds, pending_redirect, requires_action, cancelled, chargeable, consumed or failed. You can only use chargeable sources to create a charge.
    - `metadata` Metadata — Key-value pairs used to store additional data. Value can be string, boolean or integer types.
    - `customerId` string — Unique identifier of a customer.
    - `paymentSessionId` string — Tracks the process of collecting a payment.
    - `liveMode` boolean — Has the value true if the object exists in live mode or the value false if the object exists in test mode.
  - `taxIdentifiers` CustomerTaxIdentifier[] — A list of [tax identifiers](https://docs.digitalriver.com/digital-river-api/checkouts-and-orders/customers/setting-tax-related-attributes#tax-identifiers) for this customer.
    - `id` string — The identifier of the tax identifier.
    - `createdTime` string, date-time — The time when the tax identifier was created.
    - `customerId` string, nullable — The identifier of an existing customer.
    - `type` string — Type of tax identifier.
    - `value` string — The tax identifier.
    - `state` 'pending' | 'not_valid' | 'verified' — The verification state.
    - `stateTransitions` TaxIdentifierStateTransitions, nullable — A timestamp of when the state was updated.
      - `pending` string, date-time, nullable
      - `verified` string, date-time, nullable
      - `not_valid` string, date-time, nullable
    - `verifiedName` string, nullable — The registered name of the customer with this tax identifier.
    - `verifiedAddress` string, nullable — The registered address of the customer with this tax identifier.
    - `updatedTime` string, date-time — The time when the tax identifier was updated.
    - `applicability` Applicability[]
      - `country` string — The applicable country for the tax id
      - `entity` string — The applicable entity for the tax id
      - `customerType` 'business' | 'individual' — The applicable customer type for the tax id
  - `taxCertificates` TaxCertificate[] — A list of tax certificates for this customer.
    - `companyName` string, required — The name of the company that holds the certificate.
    - `taxAuthority` string, required — The issuing state.
    - `startDate` string, date-time, required — Tax certificate start date.
    - `endDate` string, date-time, required — Tax certificate end date.
    - `fileId` string, required — The identifier of the file that contains the tax certificate.
  - `requestToBeForgotten` boolean — If true, indicates this customer has requested to be forgotten.
  - `type` 'business' | 'individual' — The type of customer.
  - `metadata` Metadata — Key-value pairs used to store additional data. Value can be string, boolean or integer types.
  - `locale` string — A locale designator that combines the two-letter ISO 639-1 language code with the ISO 3166-1 alpha-2 country code.
  - `enabled` boolean, nullable — Usually used to disable the customer. The default is <code>true</code>. If <code>false</code>, attempts to create orders for the customer will fail.
  - `liveMode` boolean — Has the value <code>true</code> if the object exists in live mode or the value <code>false</code> if the object exists in test mode.
  - `updatedTime` string, date-time — Time at which the customer was last updated.

## Other responses

- `400` — 400 Bad Request
- `401` — 401 Unauthorized
- `403` — 403 Forbidden
- `404` — 401 Not Found
- `405` — 405 Method Not Allowed
- `406` — 406 Not Acceptable
- `408` — 408 Request Timeout
- `409` — 409 Conflict
- `429` — 429 Too Many Requests
- `500` — 500 Internal Server Error
- `502` — 502 Bad Gateway Error
- `503` — 503 Service Unavailable Error
- `504` — 504 Gateway Timeout Error

---

[API](https://skmtc.net/digitalriver/apis/digital-river-api-reference.md) · [All operations](https://skmtc.net/digitalriver/apis/digital-river-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitalriver/digital-river-api-reference/revisions/f21981db32be/schema)
