Create a Company Bank Account
Creates a bank account for a company. Worklio uses this account for payroll, vendor payments, or deposits, depending on the purpose you set.
Endpoint
POST https://api.worklio.com/wep/companies/{CLIENT_ID}/bankaccounts
Requires a bearer access token (see How to Get API Access). CLIENT_ID is the company identifier returned as id when you create the company.
Required fields:
| Field | Type | Required | Description |
|---|---|---|---|
accountName | string | Yes | A label for the account, shown in Worklio's UI. |
accountNumber | string | Yes | The bank account number. |
routingNumber | string | Yes | The bank's routing number. |
type | integer | Yes | The account type. See Account Type values below. |
purpose | integer | Yes | What the account is used for. See Purpose values below. |
Account Type values:
| Value | Meaning |
|---|---|
| 1 | Checking |
| 2 | Savings |
Purpose values:
| Value | Meaning |
|---|---|
| 1 | General (Payroll) |
| 2 | Invoice (Vendor) |
| 4 | Deposit Account |
Example request
require("dotenv").config();
const TOKEN = process.env.API_KEY;
const CLIENT_ID = process.env.CLIENT_ID;
const url = `https://api.worklio.com/wep/companies/${CLIENT_ID}/bankaccounts`;
const payload = {
accountName: "GUIDE COMPANY ACCOUNT CHECKING",
accountNumber: "124456741",
routingNumber: "071000505",
type: 1,
purpose: 1
};
async function createCompanyAccount() {
const response = await fetch(url, {
method: "POST",
headers: {
accept: "application/json",
"api-version": "2.0",
authorization: `Bearer ${TOKEN}`,
"content-type": "application/json",
"x-api-version": "2.0"
},
body: JSON.stringify(payload)
});
console.log(response.status);
const raw = await response.text();
console.log(JSON.stringify(JSON.parse(raw), null, 2));
}
createCompanyAccount();curl -s -X POST "https://api.worklio.com/wep/companies/$CLIENT_ID/bankaccounts" \
-H "accept: application/json" \
-H "api-version: 2.0" \
-H "authorization: Bearer $API_KEY" \
-H "content-type: application/json" \
-H "x-api-version: 2.0" \
-d '{
"accountName": "GUIDE COMPANY ACCOUNT CHECKING",
"accountNumber": "124456741",
"routingNumber": "071000505",
"type": 1,
"purpose": 1
}' | jq .import os
import json
import requests
from dotenv import load_dotenv
load_dotenv()
TOKEN = os.environ.get("API_KEY")
CLIENT_ID = os.environ.get("CLIENT_ID")
URL = f"https://api.worklio.com/wep/companies/{CLIENT_ID}/bankaccounts"
payload = {
"accountName": "GUIDE COMPANY ACCOUNT CHECKING",
"accountNumber": "124456741",
"routingNumber": "071000505",
"type": 1,
"purpose": 1,
}
def create_company_account():
response = requests.post(
URL,
headers={
"accept": "application/json",
"api-version": "2.0",
"authorization": f"Bearer {TOKEN}",
"content-type": "application/json",
"x-api-version": "2.0",
},
json=payload,
)
print(response.status_code)
raw = response.text
print(json.dumps(json.loads(raw), indent=2))
return response
if __name__ == "__main__":
create_company_account()Example response
{
"accountId": 766,
"accountName": "GUIDE COMPANY ACCOUNT CHECKING",
"accountNumber": "124456741",
"routingNumber": "071000505",
"type": 1,
"purpose": 1,
"nextCheckNumber": 1,
"bankProviderStatus": 0,
"kotapayStatus": 0
}Updated 29 minutes ago
Did this page help you?
