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

# Update Payment Method



## OpenAPI

````yaml /api-reference/swagger.json patch /api/PaymentMethod/{paymentMethodId}
openapi: 3.0.4
info:
  title: Revolv3 OpenApi Spec
  description: Spec for Revolv3
  version: 1.29.2
servers:
  - url: https://api-sandbox.revolv3.com
security: []
paths:
  /api/PaymentMethod/{paymentMethodId}:
    patch:
      tags:
        - PaymentMethod
      summary: Update Payment Method
      parameters:
        - name: paymentMethodId
          in: path
          description: Unique identifier for the customer's payment information.
          required: true
          schema:
            maximum: 1000000000
            minimum: 1
            type: integer
            format: int64
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/UpdatePaymentMethodRequestDTO'
            example:
              billingAddress:
                addressId: null
                addressLine1: 100 Main Street
                addressLine2: null
                city: Santa Ana
                state: CA
                postalCode: '90000'
                phoneNumber: null
                email: null
                country: US
              creditCard:
                expirationDate: '1035'
              billingFirstName: John
              billingLastName: null
              billingFullName: null
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePaymentMethodRequestDTO'
            example:
              billingAddress:
                addressId: null
                addressLine1: 100 Main Street
                addressLine2: null
                city: Santa Ana
                state: CA
                postalCode: '90000'
                phoneNumber: null
                email: null
                country: US
              creditCard:
                expirationDate: '1035'
              billingFirstName: John
              billingLastName: null
              billingFullName: null
          text/json:
            schema:
              $ref: '#/components/schemas/UpdatePaymentMethodRequestDTO'
            example:
              billingAddress:
                addressId: null
                addressLine1: 100 Main Street
                addressLine2: null
                city: Santa Ana
                state: CA
                postalCode: '90000'
                phoneNumber: null
                email: null
                country: US
              creditCard:
                expirationDate: '1035'
              billingFirstName: John
              billingLastName: null
              billingFullName: null
          application/*+json:
            schema:
              $ref: '#/components/schemas/UpdatePaymentMethodRequestDTO'
            example:
              billingAddress:
                addressId: null
                addressLine1: 100 Main Street
                addressLine2: null
                city: Santa Ana
                state: CA
                postalCode: '90000'
                phoneNumber: null
                email: null
                country: US
              creditCard:
                expirationDate: '1035'
              billingFirstName: John
              billingLastName: null
              billingFullName: null
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/PaymentMethodDTO'
              example:
                paymentMethodId: 1
                billingAddressId: 1
                billingAddress:
                  addressId: 1
                  addressLine1: 123 Main
                  addressLine2: null
                  city: Santa Ana
                  state: CA
                  postalCode: '90000'
                  phoneNumber: null
                  email: null
                  country: US
                billingFirstName: John
                billingLastName: Smith
                merchantPaymentMethodRefId: payment-method-ref-id_hgays-213-4rf4
                paymentMethodAchDetails: null
                paymentMethodCreditCardDetails:
                  binNumber: '411111'
                  paymentLast4Digit: '1111'
                  paymentExpirationDate: '1025'
                  accountUpdateMessage: null
                  accountUpdateDateTime: null
                  accountUpdateCode: null
            application/json:
              schema:
                $ref: '#/components/schemas/PaymentMethodDTO'
              example:
                paymentMethodId: 1
                billingAddressId: 1
                billingAddress:
                  addressId: 1
                  addressLine1: 123 Main
                  addressLine2: null
                  city: Santa Ana
                  state: CA
                  postalCode: '90000'
                  phoneNumber: null
                  email: null
                  country: US
                billingFirstName: John
                billingLastName: Smith
                merchantPaymentMethodRefId: payment-method-ref-id_hgays-213-4rf4
                paymentMethodAchDetails: null
                paymentMethodCreditCardDetails:
                  binNumber: '411111'
                  paymentLast4Digit: '1111'
                  paymentExpirationDate: '1025'
                  accountUpdateMessage: null
                  accountUpdateDateTime: null
                  accountUpdateCode: null
            text/json:
              schema:
                $ref: '#/components/schemas/PaymentMethodDTO'
              example:
                paymentMethodId: 1
                billingAddressId: 1
                billingAddress:
                  addressId: 1
                  addressLine1: 123 Main
                  addressLine2: null
                  city: Santa Ana
                  state: CA
                  postalCode: '90000'
                  phoneNumber: null
                  email: null
                  country: US
                billingFirstName: John
                billingLastName: Smith
                merchantPaymentMethodRefId: payment-method-ref-id_hgays-213-4rf4
                paymentMethodAchDetails: null
                paymentMethodCreditCardDetails:
                  binNumber: '411111'
                  paymentLast4Digit: '1111'
                  paymentExpirationDate: '1025'
                  accountUpdateMessage: null
                  accountUpdateDateTime: null
                  accountUpdateCode: null
        '400':
          description: Bad Request
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to perform the request action with provided data.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to perform the request action with provided data.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to perform the request action with provided data.
        '401':
          description: Unauthorized
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Attempted to perform an unauthorized operation.
        '404':
          description: Not Found
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to find an entity with the provided data.
            application/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to find an entity with the provided data.
            text/json:
              schema:
                $ref: '#/components/schemas/StatusMessageResponse'
              example:
                message: Unable to find an entity with the provided data.
      security:
        - XRevolv3Token: []
components:
  schemas:
    UpdatePaymentMethodRequestDTO:
      type: object
      properties:
        billingFirstName:
          maxLength: 100
          minLength: 0
          type: string
          description: "**Conditional**: either both BillingFirstName and BillingLastName or BillingFullName must be provided.\r\n\r\nThe customers’s first name associated with a payment method that is used for billing purposes."
        billingLastName:
          maxLength: 100
          minLength: 0
          type: string
          description: "**Conditional**: either both BillingFirstName and BillingLastName or BillingFullName must be provided.\r\n\r\nThe customers’s last name associated with a payment method that is used for billing purposes."
        billingFullName:
          maxLength: 200
          minLength: 0
          type: string
          description: "**Conditional**: either BillingFullName or both BillingFirstName and BillingLastName must be provided.\r\n\r\nThe customers’s full name associated with a payment method that is used for billing purposes. "
        billingAddress:
          $ref: '#/components/schemas/CreateAddressRequestDTO'
        creditCard:
          $ref: '#/components/schemas/UpdateCreditCardDTO'
      additionalProperties: false
    PaymentMethodDTO:
      type: object
      properties:
        paymentMethodId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier for the payment method information.
          format: int64
        billingAddressId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the address.
          format: int64
        billingAddress:
          $ref: '#/components/schemas/AddressDTO'
        billingFirstName:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        billingLastName:
          maxLength: 100
          minLength: 0
          type: string
          nullable: true
        merchantPaymentMethodRefId:
          maxLength: 100
          minLength: 0
          type: string
          description: Merchant's unique identifier for the payment method.
        paymentMethodAchDetails:
          allOf:
            - $ref: '#/components/schemas/AchViewDTO'
          description: ACH account information.
        paymentMethodCreditCardDetails:
          allOf:
            - $ref: '#/components/schemas/CreditCardViewDTO'
          description: The details of credit card payment method.
      additionalProperties: false
    StatusMessageResponse:
      type: object
      properties:
        message:
          type: string
          nullable: true
        errors:
          type: array
          items:
            type: string
          nullable: true
        fluentValidatorErrors:
          type: array
          items:
            $ref: '#/components/schemas/ValidationFailure'
          nullable: true
      additionalProperties: false
    CreateAddressRequestDTO:
      type: object
      properties:
        addressLine1:
          maxLength: 3000
          minLength: 0
          type: string
          description: Address.
          nullable: true
        addressLine2:
          maxLength: 3000
          minLength: 0
          type: string
          description: Supplemental information for the address.
        city:
          maxLength: 3000
          minLength: 0
          type: string
          description: City.
          nullable: true
        state:
          maxLength: 2
          minLength: 0
          type: string
          description: State.
          nullable: true
        postalCode:
          maxLength: 20
          minLength: 2
          type: string
          description: Postal Code.
          nullable: true
        phoneNumber:
          maxLength: 20
          minLength: 7
          pattern: ^(?=.*\d)\+?[0-9\s\-\(\)\.]{7,20}$
          type: string
          description: >-
            The phone number associated with a payment method that is used for
            billing purposes.
        email:
          maxLength: 3000
          minLength: 0
          type: string
          description: The email associated with a billing address.
          format: email
        country:
          maxLength: 2
          minLength: 0
          type: string
          description: >-
            The input must be a valid Alpha2 code, Alpha3 code, UN code, or full
            country name.
        addressId:
          maximum: 1000000000
          minimum: 1
          type: integer
          description: The unique identifier of the address.
          format: int64
      additionalProperties: false
    UpdateCreditCardDTO:
      type: object
      properties:
        expirationDate:
          maxLength: 7
          minLength: 0
          type: string
          description: "**Conditional**: the expiration date is required if the credit card payment method type is supplied in the request.\r\n\r\nThe card expiration date."
          format: MMYY, MM/YY, MMYYYY, or MM/YYYY
      additionalProperties: false
    AddressDTO:
      type: object
      properties:
        addressId:
          type: integer
          description: The unique identifier of the address.
          format: int64
        addressLine1:
          maxLength: 40
          minLength: 2
          type: string
          description: Address.
          nullable: true
        addressLine2:
          maxLength: 40
          minLength: 0
          type: string
          description: Supplemental information for the address.
        city:
          maxLength: 25
          minLength: 2
          type: string
          description: City.
          nullable: true
        state:
          maxLength: 2
          minLength: 2
          type: string
          description: Two-letter state abbreviation.
          nullable: true
        postalCode:
          maxLength: 20
          minLength: 2
          type: string
          description: Postal Code.
          nullable: true
        phoneNumber:
          maxLength: 20
          minLength: 0
          type: string
          description: >-
            The phone number associated with a payment method that is used for
            billing purposes.
        email:
          maxLength: 100
          minLength: 0
          type: string
          description: The email associated with a billing address.
          format: email
        country:
          maxLength: 2
          minLength: 2
          type: string
          description: Country.
          nullable: true
      additionalProperties: false
    AchViewDTO:
      type: object
      properties:
        accountNumberLast4Digits:
          maxLength: 4
          minLength: 4
          pattern: ^\d{4}$
          type: string
          description: Last 4 digits of the bank account.
        accountNumberLength:
          maximum: 17
          minimum: 4
          type: integer
          description: Bank account number length.
          format: int32
        accountType:
          maxLength: 8
          minLength: 0
          pattern: ^(Checking|Savings)$
          type: string
          description: "**Conditional**: the account type is required if the ACH payment method type is supplied in the request.\r\n\r\nBank account type. Allowed values: Checking, Savings. Case-insensitive."
      additionalProperties: false
      nullable: true
    CreditCardViewDTO:
      type: object
      properties:
        binNumber:
          maxLength: 6
          minLength: 0
          pattern: ^\d{1,6}$
          type: string
          description: First 6 digits (BIN) of the card number.
        paymentLast4Digit:
          maxLength: 4
          minLength: 4
          pattern: ^\d{4}$
          type: string
          description: Payment card last 4 digits.
        paymentExpirationDate:
          maxLength: 4
          minLength: 0
          type: string
          description: The card expiration date.
          format: MMYY
          nullable: true
        accountUpdateMessage:
          maxLength: 500
          minLength: 0
          type: string
          description: Account updater message, if available.
        accountUpdateDateTime:
          maxLength: 20
          minLength: 0
          type: string
          description: UTC date-time of the last account updater event.
          format: YYYY-MM-DDThh:mm:ss
          nullable: true
        accountUpdateCode:
          maxLength: 50
          minLength: 0
          type: string
          description: Processor response code of the last account updater event.
      additionalProperties: false
      nullable: true
    ValidationFailure:
      type: object
      properties:
        propertyName:
          type: string
          nullable: true
        errorMessage:
          type: string
          nullable: true
        attemptedValue:
          nullable: true
        customState:
          nullable: true
        severity:
          $ref: '#/components/schemas/Severity'
        errorCode:
          type: string
          nullable: true
        formattedMessagePlaceholderValues:
          type: object
          additionalProperties:
            nullable: true
          nullable: true
      additionalProperties: false
    Severity:
      enum:
        - Error
        - Warning
        - Info
      type: string
  securitySchemes:
    XRevolv3Token:
      type: apiKey
      in: header
      name: x-revolv3-token

````