---
title: "Update payment method for an employee"
method: PUT
path: "/v1/employees/{employee_id}/payment_method"
tags: ["Employee Payment Method"]
---

# Update payment method for an employee

`PUT /v1/employees/{employee_id}/payment_method`

Updates the payment method for an employee. Can set to Check or Direct Deposit with split configuration.

scope: `employee_payment_methods:write`

## Path parameters

- `employee_id` string, required

## Headers

- `X-Gusto-API-Version` '2026-06-15'

## Request body

- object
  - `version` string, required — The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field.
  - `type` 'Check' | 'Direct Deposit', required — The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required.
  - `split_by` 'Percentage' | 'Amount', nullable — How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder.
  - `splits` object[], nullable — Array of payment splits. Required when type is Direct Deposit.
    - `uuid` string — The bank account UUID.
    - `name` string — The bank account name.
    - `priority` integer — Order of priority for each payment split; priority 1 is the first account paid. Must be unique and sequential.
    - `split_amount` number, nullable — If split_by is Amount, value is in cents (e.g., 500 for $5.00) and exactly one account must have null to capture the remainder. If split_by is Percentage, value is the percentage (e.g., 60 for 60%).

## Response `200`

Successful

- EmployeePaymentMethod
  - `version` string — The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field.
  - `type` 'Direct Deposit' | 'Check' — The payment method type. If type is Check, then `split_by` and `splits` do not need to be populated. If type is Direct Deposit, `split_by` and `splits` are required.
  - `split_by` 'Amount' | 'Percentage', nullable — Describes how the payment will be split. If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, then the last split `amount` must be `null` to capture the remainder.
  - `splits` PaymentMethodBankAccount[], nullable
    - `uuid` string, required — The bank account ID
    - `name` string — The bank account name
    - `hidden_account_number` string — Masked bank account number
    - `priority` integer — The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential.
    - `split_amount` integer, nullable — If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%).

## Other responses

- `404` — Not Found The requested resource does not exist. Make sure the provided UUID is valid.
- `409` — Conflict
- `422` — Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.

---

[API](https://skmtc.net/gusto/apis/gusto-api.md) · [All operations](https://skmtc.net/gusto/apis/gusto-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gusto/gusto-api/revisions/826dfa57fb3b/schema)
