# Returns the payroll payment with the given identifier.

`GET /accounting/payroll-payments/{id}`

Group: Accounting › Payroll Payments · Operation ID: `getPayrollPayment`

A payroll payment is an outbound payment that settles a payroll run, each application tied to one payroll detail and one payee. It shares its underlying record with accounting/outbound-payments, so the same id is readable there too, but this endpoint returns only payments that settle payroll and includes their applications, which GET accounting/outbound-payments/:id does not.

[Open in the interactive reference](https://docs.api.lensing.ai/?op=getPayrollPayment)

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `Api-Version` | header | `"v1"` | yes | The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version `v1`. |
| `id` | path | string | yes | The unique identifier for the payroll payment to return. |

## Response

`200` Success

Under `data` (getPayrollPaymentOutput):

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | yes | The unique identifier for the payroll payment. The same record is also readable as an outbound payment under this id. |
| `payrollPaymentNumber` | string | no | The payment number. Absent until a number has been assigned. |
| `paymentDate` | string (date) | yes | The date the payment is made. Format YYYY-MM-DD. |
| `paymentCurrency` | string | yes | The currency the payment is made in. Format ISO 4217, for example 'USD'. Governs totalPaid and every application amount. |
| `paymentType` | string | yes | How the payment was made: the instrument, not the origin. Values include 'manual' and 'bank'. |
| `status` | string | yes | The status of the payment. Values include 'successful', 'rejected', 'cancelled', 'processing', 'partiallySuccessful', 'unknown', 'unsigned', 'manuallyRecorded', 'scheduled' and 'voided'. |
| `approvalStatus` | string | no | The approval status of the payment. |
| `description` | string | no | A description recorded on the payment. |
| `totalPaid` | string (decimal) | no | The total amount paid, in paymentCurrency. |
| `externalId` | string | no | The identifier this payment has in the upstream system that produced it. It is not unique. |
| `paymentAccountId` | string | no | The GL account the payment is booked against. See id on GET accounting/accounts/:id. |
| `paymentAccountName` | string | no | The name of the GL account the payment is booked against. |
| `entityId` | string | no | The legal entity that made the payment. See id on GET base/entities. |
| `entityName` | string | no | The name of the legal entity that made the payment. |
| `lastModifiedDate` | string (date-time) | yes | The date and time the payroll payment last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. |
| `origin` | string | no | The source system this record came from, as free-form text. Absent when none was supplied. |
| `applications` | array of object | no | The payroll payment applications, each tying part of this payment to one payroll detail and one payee. An empty array when the payment has none. |
| `applications[].id` | string | yes | The unique identifier for the payroll payment application. |
| `applications[].applicationNumber` | string | no | The application number. |
| `applications[].description` | string | no | A description of the application. |
| `applications[].amountPaid` | string (decimal) | no | The amount paid by this application, as a decimal in currency. |
| `applications[].currency` | string | no | The currency governing amountPaid, the payroll run's currency. Format ISO 4217, for example 'USD'. |
| `applications[].paymentStatus` | string | no | The status of the paying payment item, mirrored onto the application. It uses the same values as the payment's status. |
| `applications[].payrollDetailId` | string | no | The payroll detail this application settles. See id on GET accounting/payroll-details/:id. |
| `applications[].accountId` | string | no | The GL account this application is booked against. See id on GET accounting/accounts/:id. |
| `applications[].accountName` | string | no | The name of the GL account this application is booked against. |
| `applications[].accountNumber` | string | no | The number of the GL account this application is booked against. |
| `applications[].payeeCode` | string | no | The payee, as a payroll-payee code from your tenant's configuration, for example 'employee' or 'taxOffice'. |
| `applications[].payeeLabel` | string | no | The display label for the payee. |
| `applications[].vendorId` | string | no | The vendor being paid, when the payee is a vendor. See id on GET accounting/vendors/:id. |
| `applications[].vendorName` | string | no | The name of the vendor being paid. |
| `applications[].employeeId` | string | no | The employee being paid, when the payee is an employee. There is no endpoint for it. |
| `applications[].employeeName` | string | no | The name of the employee being paid. |

## Errors

| Code | Status |
| --- | --- |
| `NOT_FOUND` | 400 |

## Statuses

- `400` — Invalid request or business failure. Codes: NOT_FOUND
- `401` — Missing or invalid access token
- `403` — Not authorized
- `404` — Not found
- `429` — Too many requests
- `500` — Internal server error
