会计
Codat的会计API是一种灵活的API,用于将最新的会计数据拉入并推进到客户的会计软件. 它为您提供了一个简单的查看,创建,更新adn删除数据的方法,而无需担心每个平台的具体复杂性.
SDK 安装
国家预防机制
npm add @codat/accounting
雅伦
yarn add @codat/accounting
示例使用
SDK 示例使用法
示例
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
const res = await sdk.accountTransactions.get({
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
if (res.statusCode == 200) {
// handle response
}
}
run();
现有资源和业务
账户交易
银行账户
银行帐户交易
账单
- 创建 - 创建帐单
- 删除 - 删除帐单
- 下载 - 下载帐单附件
- 起来 - 买单
- 获取附件 - 拿账单附件
- 获取创建更新模式 - 建立/更新法案模式
- 列表 - 法案清单
- 列表选项 - 列出账单附件
- 更新 - 更新法案
- 上传附件 - 上传账单附件
客户
- 创建 - 创建客户
- 下载 - 下载客户附件
- 起来 - 找顾客
- 获取附件 - 获取客户附件
- 获取创建更新模式 - 获得创建/更新客户模式
- 列表 - 名单客户
- 列表选项 - 客户附件清单
- 更新 - 更新客户信息
直接费用
- 创建 - 创造直接成本
- 下载 - 下载直接成本附件
- 起来 - 获得直接成本
- 获取附件 - 获取直接成本附件
- 获取创建模式 - 创建直接成本模式
- 列表 - 列出直接费用
- 列表选项 - 列出直接费用附件
- 上传附件 - 上传直接成本附件
直接收入
- 创建 - 创造直接收入
- 下载 - 下载直接收入附件
- 起来 - 获得直接收入
- 获取附件 - 获得直接收入附加
- 获取创建模式 - 创造直接收入模式
- 列表 - 列出直接收入
- 列表选项 - 列出直接收入附件
- 上传附件 - 建立直接收入附加
发票
- 创建 - 创建发票
- 删除 - 删除发票
- 下载 - 下载发票附件
- 下载Pdf - 把发票作为PDF
- 起来 - 去拿发票
- 获取附件 - 获取发票附件
- 获取创建更新模式 - 获得创建/更新发票模式
- 列表 - 清单发票
- 列表选项 - 清单发票附件
- 更新 - 更新发票
- 上传附件 - 上传发票附件
项目
采购订单
- 创建 - 创建定购单
- 下载 - 下载订购单附件
- 下载命令Purchase OrderPdf - 作为PDF下载定购单
- 起来 - 买单
- 获取附件 - 获得订购单附件
- 获取创建更新模式 - 建立/更新定购单模式
- 列表 - 清单定购单
- 列表选项 - 清单定购单附件
- 更新 - 更新定购单
供应商
- 创建 - 创建供应商
- 下载 - 下载供应商附件
- 起来 - 找供应商
- 获取附件 - 获取供应商附件
- 获取创建更新模式 - 获得创建/更新供应商模式
- 列表 - 名单供应商
- 列表选项 - 列出供应商附件
- 更新 - 更新供应商
转让
帐单
账单
账户
贷方说明
项目
日记条目
日记
付款
报告
- 编辑器报告 - 老年债权人报告
- 已过时的 - 老年债务人报告
- 获取巴朗谢特 - 获得资产负债表
- 获取卡什窗体 - 获取现金流量表
- 获得利润和损失 - 获得损益
- 可报告 - 老年债权人报告
- 可报告已过时 - 已有的老年债务人报告
公司信息
支付方法
销售订单
税额
跟踪 类别
检索
此 SDK 中的一些端点支持重试. 如果在没有任何配置的情况下使用SDK,则会回落到API提供的默认重试策略. 然而,默认的重试策略可以在一次操作的基础上被推翻,或者在整个SDK中被推翻.
更改单个 API 调用默认重试策略, 只需为调用提供重试 Config 对象 :
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
const res = await sdk.accountTransactions.get(
{
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
},
{
strategy: "backoff",
backoff: {
initialInterval: 1,
maxInterval: 50,
exponent: 1.1,
maxElapsedTime: 100,
},
retryConnectionErrors: false,
}
);
if (res.statusCode == 200) {
// handle response
}
}
run();
如果您想要覆盖所有支持重试的操作的默认重试策略, 您可以在 SDK 初始化时提供重试Config :
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
retry_config: {
strategy: "backoff",
backoff: {
initialInterval: 1,
maxInterval: 50,
exponent: 1.1,
maxElapsedTime: 100,
},
retryConnectionErrors: false,
},
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
const res = await sdk.accountTransactions.get({
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
if (res.statusCode == 200) {
// handle response
}
}
run();
处理错误
处理 SDK 中的错误, 大体上应该符合你的预期 。 所有操作返回一个响应对象或扔出一个错误. 如果您在 OpenAPI Spec 中指定了出错对象, SDK 会丢弃相应的出错类型 .
| 错误对象 | 身份代码 | 内容类型 |
|---|---|---|
| 错误。 SDKEROR | 400-600 (英语) | 编号 : |
示例
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
let res;
try {
res = await sdk.accountTransactions.get({
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
} catch (err) {
if (err instanceof errors.SDKError) {
console.error(err); // handle exception
throw err;
}
}
if (res.statusCode == 200) {
// handle response
}
}
run();
服务器选择
通过索引选择服务器
通过将服务器索引传递到 serverIdx: number 初始化 SDK 客户端实例时的可选参数 。 然后,选定服务器将作为使用它的操作的默认值. 本表列出与可用服务器相关的索引:
| {\fn方正粗倩简体\fs12\an8\1cHFFFF00\b0} | 服务器 | 变量 |
|---|---|---|
| 0 个 | https://api.codat.io | 无 |
示例
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
serverIdx: 0,
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
const res = await sdk.accountTransactions.get({
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
if (res.statusCode == 200) {
// handle response
}
}
run();
覆盖服务器 URL / 客户端
默认服务器也可以通过将 URL 传递到 serverURL: str 初始化 SDK 客户端实例时的可选参数 。 例如:
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
serverURL: "https://api.codat.io",
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
const res = await sdk.accountTransactions.get({
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
if (res.statusCode == 200) {
// handle response
}
}
run();
自定义 HTTP 客户端
Typescript SDK 使用 轴 HTTP 库. 为了提供一个方便的配置超时, cookie, 代理,自定义头等低等配置的方法, 您可以用自定义初始化 SDK 客户端 AxiosInstance 对象.
例如,您可以为您 sdk 提出的每个请求指定一个标题 :
import { @codat/accounting } from "CodatAccounting";
import axios from "axios";
const httpClient = axios.create({
headers: {'x-custom-header': 'someValue'}
})
const sdk = new CodatAccounting({defaultClient: httpClient});
认证
常客安全计划
这个SDK在全球支持以下安全计划:
| 名称 | 类型 | 计划 |
|---|---|---|
authHeader | 键 | API 密钥 |
您可以通过 security 初始化 SDK 客户端实例时的可选参数 。 例如:
import { CodatAccounting } from "@codat/accounting";
async function run() {
const sdk = new CodatAccounting({
security: {
authHeader: "Basic BASE_64_ENCODED(API_KEY)",
},
});
const res = await sdk.accountTransactions.get({
accountTransactionId: "string",
companyId: "8a210b68-6988-11ed-a1eb-0242ac120002",
connectionId: "2e9d2c44-f675-40ba-8049-353bfcb5e171",
});
if (res.statusCode == 200) {
// handle response
}
}
run();
支助
如果你在使用我们的SDK时遇到任何挑战 请不要犹豫寻求援助. 你可以通过联系你敬业的Codat代表 或联系我们 支助小组。 。 。 . 我们是来帮助确保你顺利体验的.