---
title: "Add Payments to Account"
method: POST
path: "/inbound/v1/payments"
tags: ["Payments"]
---

# Add Payments to Account

`POST /inbound/v1/payments`

## Request

- Base URL: `https://virtserver.swaggerhub.com/felipediazc/integration/0.0.2`
- URL: `https://virtserver.swaggerhub.com/felipediazc/integration/0.0.2/inbound/v1/payments`
- Auth: API key in header `X-API-KEY`
- TypeScript: <https://skmtc.dev/trueaccord/apis/trueaccord-retain-inbound-api/docs/inbound/v1/payments/post.ts> (a function with typed inputs; its response is checked against the schema)

Account payments - payments provide feedback to the Retain system to make Heartbeat smarter. Please provide all of the unique payments for accounts placed, meaning only send one payment record for each payment received. Also, only send payments received during the time the account was placed with Retain. It is important that the Category Code is provided correctly, and that required fields are present. Please note, that for multi account/record payment requests, if one or more of the accounts cannot be found in our system (e.g. an incorrect accountNumber or accountNamespace is provided), while other accounts in the request can be found, the validly identified accounts will have their payments recorded and the response will indicate the accounts that were not properly identified in the request. A maximum of 175 accounts/records can be included in a single request.

## Request body

- PaymentsInformation[]
  - `accountNumber` string, required: Account number of account for which to record the payment.
  - `accountNamespace` string, required: accountNamespace that the account was originally placed with.
  - `paymentDescription` string, required: Free-form description of payment.
  - `paymentAmount` integer, required: Amount of payment made. Amount is in cents.
  - `transactionDate` string, required: Date the payment occurred (mm/dd/yyyy).
  - `categoryCode` 'DEBIT' | 'PAYMENT' | 'OTHER' | 'OTHER CREDIT', required: Type of transaction (Debit, Payment, Other Credit)

## Response `200`

successful operation

- InboundAPIResponsePaymentRetraction200
  - `ClientId` string, required: Client Id
  - `Status` string, required: Response status (SUCCESS)
  - `Message` string, required: Message description
  - `ProcessedRecords` integer, required: Number or records processed
  - `FailedRecords` FailedRecord[], nullable
    - `AccountNumber` string: AccountNumber of the record that has failed
    - `AccountNamespace` string: AccountNamespace of the record that has failed
    - `Message` string: Error Detail

## Other responses

- `400`: Bad request - refer to message and/or FailedRecords for additional information. Requests can fail for a variety of reasons, e.g. invalid JSON formatting, invalid or required fields not being present.
- `500`: Internal server error - an error occurred while processing the request.

## Changes

- **2023-05-16** `8a19069a1bb6`: 2 breaking, 1 warning, 12 info
  - the request property `items/accountNamespace` became required
  - the request property `items/paymentDescription` became required
  - removed the request property `items/referenceNumber`
  - added the new `OTHER CREDIT` enum value to the request property `items/categoryCode`
  - …11 more
- **2022-05-20** `2d776a692387`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/trueaccord/apis/trueaccord-retain-inbound-api/changes/inbound/v1/payments/post.md)

---

[API](https://skmtc.dev/trueaccord/apis/trueaccord-retain-inbound-api.md) - [All operations](https://skmtc.dev/trueaccord/apis/trueaccord-retain-inbound-api/llms.txt) - [OpenAPI document](https://skmtc.dev/trueaccord/apis/trueaccord-retain-inbound-api/revisions/22d6fde0b534?raw)
