---
title: "Edit account"
method: POST
path: "/pty/account/v1/pws_account_edit"
tags: ["Ledger API - Accounts"]
---

# Edit account

`POST /pty/account/v1/pws_account_edit`

## Request

- Base URL: `https://api.uat.paymentology.com`
- URL: `https://api.uat.paymentology.com/pty/account/v1/pws_account_edit`
- Auth: HTTP bearer

<ul>
<li class="docBullet">Ledger API version of the PWS <a href="https://developer.paymentology.com/bankinglive/reference/pws_account_edit">Edit Account</a> call. Request and response use the same format, served by the Ledger API.</li>
<li class="docBullet">Editable fields: account_name, ac_desc, ac_ext_ref, branch_name, guarantee_amount, guarantee_id and program_code. Account currencies and the parent account cannot be changed.</li>
<li class="docBullet">The account must be linked to a program; otherwise the request is rejected.</li>
</ul>

## Request body

- LedgerEditAccountRequest
  - `ac_id` integer, required: The unique Account ID used for updating account details
  - `api_call_unique_identifier` string, required: Unique number that must be passed at each API request. Identifier to make each API request unique
  - `client_id` integer, required: Unique identifier for the client which Paymentology will provide at outset
  - `user_id` string: User Id of the Customer who triggered the API request.
  - `remarks` string: Remarks for API request
  - `account_name` string: Account holder name
  - `ac_desc` string: Description for the account holder.
  - `ac_ext_ref` string: Account external reference.
  - `guarantee_amount` number, double: Guarantee Amount (credit related editable field)
  - `guarantee_id` integer: Guarantee Type Id (credit related editable field)
  - `branch_name` string: Branch name
  - `program_code` string: Program code for the account. When provided, program_id is ignored.
  - `program_id` integer: Deprecated. Use program_code instead. Ignored when program_code is provided. Program ID for the account. Must be one of the configured program IDs.

## Response `200`

Request processed. Check `header.error_id`: `0` means success. Any other value is a business error, reported with HTTP 200 and an empty `body`. Common codes: 992 (invalid account id), 993 (invalid card token), 995 (validation failed), 1043 (account does not belong to the client), 1055 (invalid program_code), 1531 (invalid customer id).

- LedgerEditAccountResponse
  - `header` LedgerApiHeader, required
    - `error_id` integer, required
    - `error_desc` string, required
  - `body` object, required: Empty body for successful account edit

## Other responses

- `400`: Request validation failed (missing or invalid fields, unknown fields, malformed JSON, or `client_id` not matching the access token). `header.error_id` is 400 and `header.error_desc` describes the failure.
- `401`: Missing or invalid access token. Empty body.
- `403`: Access token rejected by the API gateway (for example, expired).
- `413`: Request body too large. `header.error_id` is 413.
- `500`: Unexpected error. `header.error_id` is 900.

---

[API](https://skmtc.dev/paymentology/apis/ledger-api.md) - [All operations](https://skmtc.dev/paymentology/apis/ledger-api/llms.txt) - [OpenAPI document](https://skmtc.dev/paymentology/apis/ledger-api/revisions/a5700c501bee?raw)
