---
title: "Update a sent ACH transaction"
method: PATCH
path: "/ach/{transaction_id}"
tags: ["ACH"]
---

# Update a sent ACH transaction

`PATCH /ach/{transaction_id}`

Update a sent ACH transaction (either status or funds availability)

## Path parameters

- `transaction_id` string, uuid, required

## Headers

- `Idempotency-Key` string

## Request body

- OutgoingAchPatch — Update sent ach transaction
  - `funds_availability_time` string, date-time, nullable
  - `status` 'CANCELED', nullable

## Response `200`

Sent ACH transaction representation.

- OutgoingAch — Represents a sent ACH transaction.
  - `account_id` string, uuid — Receiving account uuid. This links to the external account resource (represented by 'receiving_account_id' in the request to send outgoing ACH).
  - `account_name` string — Receiving account name
  - `account_no` string, required — Receiving account number
  - `amount` integer, required — Transaction amount in cents
  - `bank_id` integer, required
  - `company_entry_description` string — Company Entry Description field in ACH batch header. Originator inserts this field's value to provide the Receiver with a description of the entry's purpose. NACHA Operating Rules dictate that Payroll or E-Commerce Purchase ACH transactions require setting this field to PAYROLL or PURCHASE respectively.
  - `company_name` string — Company Name field in ACH batch header.
  - `effective_date` string, date, required — Effective date of the transaction
  - `external_id` string, uuid, required — Transaction ID in the ledger
  - `hold` HoldData
    - `amount` integer, required
    - `availability_time` string, date-time, required
  - `id` string, uuid, required
  - `incoming_ach_id` string, uuid — ID of the linked incoming ACH entry. This is filled only for outgoing ACH entries that are returns and links to the originally received incoming entry.
  - `is_same_day` boolean, required — Was initiated as same-day ACH transaction
  - `memo` string, required
  - `partner_id` integer, required
  - `reference_info` string — Transaction reference info
  - `return_data` ReturnData — Filled if the entry is a return.
    - `code` string, required — Return reason code, i.e. why is the entry being returned.
    - `dishonored_return_code` string — Code of the original dishonored return (without "R"). Filled only if this is a contested return.
    - `dishonored_return_settlement_date` string — Settlement date of the original dishonored return. Filled only if this is a contested return. Formatted as an ordinal date, a single day-of-year number between 1-366.
    - `dishonored_return_trace` string — Trace number of the original dishonored return. Filled only if this is a contested return.
    - `field_errors` string — Required for return reason code R69. Contains the code(s) to indicate the field(s) in which erroneous information in the original return is located.
    - `original_dfi_no` string, required — Receiving financial institution of the original entry.
    - `original_trace` string, required — Trace number of the original entry that is being returned.
    - `return_code` string — Return reason code of the original return (just the number). Filled only if this is a dishonored return.
    - `return_settlement_date` string — Settlement date of the original return. Filled only if this is a dishonored return. Formatted as an ordinal date, a single day-of-year number between 1-366.
    - `return_trace` string — Trace number of the original return. Filled only if this is a dishonored return.
  - `source_account_id` string, uuid — Originating account uuid. This links to the customer account on Synctera platform (represented by 'originating_account_id' in the request to send outgoing ACH).
  - `source_account_name` string — Originating account name
  - `source_account_no` string, required — Originating account number
  - `status` 'CANCELED' | 'COMPLETE' | 'DECLINED' | 'INIT' | 'PENDING', required
  - `trace_no` string, required — Trace number of the transaction

## Other responses

- `401` — Unauthorized
- `403` — Forbidden error
- `404` — Resource not found
- `422` — Unprocessable entity request response
- `500` — Internal server error

---

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