> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chargeapi.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a Payment Method

Updates a payment method. Parameters you omit keep their current values.

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://api.chargeapi.co/v1/payment_methods/pm_oz41yJNcEzfFA9allAbxZZIuWPSwkCdj \
    -H "Authorization: Bearer ch_sk_test_..." \
    --json '{
    "billing_details": {
      "email": "example@example.com"
    }
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
      "id": "pm_oz41yJNcEzfFA9allAbxZZIuWPSwkCdj",
      "object": "payment_method",
      "bank_account": null,
      "billing_details": {
          "address": {
              "city": "Paris",
              "country": "FR",
              "line1": "10 Rue de la Paix",
              "line2": "Batiment A",
              "postal_code": "75002",
              "state": "Ile-de-France"
          },
          "email": "example@example.com",
          "name": "Example",
          "phone": "+33189000023"
      },
      "card": {
          "brand": "visa",
          "exp_month": 12,
          "exp_year": 2030,
          "fingerprint": "fp_card_example",
          "last4": "4242"
      },
      "created": "2026-04-01T00:09:45.475Z",
      "driver": null,
      "fleet": "flt_1QvKE3YNm47BQlStD0FN0h4Tq0gTbsso",
      "type": "card",
      "wallet": null
  }
  ```
</ResponseExample>

## Parameters

<ParamField body="billing_details" type="object">
  Billing details fields for payment method requests.

  <Expandable title="properties">
    <ParamField body="address" type="object">
      Billing address fields for payment method requests.

      <Expandable title="properties">
        <ParamField body="city" type="string | null">
          City, town, or district.
        </ParamField>

        <ParamField body="country" type="string | null">
          ISO 3166-1 alpha-2 country code.
        </ParamField>

        <ParamField body="line1" type="string | null">
          First line of the address.
        </ParamField>

        <ParamField body="line2" type="string | null">
          Second line of the address.
        </ParamField>

        <ParamField body="postal_code" type="string | null">
          ZIP or postal code.
        </ParamField>

        <ParamField body="state" type="string | null">
          State, province, or administrative region.
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField body="email" type="string | null">
      Email address.
    </ParamField>

    <ParamField body="name" type="string | null">
      Full name.
    </ParamField>

    <ParamField body="phone" type="string | null">
      Billing phone number (including extension).
    </ParamField>
  </Expandable>
</ParamField>

## More parameters

<ParamField body="bank_account" type="object | null">
  Fields for updating bank account details, if type is bank\_account.

  <Expandable title="properties">
    <ParamField body="bank_name" type="string">
      Updated bank name.
    </ParamField>

    <ParamField body="currency" type="string">
      Updated three-letter ISO currency code, in lowercase.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="card" type="object | null">
  Fields for updating card details, if type is card.

  <Expandable title="properties">
    <ParamField body="exp_month" type="integer">
      New expiration month.
    </ParamField>

    <ParamField body="exp_year" type="integer">
      New expiration year.
    </ParamField>
  </Expandable>
</ParamField>

## Returns

Returns the updated payment method.
