@deliverart/sdk-js-customer

中文文档
3.0.1发布于 2026/11/11TypeScriptESM + CJS近 30 天下载 3725

客户和客户地址管理交付技术JavaScript SDK

中文使用文档
文档目录10 节
  1. 安装
  2. 导出类型
  3. 核心类型
  4. IRI 类型
  5. 可用请求
  6. 客户管理
  7. 客户地址
  8. 业务概况(B2B)
  9. 完成使用示例
  10. 许可证

@ deliverart/ sdk-js- 客户

交付艺术JavaScript SDK的客户和业务简介管理软件包.

安装

npm install @deliverart/sdk-js-customer @deliverart/sdk-js-core

导出类型

核心类型

  • Customer - 客户基本信息
  • CustomerDetails - 有关系的扩展客户
  • CustomerAddress - 客户交货地址
  • CustomerBusinessProfile - B2B客户的业务概况

IRI 类型

  • CustomerIri - 客户IRI(/customers/:id(中文(简体) )
  • CustomerAddressIri - 客户地址IRI(/customer_addresses/:id(中文(简体) )
  • CustomerBusinessProfileIri - 企业概况/customer_business_profiles/:id(中文(简体) )

可用请求

客户管理

创建客户端

import { CreateCustomer } from '@deliverart/sdk-js-customer';

const customer = await sdk.call(new CreateCustomer({
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phoneNumber: '+39123456789',
  company: '/companies/123' // Optional
}));

输入参数:

  • firstName: string (必须) - 姓名
  • lastName: string (必须) - 姓
  • email: string (需要) - 电子邮件地址
  • phoneNumber: string (需要) - 电话号码
  • company?: string (可选) - 公司IRI

从当前用户创建客户端

import { CreateCustomerFromCurrentUser } from '@deliverart/sdk-js-customer';

const customer = await sdk.call(new CreateCustomerFromCurrentUser({
  pointOfSale: '/point_of_sales/123',
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phoneNumber: null
}));

创建或返回已验证的 POS 扫描客户关系 消费用户. 这是电子商务账户流: 交付端用户仍然 在全球范围,而每个销售商仍然得到可靠的本地 Customer 配置图 CRM,地址,统计和订单历史.

输入参数:

  • pointOfSale: string (需要) - 销售点
  • firstName: string | null (需要) - 客户简介的首字母回落
  • lastName: string | null (需要) - 客户简介的后名
  • email: string | null (需要) - 客户简介的电子邮件倒置
  • phoneNumber: string | null (需要) - 客户简介电话故障

获取客户

import { GetCustomers } from '@deliverart/sdk-js-customer';

const customers = await sdk.call(new GetCustomers({
  query: {
    email: '[email protected]',
    phoneNumber: '+39123456789',
    page: 1
  }
}));

查询参数:

  • firstName?: string - 由名字过滤
  • lastName?: string - 按姓氏过滤
  • email?: string - 通过电子邮件过滤
  • phoneNumber?: string - 按电话号码过滤
  • company?: string - 由IRI公司过滤
  • page?: number - 页号

获取客户端

import { GetCustomerDetails } from '@deliverart/sdk-js-customer';

const customer = await sdk.call(new GetCustomerDetails('customer-123'));

更新客户端

import { UpdateCustomer } from '@deliverart/sdk-js-customer';

const updated = await sdk.call(new UpdateCustomer('customer-123', {
  firstName: 'Jane'
}));

删除客户端

import { DeleteCustomer } from '@deliverart/sdk-js-customer';

await sdk.call(new DeleteCustomer('customer-123'));

客户地址

创建客户端地址

import { CreateCustomerAddress } from '@deliverart/sdk-js-customer';

const address = await sdk.call(new CreateCustomerAddress({
  customer: '/customers/123',
  street: 'Via Roma 1',
  city: 'Milano',
  postalCode: '20100',
  country: 'IT',
  location: {
    latitude: 45.464664,
    longitude: 9.188540
  }
}));

输入参数:

  • customer: string (需要) - 客户IRI
  • street: string (需要) - 街道地址
  • city: string (必须) - 城市
  • postalCode: string (需要) - 邮政编码
  • country: string (需要) - 国家代码(ISO 3166-1 α-2)
  • state?: string (可选)-国家/地区
  • province?: string (可选) - 省
  • location?: { latitude: number, longitude: number } (可选) - GPS 坐标

获取客户界面

import { GetCustomerAddresses } from '@deliverart/sdk-js-customer';

const addresses = await sdk.call(new GetCustomerAddresses({
  query: {
    customer: '/customers/123'
  }
}));

更新客户端地址

import { UpdateCustomerAddress } from '@deliverart/sdk-js-customer';

const updated = await sdk.call(new UpdateCustomerAddress('address-123', {
  street: 'Via Nuova 10'
}));

删除客户端

import { DeleteCustomerAddress } from '@deliverart/sdk-js-customer';

await sdk.call(new DeleteCustomerAddress('address-123'));

业务概况(B2B)

创建客户端

import { CreateCustomerBusinessProfile } from '@deliverart/sdk-js-customer';

const profile = await sdk.call(new CreateCustomerBusinessProfile({
  customer: '/customers/123',
  businessName: 'Acme Inc',
  vat: 'IT12345678901',
  taxCode: 'ACME123',
  billingAddress: {
    street: 'Via Business 1',
    city: 'Milano',
    postalCode: '20100',
    country: 'IT'
  },
  billingData: {
    email: '[email protected]',
    pec: '[email protected]'
  }
}));

输入参数:

  • customer: string (需要) - 客户IRI
  • businessName: string (需要) - 企业名称
  • vat: string (需要) - 增值税号码
  • taxCode?: string (可选) - 税法
  • billingAddress: Address (需要) - 账单地址
  • billingData: BillingData (要求) - 收费联系信息

获取客户端

import { GetCustomerBusinessProfiles } from '@deliverart/sdk-js-customer';

const profiles = await sdk.call(new GetCustomerBusinessProfiles({
  query: {
    customer: '/customers/123'
  }
}));

更新客户端商业文件

import { UpdateCustomerBusinessProfile } from '@deliverart/sdk-js-customer';

const updated = await sdk.call(new UpdateCustomerBusinessProfile('profile-123', {
  businessName: 'Acme Corporation'
}));

删除客户端

import { DeleteCustomerBusinessProfile } from '@deliverart/sdk-js-customer';

await sdk.call(new DeleteCustomerBusinessProfile('profile-123'));

完成使用示例

import { sdk } from './lib/sdk';
import {
  CreateCustomer,
  CreateCustomerAddress,
  CreateCustomerBusinessProfile,
  GetCustomers
} from '@deliverart/sdk-js-customer';

async function customerWorkflow() {
  // Create customer
  const customer = await sdk.call(new CreateCustomer({
    firstName: 'John',
    lastName: 'Doe',
    email: '[email protected]',
    phoneNumber: '+39123456789',
    company: '/companies/123'
  }));

  // Add delivery address
  const address = await sdk.call(new CreateCustomerAddress({
    customer: `/customers/${customer.id}`,
    street: 'Via Roma 1',
    city: 'Milano',
    postalCode: '20100',
    country: 'IT',
    location: {
      latitude: 45.464664,
      longitude: 9.188540
    }
  }));

  // Add business profile (for B2B)
  const businessProfile = await sdk.call(new CreateCustomerBusinessProfile({
    customer: `/customers/${customer.id}`,
    businessName: 'Acme Inc',
    vat: 'IT12345678901',
    billingAddress: {
      street: 'Via Business 1',
      city: 'Milano',
      postalCode: '20100',
      country: 'IT'
    },
    billingData: {
      email: '[email protected]',
      pec: '[email protected]'
    }
  }));

  // Search customers
  const customers = await sdk.call(new GetCustomers({
    query: {
      email: '[email protected]'
    }
  }));

  console.log(`Found ${customers.pagination.totalItems} customers`);
}

许可证

麻省理工学院

版本与发布记录

@deliverart/sdk-js-customer 共发布 324 个版本,首次发布于 2025/06/30;过去 12 个月发布了 232 个版本。

版本发布日期距今
3.0.1latest2026/11/111 天前
3.0.02026/11/092 天前
3.0.0-dev.1dev2026/11/092 天前
2.48.12026/10/2518 天前
2.48.02026/10/2319 天前
2.47.02026/10/2319 天前

关于 @deliverart/sdk-js-customer 的常见问题

@deliverart/sdk-js-customer 是什么?

客户和客户地址管理交付技术JavaScript SDK

如何安装 @deliverart/sdk-js-customer?

在项目目录运行 npm install @deliverart/sdk-js-customer,或使用 pnpm add / yarn add / bun add。

@deliverart/sdk-js-customer 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@deliverart/sdk-js-customer 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@deliverart/sdk-js-customer 可以商用吗?

@deliverart/sdk-js-customer 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@deliverart/sdk-js-customer 的下载量有多少?

根据 npm 官方下载统计,@deliverart/sdk-js-customer 在 2026/10/12 – 2026/11/10 这 30 天内被下载 3,725 次,日均约 124 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@deliverart/sdk-js-customer 还在维护吗?

最新版本 3.0.1 发布于 2026/11/11(1 天前);至今共发布 324 个版本,其中过去 12 个月发布了 232 个;首次发布于 2025/06/30。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。