API Deposits

See API Specification

Anyone using the API should also become very familiar with our schema documentation which contains important details about individual database table columns.
See Deposit Database Schema.

Deposits GET (single)

Version Added: 25.4.33

Gets a single deposit.

DepositNum: Required in URL.

Example Request:
GET /deposits/83

Example Response:
{
"DepositNum": 83,
"DateDeposit": "2026-01-28",
"BankAccountInfo": "BAI123456789",
"Amount": 1092.29,
"Memo": "End of Month",
"Batch": "7A",
"DepositAccountNum": 0,
"IsSentToQuickBooksOnline": "false"
}

200 OK
404 NotFound (with explanation)

Deposits GET (multiple)

Version Added: 25.4.33

Gets a list of deposits.

DateDeposit: Optional. String in "yyyy-MM-dd" format. Returns all deposits with a DateDeposit on or after this date.

Example Requests:
GET /deposits?DateDeposit=2025-12-29

Example Response:
[
{
"DepositNum": 83,
"DateDeposit": "2026-01-28",
"BankAccountInfo": "BAI123456789",
"Amount": 1092.29,
"Memo": "End of Month",
"Batch": "7A",
"DepositAccountNum": 0,
"IsSentToQuickBooksOnline": "false"
},
{
"DepositNum": 84,
"DateDeposit": "2026-02-16",
"BankAccountInfo": "BAI987654321",
"Amount": 230.49,
"Memo": "",
"Batch": "8B",
"DepositAccountNum": 0,
"IsSentToQuickBooksOnline": "false"
}
]

200 OK
400 BadRequest (with explanation)

Deposits POST

Version Added: 25.4.33

Create a deposit for a set of payments and/or claimpayments.

payNums: Required if claimPaymentNums is not passed in. Optional otherwise. An array of payment.PayNums where payment.DepositNum=0, in [1,2,3] format.
claimPaymentNums: Required if payNums is not passed in. Optional otherwise. An array of claimpayment.ClaimPaymentNums where claimpayment.DepositNum=0, in [1,2,3] format. ClaimPayments cannot be partial, and cannot have a CheckAmt of 0.

DateDeposit: Optional. Date of the deposit. String in "yyyy-MM-dd" format. Default today's date.
BankAccountInfo: Optional. String. Defaults to the value stored in the PracticeBankNumber preference.
Memo: Optional. String. Default empty string.
Batch: Optional. String. Cannot exceed 25 characters in length. Default empty string.

Example Requests:
POST /deposits

{
"payNums": [21,23]
}

or

{
"payNums": [13,17,19],
"claimPaymentNums": [2],
"DateDeposit": "2026-02-20",
"BankAccountInfo": "BAI#01010101",
"Memo": "Monthly collection",
"Batch": "H3110"
}

Example Response:
{
"DepositNum": 87,
"DateDeposit": "2026-02-20",
"BankAccountInfo": "BAI#01010101",
"Amount": 1005.0,
"Memo": "Monthly collection",
"Batch": "H3110",
"DepositAccountNum": 0,
"IsSentToQuickBooksOnline": "false"
}

201 Created
400 BadRequest (with explanation)
404 NotFound (with explanation)

Deposits PUT

Version Added: 25.4.33

Updates an existing deposit.

DepositNum: Required in the URL.

DateDeposit: Optional. Date of the deposit. String in "yyyy-MM-dd" format.
BankAccountInfo: Optional. String.
Memo: Optional. String.
Batch: Optional. String. Cannot exceed 25 characters in length.

Example Request:
PUT /deposits/87

{
"DateDeposit": "2026-02-27",
"BankAccountInfo": "BAI#11111111",
"Memo": "Collection rerouted",
"Batch": "H3110-B"
}

Example Response:
{
"DepositNum": 87,
"DateDeposit": "2026-02-27",
"BankAccountInfo": "BAI#11111111",
"Amount": 1005.0,
"Memo": "Collection rerouted",
"Batch": "H3110-B",
"DepositAccountNum": 0,
"IsSentToQuickBooksOnline": "false"
}

200 OK
400 BadRequest (with explanation)
404 NotFound (with explanation)

Deposits DELETE

Version Added: 25.4.33

Deletes a deposit. Cannot delete deposits that are attached to transactions older than 2 days, or transactions that are reconciled.
Any associated transactions, journalentries, and transactioninvoices will also be deleted alongside the Deposit.

DepositNum: Required in the URL.

Example Request:
DELETE /deposits/87

Example Responses:
200 OK
400 BadRequest (with explanation)
404 NotFound (with explanation)