curl --request POST \
--url https://api.example.com/api/banking/transactions \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--header 'organization-id: <organization-id>' \
--data '
{
"date": "2023-01-01T00:00:00.000Z",
"transactionType": "deposit",
"description": "Monthly rent payment",
"amount": 1000.5,
"exchangeRate": 1.15,
"creditAccountId": 1001,
"cashflowAccountId": 2001,
"publish": true,
"transactionNumber": "TRX-001",
"referenceNo": "REF-001",
"currencyCode": "USD",
"branchId": 101,
"plaidTransactionId": "plaid_trx_12345",
"plaidAccountId": "plaid_acc_67890",
"uncategorizedTransactionId": 5001
}
'import requests
url = "https://api.example.com/api/banking/transactions"
payload = {
"date": "2023-01-01T00:00:00.000Z",
"transactionType": "deposit",
"description": "Monthly rent payment",
"amount": 1000.5,
"exchangeRate": 1.15,
"creditAccountId": 1001,
"cashflowAccountId": 2001,
"publish": True,
"transactionNumber": "TRX-001",
"referenceNo": "REF-001",
"currencyCode": "USD",
"branchId": 101,
"plaidTransactionId": "plaid_trx_12345",
"plaidAccountId": "plaid_acc_67890",
"uncategorizedTransactionId": 5001
}
headers = {
"Authorization": "<authorization>",
"organization-id": "<organization-id>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: '<authorization>',
'organization-id': '<organization-id>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
date: '2023-01-01T00:00:00.000Z',
transactionType: 'deposit',
description: 'Monthly rent payment',
amount: 1000.5,
exchangeRate: 1.15,
creditAccountId: 1001,
cashflowAccountId: 2001,
publish: true,
transactionNumber: 'TRX-001',
referenceNo: 'REF-001',
currencyCode: 'USD',
branchId: 101,
plaidTransactionId: 'plaid_trx_12345',
plaidAccountId: 'plaid_acc_67890',
uncategorizedTransactionId: 5001
})
};
fetch('https://api.example.com/api/banking/transactions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/banking/transactions",
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([
'date' => '2023-01-01T00:00:00.000Z',
'transactionType' => 'deposit',
'description' => 'Monthly rent payment',
'amount' => 1000.5,
'exchangeRate' => 1.15,
'creditAccountId' => 1001,
'cashflowAccountId' => 2001,
'publish' => true,
'transactionNumber' => 'TRX-001',
'referenceNo' => 'REF-001',
'currencyCode' => 'USD',
'branchId' => 101,
'plaidTransactionId' => 'plaid_trx_12345',
'plaidAccountId' => 'plaid_acc_67890',
'uncategorizedTransactionId' => 5001
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json",
"organization-id: <organization-id>"
],
]);
$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.example.com/api/banking/transactions"
payload := strings.NewReader("{\n \"date\": \"2023-01-01T00:00:00.000Z\",\n \"transactionType\": \"deposit\",\n \"description\": \"Monthly rent payment\",\n \"amount\": 1000.5,\n \"exchangeRate\": 1.15,\n \"creditAccountId\": 1001,\n \"cashflowAccountId\": 2001,\n \"publish\": true,\n \"transactionNumber\": \"TRX-001\",\n \"referenceNo\": \"REF-001\",\n \"currencyCode\": \"USD\",\n \"branchId\": 101,\n \"plaidTransactionId\": \"plaid_trx_12345\",\n \"plaidAccountId\": \"plaid_acc_67890\",\n \"uncategorizedTransactionId\": 5001\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("organization-id", "<organization-id>")
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.example.com/api/banking/transactions")
.header("Authorization", "<authorization>")
.header("organization-id", "<organization-id>")
.header("Content-Type", "application/json")
.body("{\n \"date\": \"2023-01-01T00:00:00.000Z\",\n \"transactionType\": \"deposit\",\n \"description\": \"Monthly rent payment\",\n \"amount\": 1000.5,\n \"exchangeRate\": 1.15,\n \"creditAccountId\": 1001,\n \"cashflowAccountId\": 2001,\n \"publish\": true,\n \"transactionNumber\": \"TRX-001\",\n \"referenceNo\": \"REF-001\",\n \"currencyCode\": \"USD\",\n \"branchId\": 101,\n \"plaidTransactionId\": \"plaid_trx_12345\",\n \"plaidAccountId\": \"plaid_acc_67890\",\n \"uncategorizedTransactionId\": 5001\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/banking/transactions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["organization-id"] = '<organization-id>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"date\": \"2023-01-01T00:00:00.000Z\",\n \"transactionType\": \"deposit\",\n \"description\": \"Monthly rent payment\",\n \"amount\": 1000.5,\n \"exchangeRate\": 1.15,\n \"creditAccountId\": 1001,\n \"cashflowAccountId\": 2001,\n \"publish\": true,\n \"transactionNumber\": \"TRX-001\",\n \"referenceNo\": \"REF-001\",\n \"currencyCode\": \"USD\",\n \"branchId\": 101,\n \"plaidTransactionId\": \"plaid_trx_12345\",\n \"plaidAccountId\": \"plaid_acc_67890\",\n \"uncategorizedTransactionId\": 5001\n}"
response = http.request(request)
puts response.read_bodyCreate a new bank transaction
curl --request POST \
--url https://api.example.com/api/banking/transactions \
--header 'Authorization: <authorization>' \
--header 'Content-Type: application/json' \
--header 'organization-id: <organization-id>' \
--data '
{
"date": "2023-01-01T00:00:00.000Z",
"transactionType": "deposit",
"description": "Monthly rent payment",
"amount": 1000.5,
"exchangeRate": 1.15,
"creditAccountId": 1001,
"cashflowAccountId": 2001,
"publish": true,
"transactionNumber": "TRX-001",
"referenceNo": "REF-001",
"currencyCode": "USD",
"branchId": 101,
"plaidTransactionId": "plaid_trx_12345",
"plaidAccountId": "plaid_acc_67890",
"uncategorizedTransactionId": 5001
}
'import requests
url = "https://api.example.com/api/banking/transactions"
payload = {
"date": "2023-01-01T00:00:00.000Z",
"transactionType": "deposit",
"description": "Monthly rent payment",
"amount": 1000.5,
"exchangeRate": 1.15,
"creditAccountId": 1001,
"cashflowAccountId": 2001,
"publish": True,
"transactionNumber": "TRX-001",
"referenceNo": "REF-001",
"currencyCode": "USD",
"branchId": 101,
"plaidTransactionId": "plaid_trx_12345",
"plaidAccountId": "plaid_acc_67890",
"uncategorizedTransactionId": 5001
}
headers = {
"Authorization": "<authorization>",
"organization-id": "<organization-id>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
Authorization: '<authorization>',
'organization-id': '<organization-id>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
date: '2023-01-01T00:00:00.000Z',
transactionType: 'deposit',
description: 'Monthly rent payment',
amount: 1000.5,
exchangeRate: 1.15,
creditAccountId: 1001,
cashflowAccountId: 2001,
publish: true,
transactionNumber: 'TRX-001',
referenceNo: 'REF-001',
currencyCode: 'USD',
branchId: 101,
plaidTransactionId: 'plaid_trx_12345',
plaidAccountId: 'plaid_acc_67890',
uncategorizedTransactionId: 5001
})
};
fetch('https://api.example.com/api/banking/transactions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/banking/transactions",
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([
'date' => '2023-01-01T00:00:00.000Z',
'transactionType' => 'deposit',
'description' => 'Monthly rent payment',
'amount' => 1000.5,
'exchangeRate' => 1.15,
'creditAccountId' => 1001,
'cashflowAccountId' => 2001,
'publish' => true,
'transactionNumber' => 'TRX-001',
'referenceNo' => 'REF-001',
'currencyCode' => 'USD',
'branchId' => 101,
'plaidTransactionId' => 'plaid_trx_12345',
'plaidAccountId' => 'plaid_acc_67890',
'uncategorizedTransactionId' => 5001
]),
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: application/json",
"organization-id: <organization-id>"
],
]);
$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.example.com/api/banking/transactions"
payload := strings.NewReader("{\n \"date\": \"2023-01-01T00:00:00.000Z\",\n \"transactionType\": \"deposit\",\n \"description\": \"Monthly rent payment\",\n \"amount\": 1000.5,\n \"exchangeRate\": 1.15,\n \"creditAccountId\": 1001,\n \"cashflowAccountId\": 2001,\n \"publish\": true,\n \"transactionNumber\": \"TRX-001\",\n \"referenceNo\": \"REF-001\",\n \"currencyCode\": \"USD\",\n \"branchId\": 101,\n \"plaidTransactionId\": \"plaid_trx_12345\",\n \"plaidAccountId\": \"plaid_acc_67890\",\n \"uncategorizedTransactionId\": 5001\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("organization-id", "<organization-id>")
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.example.com/api/banking/transactions")
.header("Authorization", "<authorization>")
.header("organization-id", "<organization-id>")
.header("Content-Type", "application/json")
.body("{\n \"date\": \"2023-01-01T00:00:00.000Z\",\n \"transactionType\": \"deposit\",\n \"description\": \"Monthly rent payment\",\n \"amount\": 1000.5,\n \"exchangeRate\": 1.15,\n \"creditAccountId\": 1001,\n \"cashflowAccountId\": 2001,\n \"publish\": true,\n \"transactionNumber\": \"TRX-001\",\n \"referenceNo\": \"REF-001\",\n \"currencyCode\": \"USD\",\n \"branchId\": 101,\n \"plaidTransactionId\": \"plaid_trx_12345\",\n \"plaidAccountId\": \"plaid_acc_67890\",\n \"uncategorizedTransactionId\": 5001\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/banking/transactions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["organization-id"] = '<organization-id>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"date\": \"2023-01-01T00:00:00.000Z\",\n \"transactionType\": \"deposit\",\n \"description\": \"Monthly rent payment\",\n \"amount\": 1000.5,\n \"exchangeRate\": 1.15,\n \"creditAccountId\": 1001,\n \"cashflowAccountId\": 2001,\n \"publish\": true,\n \"transactionNumber\": \"TRX-001\",\n \"referenceNo\": \"REF-001\",\n \"currencyCode\": \"USD\",\n \"branchId\": 101,\n \"plaidTransactionId\": \"plaid_trx_12345\",\n \"plaidAccountId\": \"plaid_acc_67890\",\n \"uncategorizedTransactionId\": 5001\n}"
response = http.request(request)
puts response.read_bodyHeaders
Value must be 'Bearer ' where is an API key prefixed with 'bc_' or a JWT token.
"Bearer bc_1234567890abcdef"
Required if Authorization is a JWT token. The organization ID to operate within.
Body
The date of the bank transaction
"2023-01-01T00:00:00.000Z"
Type of bank transaction (e.g., deposit, withdrawal)
"deposit"
Description of the bank transaction
"Monthly rent payment"
Transaction amount
1000.5
Exchange rate for currency conversion
1.15
ID of the credit account associated with this transaction
1001
ID of the cashflow account associated with this transaction
2001
Whether the transaction should be published
Optional transaction number or reference
"TRX-001"
Optional external reference number
"REF-001"
Currency code for the transaction
"USD"
ID of the branch where the transaction occurred
101
Plaid transaction ID if imported from Plaid
"plaid_trx_12345"
Plaid account ID if imported from Plaid
"plaid_acc_67890"
ID of the uncategorized transaction if this is categorizing an existing transaction
5001
Response
The bank transaction has been successfully created