import Conductor from 'conductor-node';
const conductor = new Conductor({
apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted
});
const deposit = await conductor.qbd.deposits.create({
depositToAccountId: '80000001-1234567890',
transactionDate: '2024-10-01',
conductorEndUserId: 'end_usr_1234567abcdefg',
});
console.log(deposit.id);import os
from datetime import date
from conductor import Conductor
conductor = Conductor(
api_key=os.environ.get("CONDUCTOR_SECRET_KEY"), # This is the default and can be omitted
)
deposit = conductor.qbd.deposits.create(
deposit_to_account_id="80000001-1234567890",
transaction_date=date.fromisoformat("2024-10-01"),
conductor_end_user_id="end_usr_1234567abcdefg",
)
print(deposit.id)curl --request POST \
--url https://api.conductor.is/v1/quickbooks-desktop/deposits \
--header 'Authorization: Bearer <token>' \
--header 'Conductor-End-User-Id: <conductor-end-user-id>' \
--header 'Content-Type: application/json' \
--data '
{
"transactionDate": "2024-10-01",
"depositToAccountId": "80000001-1234567890",
"memo": "Batch settlement deposit",
"currencyId": "80000001-1234567890",
"exchangeRate": 1.2345,
"externalId": "12345678-abcd-1234-abcd-1234567890ab",
"lines": [
{
"paymentTransactionId": "123ABC-1234567890",
"paymentTransactionLineId": "456DEF-1234567890",
"overrideMemo": "Batch settlement deposit",
"overrideCheckNumber": "1234567890",
"overrideClassId": "80000001-1234567890",
"entityId": "80000001-1234567890",
"accountId": "80000001-1234567890",
"memo": "Payment batched into settlement deposit",
"checkNumber": "1234567890",
"paymentMethodId": "80000001-1234567890",
"classId": "80000001-1234567890",
"amount": "1000.00"
}
]
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.conductor.is/v1/quickbooks-desktop/deposits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'transactionDate' => '2024-10-01',
'depositToAccountId' => '80000001-1234567890',
'memo' => 'Batch settlement deposit',
'currencyId' => '80000001-1234567890',
'exchangeRate' => 1.2345,
'externalId' => '12345678-abcd-1234-abcd-1234567890ab',
'lines' => [
[
'paymentTransactionId' => '123ABC-1234567890',
'paymentTransactionLineId' => '456DEF-1234567890',
'overrideMemo' => 'Batch settlement deposit',
'overrideCheckNumber' => '1234567890',
'overrideClassId' => '80000001-1234567890',
'entityId' => '80000001-1234567890',
'accountId' => '80000001-1234567890',
'memo' => 'Payment batched into settlement deposit',
'checkNumber' => '1234567890',
'paymentMethodId' => '80000001-1234567890',
'classId' => '80000001-1234567890',
'amount' => '1000.00'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Conductor-End-User-Id: <conductor-end-user-id>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.conductor.is/v1/quickbooks-desktop/deposits"
payload := strings.NewReader("{\n \"transactionDate\": \"2024-10-01\",\n \"depositToAccountId\": \"80000001-1234567890\",\n \"memo\": \"Batch settlement deposit\",\n \"currencyId\": \"80000001-1234567890\",\n \"exchangeRate\": 1.2345,\n \"externalId\": \"12345678-abcd-1234-abcd-1234567890ab\",\n \"lines\": [\n {\n \"paymentTransactionId\": \"123ABC-1234567890\",\n \"paymentTransactionLineId\": \"456DEF-1234567890\",\n \"overrideMemo\": \"Batch settlement deposit\",\n \"overrideCheckNumber\": \"1234567890\",\n \"overrideClassId\": \"80000001-1234567890\",\n \"entityId\": \"80000001-1234567890\",\n \"accountId\": \"80000001-1234567890\",\n \"memo\": \"Payment batched into settlement deposit\",\n \"checkNumber\": \"1234567890\",\n \"paymentMethodId\": \"80000001-1234567890\",\n \"classId\": \"80000001-1234567890\",\n \"amount\": \"1000.00\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Conductor-End-User-Id", "<conductor-end-user-id>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.conductor.is/v1/quickbooks-desktop/deposits")
.header("Conductor-End-User-Id", "<conductor-end-user-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"transactionDate\": \"2024-10-01\",\n \"depositToAccountId\": \"80000001-1234567890\",\n \"memo\": \"Batch settlement deposit\",\n \"currencyId\": \"80000001-1234567890\",\n \"exchangeRate\": 1.2345,\n \"externalId\": \"12345678-abcd-1234-abcd-1234567890ab\",\n \"lines\": [\n {\n \"paymentTransactionId\": \"123ABC-1234567890\",\n \"paymentTransactionLineId\": \"456DEF-1234567890\",\n \"overrideMemo\": \"Batch settlement deposit\",\n \"overrideCheckNumber\": \"1234567890\",\n \"overrideClassId\": \"80000001-1234567890\",\n \"entityId\": \"80000001-1234567890\",\n \"accountId\": \"80000001-1234567890\",\n \"memo\": \"Payment batched into settlement deposit\",\n \"checkNumber\": \"1234567890\",\n \"paymentMethodId\": \"80000001-1234567890\",\n \"classId\": \"80000001-1234567890\",\n \"amount\": \"1000.00\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.conductor.is/v1/quickbooks-desktop/deposits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Conductor-End-User-Id"] = '<conductor-end-user-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"transactionDate\": \"2024-10-01\",\n \"depositToAccountId\": \"80000001-1234567890\",\n \"memo\": \"Batch settlement deposit\",\n \"currencyId\": \"80000001-1234567890\",\n \"exchangeRate\": 1.2345,\n \"externalId\": \"12345678-abcd-1234-abcd-1234567890ab\",\n \"lines\": [\n {\n \"paymentTransactionId\": \"123ABC-1234567890\",\n \"paymentTransactionLineId\": \"456DEF-1234567890\",\n \"overrideMemo\": \"Batch settlement deposit\",\n \"overrideCheckNumber\": \"1234567890\",\n \"overrideClassId\": \"80000001-1234567890\",\n \"entityId\": \"80000001-1234567890\",\n \"accountId\": \"80000001-1234567890\",\n \"memo\": \"Payment batched into settlement deposit\",\n \"checkNumber\": \"1234567890\",\n \"paymentMethodId\": \"80000001-1234567890\",\n \"classId\": \"80000001-1234567890\",\n \"amount\": \"1000.00\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "123ABC-1234567890",
"objectType": "qbd_deposit",
"createdAt": "2025-01-01T12:34:56.000Z",
"updatedAt": "2025-02-01T12:34:56.000Z",
"revisionNumber": "1721172183",
"transactionDate": "2024-10-01",
"depositToAccount": {
"id": "80000001-1234567890",
"fullName": "Checking"
},
"memo": "Batch settlement deposit",
"totalAmount": "1000.00",
"currency": {
"id": "80000001-1234567890",
"fullName": "USD"
},
"exchangeRate": 1.2345,
"totalAmountInHomeCurrency": "1234.56",
"cashBack": {
"id": "456DEF-1234567890",
"objectType": "qbd_deposit_cash_back_line",
"account": {
"id": "80000001-1234567890",
"fullName": "Petty Cash"
},
"memo": "Cash back from deposit",
"amount": "1000.00"
},
"externalId": "12345678-abcd-1234-abcd-1234567890ab",
"lines": [
{
"transactionType": "invoice",
"paymentTransactionId": "123ABC-1234567890",
"id": "456DEF-1234567890",
"objectType": "qbd_deposit_line",
"paymentTransactionLineId": "456DEF-1234567890",
"entity": {
"id": "80000001-1234567890",
"fullName": "Acme Corporation"
},
"account": {
"id": "80000001-1234567890",
"fullName": "Undeposited Funds"
},
"memo": "Payment batched into settlement deposit",
"checkNumber": "1234567890",
"paymentMethod": {
"id": "80000001-1234567890",
"fullName": "Credit Card"
},
"class": {
"id": "80000001-1234567890",
"fullName": "Retail Sales"
},
"amount": "1000.00"
}
],
"customFields": [
{
"ownerId": "0",
"name": "Customer Rating",
"type": "string_1024_type",
"value": "Premium"
}
]
}Create a deposit
Creates a deposit into a QuickBooks Desktop bank or other asset account. Lines can either reference existing payments waiting to be deposited, using paymentTransactionId and optionally paymentTransactionLineId, or describe a manual transfer from another account using accountId and related line details.
import Conductor from 'conductor-node';
const conductor = new Conductor({
apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted
});
const deposit = await conductor.qbd.deposits.create({
depositToAccountId: '80000001-1234567890',
transactionDate: '2024-10-01',
conductorEndUserId: 'end_usr_1234567abcdefg',
});
console.log(deposit.id);import os
from datetime import date
from conductor import Conductor
conductor = Conductor(
api_key=os.environ.get("CONDUCTOR_SECRET_KEY"), # This is the default and can be omitted
)
deposit = conductor.qbd.deposits.create(
deposit_to_account_id="80000001-1234567890",
transaction_date=date.fromisoformat("2024-10-01"),
conductor_end_user_id="end_usr_1234567abcdefg",
)
print(deposit.id)curl --request POST \
--url https://api.conductor.is/v1/quickbooks-desktop/deposits \
--header 'Authorization: Bearer <token>' \
--header 'Conductor-End-User-Id: <conductor-end-user-id>' \
--header 'Content-Type: application/json' \
--data '
{
"transactionDate": "2024-10-01",
"depositToAccountId": "80000001-1234567890",
"memo": "Batch settlement deposit",
"currencyId": "80000001-1234567890",
"exchangeRate": 1.2345,
"externalId": "12345678-abcd-1234-abcd-1234567890ab",
"lines": [
{
"paymentTransactionId": "123ABC-1234567890",
"paymentTransactionLineId": "456DEF-1234567890",
"overrideMemo": "Batch settlement deposit",
"overrideCheckNumber": "1234567890",
"overrideClassId": "80000001-1234567890",
"entityId": "80000001-1234567890",
"accountId": "80000001-1234567890",
"memo": "Payment batched into settlement deposit",
"checkNumber": "1234567890",
"paymentMethodId": "80000001-1234567890",
"classId": "80000001-1234567890",
"amount": "1000.00"
}
]
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.conductor.is/v1/quickbooks-desktop/deposits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'transactionDate' => '2024-10-01',
'depositToAccountId' => '80000001-1234567890',
'memo' => 'Batch settlement deposit',
'currencyId' => '80000001-1234567890',
'exchangeRate' => 1.2345,
'externalId' => '12345678-abcd-1234-abcd-1234567890ab',
'lines' => [
[
'paymentTransactionId' => '123ABC-1234567890',
'paymentTransactionLineId' => '456DEF-1234567890',
'overrideMemo' => 'Batch settlement deposit',
'overrideCheckNumber' => '1234567890',
'overrideClassId' => '80000001-1234567890',
'entityId' => '80000001-1234567890',
'accountId' => '80000001-1234567890',
'memo' => 'Payment batched into settlement deposit',
'checkNumber' => '1234567890',
'paymentMethodId' => '80000001-1234567890',
'classId' => '80000001-1234567890',
'amount' => '1000.00'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Conductor-End-User-Id: <conductor-end-user-id>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.conductor.is/v1/quickbooks-desktop/deposits"
payload := strings.NewReader("{\n \"transactionDate\": \"2024-10-01\",\n \"depositToAccountId\": \"80000001-1234567890\",\n \"memo\": \"Batch settlement deposit\",\n \"currencyId\": \"80000001-1234567890\",\n \"exchangeRate\": 1.2345,\n \"externalId\": \"12345678-abcd-1234-abcd-1234567890ab\",\n \"lines\": [\n {\n \"paymentTransactionId\": \"123ABC-1234567890\",\n \"paymentTransactionLineId\": \"456DEF-1234567890\",\n \"overrideMemo\": \"Batch settlement deposit\",\n \"overrideCheckNumber\": \"1234567890\",\n \"overrideClassId\": \"80000001-1234567890\",\n \"entityId\": \"80000001-1234567890\",\n \"accountId\": \"80000001-1234567890\",\n \"memo\": \"Payment batched into settlement deposit\",\n \"checkNumber\": \"1234567890\",\n \"paymentMethodId\": \"80000001-1234567890\",\n \"classId\": \"80000001-1234567890\",\n \"amount\": \"1000.00\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Conductor-End-User-Id", "<conductor-end-user-id>")
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.conductor.is/v1/quickbooks-desktop/deposits")
.header("Conductor-End-User-Id", "<conductor-end-user-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"transactionDate\": \"2024-10-01\",\n \"depositToAccountId\": \"80000001-1234567890\",\n \"memo\": \"Batch settlement deposit\",\n \"currencyId\": \"80000001-1234567890\",\n \"exchangeRate\": 1.2345,\n \"externalId\": \"12345678-abcd-1234-abcd-1234567890ab\",\n \"lines\": [\n {\n \"paymentTransactionId\": \"123ABC-1234567890\",\n \"paymentTransactionLineId\": \"456DEF-1234567890\",\n \"overrideMemo\": \"Batch settlement deposit\",\n \"overrideCheckNumber\": \"1234567890\",\n \"overrideClassId\": \"80000001-1234567890\",\n \"entityId\": \"80000001-1234567890\",\n \"accountId\": \"80000001-1234567890\",\n \"memo\": \"Payment batched into settlement deposit\",\n \"checkNumber\": \"1234567890\",\n \"paymentMethodId\": \"80000001-1234567890\",\n \"classId\": \"80000001-1234567890\",\n \"amount\": \"1000.00\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.conductor.is/v1/quickbooks-desktop/deposits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Conductor-End-User-Id"] = '<conductor-end-user-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"transactionDate\": \"2024-10-01\",\n \"depositToAccountId\": \"80000001-1234567890\",\n \"memo\": \"Batch settlement deposit\",\n \"currencyId\": \"80000001-1234567890\",\n \"exchangeRate\": 1.2345,\n \"externalId\": \"12345678-abcd-1234-abcd-1234567890ab\",\n \"lines\": [\n {\n \"paymentTransactionId\": \"123ABC-1234567890\",\n \"paymentTransactionLineId\": \"456DEF-1234567890\",\n \"overrideMemo\": \"Batch settlement deposit\",\n \"overrideCheckNumber\": \"1234567890\",\n \"overrideClassId\": \"80000001-1234567890\",\n \"entityId\": \"80000001-1234567890\",\n \"accountId\": \"80000001-1234567890\",\n \"memo\": \"Payment batched into settlement deposit\",\n \"checkNumber\": \"1234567890\",\n \"paymentMethodId\": \"80000001-1234567890\",\n \"classId\": \"80000001-1234567890\",\n \"amount\": \"1000.00\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "123ABC-1234567890",
"objectType": "qbd_deposit",
"createdAt": "2025-01-01T12:34:56.000Z",
"updatedAt": "2025-02-01T12:34:56.000Z",
"revisionNumber": "1721172183",
"transactionDate": "2024-10-01",
"depositToAccount": {
"id": "80000001-1234567890",
"fullName": "Checking"
},
"memo": "Batch settlement deposit",
"totalAmount": "1000.00",
"currency": {
"id": "80000001-1234567890",
"fullName": "USD"
},
"exchangeRate": 1.2345,
"totalAmountInHomeCurrency": "1234.56",
"cashBack": {
"id": "456DEF-1234567890",
"objectType": "qbd_deposit_cash_back_line",
"account": {
"id": "80000001-1234567890",
"fullName": "Petty Cash"
},
"memo": "Cash back from deposit",
"amount": "1000.00"
},
"externalId": "12345678-abcd-1234-abcd-1234567890ab",
"lines": [
{
"transactionType": "invoice",
"paymentTransactionId": "123ABC-1234567890",
"id": "456DEF-1234567890",
"objectType": "qbd_deposit_line",
"paymentTransactionLineId": "456DEF-1234567890",
"entity": {
"id": "80000001-1234567890",
"fullName": "Acme Corporation"
},
"account": {
"id": "80000001-1234567890",
"fullName": "Undeposited Funds"
},
"memo": "Payment batched into settlement deposit",
"checkNumber": "1234567890",
"paymentMethod": {
"id": "80000001-1234567890",
"fullName": "Credit Card"
},
"class": {
"id": "80000001-1234567890",
"fullName": "Retail Sales"
},
"amount": "1000.00"
}
],
"customFields": [
{
"ownerId": "0",
"name": "Customer Rating",
"type": "string_1024_type",
"value": "Premium"
}
]
}Authorizations
Your Conductor secret key using Bearer auth (e.g., "Authorization: Bearer {{YOUR_SECRET_KEY}}").
Headers
The ID of the End-User to receive this request.
"end_usr_1234567abcdefg"
Body
The date of this deposit, in ISO 8601 format (YYYY-MM-DD).
"2024-10-01"
The account where the funds for this deposit will be deposited.
36"80000001-1234567890"
A memo or note for this deposit.
"Batch settlement deposit"
Cash back taken out of this deposit and recorded to another account, such as Petty Cash.
Show child attributes
Show child attributes
The deposit's currency. For built-in currencies, the name and code are standard ISO 4217 international values. For user-defined currencies, all values are editable.
36"80000001-1234567890"
The market exchange rate between this deposit's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).
1.2345
A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.
IMPORTANT: This field must be formatted as a valid GUID; otherwise, QuickBooks will return an error.
"12345678-abcd-1234-abcd-1234567890ab"
The deposit's deposit lines, each representing either an existing payment selected for deposit or a manual transfer from another account into the deposit account.
1Show child attributes
Show child attributes
Response
Returns the newly created deposit.
The unique identifier assigned by QuickBooks to this deposit. This ID is unique across all transaction types.
"123ABC-1234567890"
The type of object. This value is always "qbd_deposit".
"qbd_deposit""qbd_deposit"
The date and time when this deposit was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.
"2025-01-01T12:34:56.000Z"
The date and time when this deposit was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.
"2025-02-01T12:34:56.000Z"
The current QuickBooks-assigned revision number of this deposit object, which changes each time the object is modified. When updating this object, you must provide the most recent revisionNumber to ensure you're working with the latest data; otherwise, the update will return an error.
"1721172183"
The date of this deposit, in ISO 8601 format (YYYY-MM-DD).
"2024-10-01"
The account where the funds for this deposit have been deposited.
Show child attributes
Show child attributes
{
"id": "80000001-1234567890",
"fullName": "Checking"
}
A memo or note for this deposit.
"Batch settlement deposit"
The total monetary amount deposited into this deposit's destination account, represented as a decimal string.
"1000.00"
The deposit's currency. For built-in currencies, the name and code are standard ISO 4217 international values. For user-defined currencies, all values are editable.
Show child attributes
Show child attributes
{
"id": "80000001-1234567890",
"fullName": "USD"
}
The market exchange rate between this deposit's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).
1.2345
This deposit's total monetary amount converted to the home currency of the QuickBooks company file, represented as a decimal string.
"1234.56"
Cash back taken out of this deposit and recorded to another account, such as Petty Cash.
Show child attributes
Show child attributes
A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.
"12345678-abcd-1234-abcd-1234567890ab"
The deposit's deposit lines, each representing either an existing payment selected for deposit or a manual transfer from another account into the deposit account.
Show child attributes
Show child attributes
The custom fields for the deposit object, added as user-defined data extensions, not included in the standard QuickBooks object.
Show child attributes
Show child attributes

