@chargebee/atomicpricing

中文文档
1.0.4发布于 2025/09/29TypeScriptESM + CJS近 30 天下载 4073

JS 为您的原子定价主页包装

中文使用文档
文档目录21 节
  1. 目录
  2. 香草AP
  3. 自动拖入( 建议)
  4. 受控输入
  5. 反应( CSR)
  6. 安装
  7. 使用量
  8. Next.js (瑞典语)
  9. 其他大众框架
  10. 职能
  11. init
  12. openPricingPage
  13. setVisitor
  14. setBillingAddress
  15. setShippingAddress
  16. setQuantity
  17. setBusinessEntity
  18. setPriceVariant
  19. setSubscriptionAttributes
  20. 脚本(用于香草整合)
  21. 定价页面

给联署材料定价

联合来文包装 充电器定价表。 。 。 .

⚠️ 折旧

此软件包已贬值,不会收到任何进一步的更新. 迁移到 充电蜂.js 定价表 换句话说.

目录

开始

香草AP

<script
  src="https://js.chargebee.com/atomicpricing/pricify.js"
  data-pricify-auto-bootstrap="true"
></script>
<div
  id="pricify-hosted-pricing-page"
  data-pricify-site="01GV57EG6A1V28QR8KYBK8FE3J"
  data-pricify-pricingpage="01GV57HY1KM0ZVBSMR7SCV6VDF"
></div>

受控输入

<script src="https://js.chargebee.com/atomicpricing/pricify.js" defer></script>
<script>
  if (
    /**
     * whenever you are ready
     * If you are planning to use onLoad, then use data-pricify-auto-bootstrap="true" instead
     */
  ) {
     window.Pricify.init();
   }
</script>
<div
  id="pricify-hosted-pricing-page"
  data-pricify-site="01GV57EG6A1V28QR8KYBK8FE3J"
  data-pricify-pricingpage="01GV57HY1KM0ZVBSMR7SCV6VDF"
></div>

反应( CSR)

安装

npm install --save @chargebee/atomicpricing

使用量

import Pricify from '@chargebee/atomicpricing';
import { useEffect } from 'react';

export default function PricingPage() {
  useEffect(() => {
    Pricify.init();
  }, []);

  return (
    <div
      id='pricify-hosted-pricing-page'
      data-pricify-site='01GV57EG6A1V28QR8KYBK8FE3J'
      data-pricify-pricingpage='01GV57HY1KM0ZVBSMR7SCV6VDF'
    ></div>
  );
}

Next.js (瑞典语)

注意, 您需要挂载潜水器, 然后调用 Pricify init 以防止水分错误

import Pricify from "@chargebee/atomicpricing";
import { useEffect, useState } from "react";

export default function PricingPage() {
  const [hasMounted, setHasMounted] = useState(false);

  useEffect(() => {
    setHasMounted(true);
  }, []);

  useEffect(() => {
    if (hasMounted) {
      Pricify.init();
    }
  }, [hasMounted]);

  return (
    <>
      {hasMounted && (
        <div
          id="pricify-hosted-pricing-page"
          data-pricify-site="01GV57EG6A1V28QR8KYBK8FE3J"
          data-pricify-pricingpage="01GV57HY1KM0ZVBSMR7SCV6VDF"
        ></div>
      )}
  )
}

很快会有更多例子出现!


给对象定价

职能

init

3⁄4 ̄ ̧漯B.

openPricingPage

此功能打开了定价页面响应的定价页面. 当您想要使用会话上下文打开定价页面时,此函数是有用的 。 调用此函数时, 请确定设置 data-pricify-integrationtype="api" 在定价页div中.

Pricify.openPricingPage({
  pricingPage: function() {
    return fetch('your_backend/generate_pricing_page_session', {
      method: "POST",
      data: data,
    }).then(res => res.json()),
  },
});

setVisitor

设定这些访问者属性为定价页面上下文, 并将其传递给 Chargebee 退出 。 访客被转换为客户,从而根据Courgebee客户记录中支持的内容来遵循属性. (所有这些都是可选的)

属性需求类型说明
firstName虚假字符串名称
lastName虚假字符串姓
email虚假字符串电子邮件地址
phone虚假字符串电话号码
company虚假字符串公司名称
customFields虚假映射 < 字符串, 字符串 > 编号 >客户定制场宣布为主管 键为格式 cf_field_name

Note: setVisitor只能用于为新客户设置属性.

examples

为嵌入在一页的所有定价页面设置访问者属性 。 如果您的页面中只有一个定价页面嵌入, 或者您需要为所有定价页面设置相同的访问者属性, 您可以使用此选项 .

Pricify.setVisitor({
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phone: '+1-123-456-7890',
  company: 'Chargebee',
  customFields: {
    cf_field_name: 'field_value',
  },
});

如果您需要设置特定定价页面的访客属性, 您可以通过额外的属性 siteId 财务报告和审定财务报表 pricingPageId 作为设置 Visitor 函数的选项.

const data = {
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phone: '+1-123-456-7890',
  company: 'Chargebee',
  customFields: {
    cf_field_name: 'field_value',
  },
};
const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setVisitor(data, options);

Pro Tip: 您可以通过在您的充电蜂账户中检查出字段设置( 配置充电蜂 > 检查和自我服务门户 > 字段) 来控制充电蜂检查出字段的行为 。 您可以以下列方式配置字段:

  • Use as Hidden Parameter数字 :
    • 退出时不显示字段 .
    • 通过 setVisitor () 传递的值被存储到字段
  • Read-only数字 :
    • 退出时可见字段
    • 字段预填有设置的 Visitor () 值 .
    • 用户无法编辑这些值 .
  • Show数字 :
    • 退出时可见字段
    • 字段预填有设置的 Visitor () 值 .
    • 用户可以编辑这些值.

setBillingAddress

将计费地址设置为定价页面上下文,并传递给Chargebee检查出账. 账单地址在结账时保存在客户记录上. (所有这些都是可选的)

属性需求类型说明
firstName虚假字符串名称
lastName虚假字符串姓
email虚假字符串电子邮件地址
phone虚假字符串电话号码
company虚假字符串公司名称
line1虚假字符串地址1
line2虚假字符串地址2
line3虚假字符串地址3行
city虚假字符串取出城名为相.
stateCode虚假字符串这个 ISO 3166-2 状态/省代码 没有国家前缀。 目前为美国、加拿大和印度提供支助。 例如,亚利桑那(美国) state_code 作为 AZ (无) US-AZ) 泰米尔纳德邦(印度),设为 TN (无) IN-TN不列颠哥伦比亚(加拿大),设为 BC (无) CA-BC) (中文(简体) ).
state虚假字符串州/行省名. 由Chargebee自动设定,用于美国、加拿大和印度 state_code 提供.
zip虚假字符串Zip或邮政编码. 根据规则验证字符数 在此指定。 。 。 .
country虚假字符串顾客的地址 一定是其中一个 ISO 3166 alpha-2 国家代码。 。 。 .
如果您已经启用 欧盟增值税 在2021年或以后,或 手动启用 brexit 配置,然后 XI (代码: 联合王国 -- -- 北爱尔兰)作为选项提供.
validationStatus虚假字符串地址核查情况.
- 有效: 地址已被成功验证 .
- 部分 验证:地址对应纳税额有效,但对运输没有验证.
- 无效:地址无效.
- 未验证的:地址尚未验证.

Note: setBillingAddress只能用于为新客户设置属性. 原子定价目前不支持更新已有客户/订阅.

examples

为嵌入在一页的所有定价页面设置访问者属性 。 如果您的页面中只有一个定价页面嵌入, 或者您需要为所有定价页面设置相同的访问者属性, 您可以使用此选项 .

Pricify.setBillingAddress({
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phone: '+1-123-456-7890',
  company: 'Chargebee',
  city: 'Chennai',
  stateCode: 'TN',
  country: 'IN',
});

如果您需要为嵌入的特定定价页面设置计费属性, 您可以通过额外的属性 siteId 财务报告和审定财务报表 pricingPageId 作为设置 BillingAddress 函数的选项.

const data = {
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phone: '+1-123-456-7890',
  company: 'Chargebee',
  city: 'Chennai',
  stateCode: 'TN',
  country: 'IN',
};
const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setBillingAddress(data, options);

setShippingAddress

将运入地址设置为定价页面上下文, 并将其传递给Chargebee的检查。 发货地址在结账时保存在客户记录上 (所有这些都是可选的)

属性需求类型说明
firstName虚假字符串名称
lastName虚假字符串姓
email虚假字符串电子邮件地址
phone虚假字符串电话号码
company虚假字符串公司名称
line1虚假字符串地址1
line2虚假字符串地址2
line3虚假字符串地址3行
city虚假字符串取出城名为相.
stateCode虚假字符串这个 ISO 3166-2 状态/省代码 没有国家前缀。 目前为美国、加拿大和印度提供支助。 例如,亚利桑那(美国) state_code 作为 AZ (无) US-AZ) 泰米尔纳德邦(印度),设为 TN (无) IN-TN不列颠哥伦比亚(加拿大),设为 BC (无) CA-BC) (中文(简体) ).
state虚假字符串州/行省名. 由Chargebee自动设定,用于美国、加拿大和印度 state_code 提供.
zip虚假字符串Zip或邮政编码. 根据规则验证字符数 在此指定。 。 。 .
country虚假字符串顾客的地址 一定是其中一个 ISO 3166 alpha-2 国家代码。 。 。 .
如果您已经启用 欧盟增值税 在2021年或以后,或 手动启用 brexit 配置,然后 XI (代码: 联合王国 -- -- 北爱尔兰)作为选项提供.
validationStatus虚假字符串地址核查情况.
- 有效: 地址已被成功验证 .
- 部分 验证:地址对应纳税额有效,但对运输没有验证.
- 无效:地址无效.
- 未验证的:地址尚未验证.

Note: setShippingAddress只能用于设置新订阅的属性. 原子定价目前不支持更新已有客户/订阅.

examples

为嵌入在一页的所有定价页面设置访问者属性 。 如果您的页面中只有一个定价页面嵌入, 或者您需要为所有定价页面设置相同的访问者属性, 您可以使用此选项 .

Pricify.setShippingAddress({
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phone: '+1-123-456-7890',
  company: 'Chargebee',
  city: 'Chennai',
  stateCode: 'TN',
  country: 'IN',
});

如果您需要设置特定定价页面的传输属性, 您可以通过额外的属性 siteId 财务报告和审定财务报表 pricingPageId 作为设置ShippingAddress 函数的选项.

const data = {
  firstName: 'John',
  lastName: 'Doe',
  email: '[email protected]',
  phone: '+1-123-456-7890',
  company: 'Chargebee',
  city: 'Chennai',
  stateCode: 'TN',
  country: 'IN',
};
const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setShippingAddress(data, options);

setQuantity

在定价页上设定所有基于数量计划的初始数量.

examples

设置嵌入单页的所有定价页面的数量 。 如果您的页面中只有一个定价页面嵌入, 或者您需要为您的所有定价页面设置相同的数量, 您可以使用此页面 .

Pricify.setQuantity(10);

如果您需要设置嵌入的特定定价页面的数量, 您可以通过额外的属性 siteId 财务报告和审定财务报表 pricingPageId 作为设置数量函数的选项.

const quantity = 10;
const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setQuantity(quantity, options);

Pro Tip: 一旦您将初始数量设定为设定的数量( ), 请考虑使用数量滑动器来进行客户控制 。 这种数量滑动器可以通过原子定价上的计划设置来切换.

  • 启用滑动器时,最初应用了设定为"数量"的量组,但用户仍然可以使用滑动器来调整.
  • 如果滑动器被禁用, 将直接使用设置为数量( ) 的数量 .

setBusinessEntity

设置企业实体的定价页面,然后将其传递给Chargebee的检查。 商业实体在离职结束时被保存在客户和订阅记录上.

examples

设置嵌入单页的所有定价页面的商业实体 。 如果您的页面中只有一个定价页面嵌入, 或者您需要为您的所有定价页面设置相同的商业实体, 您可以使用此选项 .

Pricify.setBusinessEntity('business_entity_id');

如果您需要设置嵌入特定定价页面的商业实体, 您可以通过额外的属性 siteId 财务报告和审定财务报表 pricingPageId 作为设置商业实体函数的选项.

const businessEntityId = 'business_entity_id';
const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setBusinessEntity(businessEntityId, options);

setPriceVariant

设置 价格变式 在定价页上显示的计划。 如果指定 PRICE_VARIANT_ID 计划不可用,使用计划的默认价格变体。 如果没有默认价格变体,则计划不显示在定价页上.

实例

您可以以两种方式使用此功能:

只指定价格变量
  1. 设价变相.
Pricify.setPriceVariant('PRICE_VARIANT_ID');

替换 PRICE_VARIANT_ID 与"Courgebee Billing"中价格变体的ID.

  1. 通过调用渲染定价页面 openPricingPage() 或者说 init()。 。 。 .
指定价格变量和定价页
  1. 设置定价页和价格变量以显示.
const priceVariantId = 'PRICE_VARIANT_ID';
const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setPriceVariant(priceVariantId, options);

替换 PRICE_VARIANT_ID 与"Courgebee Billing"中价格变体的ID.

  1. 通过调用渲染定价页面 openPricingPage() 或者说 init()。 。 。 .

setSubscriptionAttributes

在定价页面上下文中设置订阅级别属性,并转发给Chargebee的取出. 这些属性与Courgebee的订阅记录相关,并将被用在通过取出创建新订阅时.

注:设置订阅属性 只设置新订阅的自定义字段.

属性需求类型说明
customFields虚假映射 < 字符串, 字符串 > 编号 >订阅自定义字段 。 键为格式 cf_field_name

Note: 设定订阅属性 只能用于为新订阅设置属性.

examples

为所有嵌入单页的定价页面设置订阅属性 。 如果您的页面中只有一个定价页面嵌入, 或者您需要为所有定价页面设置相同的订阅属性, 您可以使用此选项 .

Pricify.setSubscriptionAttributes({
  customFields: {
    cf_field_name: 'field_value',
  },
});

如果您需要为嵌入的特定定价页面设置订阅属性, 您可以通过额外的属性 siteId 财务报告和审定财务报表 pricingPageId 作为设置 Visitor 函数的选项.

const data = {
  customFields: {
    cf_field_name: 'field_value',
  },
};

const options = {
  siteId: '01GV57EG6A1V28QR8KYBK8FE3J',
  pricingPageId: '01GV57HY1KM0ZVBSMR7SCV6VDF',
};

Pricify.setSubscriptionAttributes(data, options);

数据属性

脚本(用于香草整合)

属性需求类型说明
data-pricify-auto-bootstrap虚假字符串如果您希望脚本将定价页面从框中解出, 请设置为真实 。 如果你不提供这个,你需要打电话 window.Pricify.init() 当你想要打开定价页面时

定价页面

属性需求类型说明
data-pricify-sitetrue字符串你的网站身份 您可以在您的主机页面链接中找到 https:// controducted.atomicprice.com/ sites/{siteId}/pricing/{pricingPageId}
data-pricify-pricingpagetrue字符串定价页面标识. 您可以在您的主机页面链接中找到 https:// controducted.atomicprice.com/ sites/{siteId}/pricing/{pricingPageId}
data-pricify-viewport-width虚假字符串如果您想要限制主机页面宽度, 请设定此属性 。 您可以通过 px, em, rem 或% 。 例如 : 100%。如果希望主页利用可用的宽度,请保持空置.
data-pricify-viewport-height虚假字符串如果您想要限制主机页面高度, 请设置此属性 。 如果您希望主机页面自动拉伸以适应 。 你可以通过px,em,rem或%. 等:100%. 如果这样,可能会出现滚动条。 因此, we recommend not setting this。 。 。 .
data-pricify-viewport-defaultheight虚假字符串设定此属性以设定加载器屏幕的高度, 直到加载定价页 。 您需要根据屏幕大小设置此选项 。 这是一个可选参数 。 未通过则默认为 600px。 。 。 .
data-pricify-currency虚假字符串将选定的货币设置为所提供的货币。 例如: USD。如果没有提供或无效,则默认为第一个货币
data-pricify-period虚假字符串设定提供值的期间。 举个例子 如果您想要将所选频率设置为1个月,请提供 1 在这里。 如果不提供或无效,默认为第一个可用频率。 如果提供期间单位而未提供期间,则默认为1
data-pricify-periodunit虚假字符串设定提供值的期间。 举个例子 如果您想要将所选频率设置为1个月,请提供 month 在这里。 如果不提供或无效,默认为第一个可用频率.
data-pricify-showcurrencydropdown虚假字符串默认 true。通过 false 隐藏货币下跌.
data-pricify-autoselectlocalcurrency虚假字符串默认 false。通过 true 以访问者的地理位置自动设定货币。 如用户来自美国, 且此旗帜被设定为美元, 若在定价页面中可用, 将选择美元为货币 。 同样,如果另一访客来自印度,则将设立印度国家情报局。 如果定价页上没有国家访问者的货币,那么货币下跌中的第一个货币将被选作违约.
data-pricify-integrationtype虚假字符串过 api 以会话上下文打开定价页面。 当设置集成类型时,站点 id 和定价 id 属性不适用 api
data-pricify-gtmid虚假字符串设置 Google 标签管理器 ID GTM-XXXXXXX 用于嵌入式定价页面和应用程序内检出体验.

版本与发布记录

@chargebee/atomicpricing 共发布 37 个版本,首次发布于 2023/03/08;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.4latest2025/09/291.1 年前
1.0.32025/08/141.2 年前
1.0.22025/07/251.3 年前
1.0.12025/07/251.3 年前
0.10.32025/06/241.4 年前
0.10.22025/05/141.5 年前

关于 @chargebee/atomicpricing 的常见问题

@chargebee/atomicpricing 是什么?

JS 为您的原子定价主页包装

如何安装 @chargebee/atomicpricing?

在项目目录运行 npm install @chargebee/atomicpricing,或使用 pnpm add / yarn add / bun add。

@chargebee/atomicpricing 支持 TypeScript 吗?

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

@chargebee/atomicpricing 支持 ESM 还是 CommonJS?

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

@chargebee/atomicpricing 可以商用吗?

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

@chargebee/atomicpricing 的下载量有多少?

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

@chargebee/atomicpricing 还在维护吗?

最新版本 1.0.4 发布于 2025/09/29(1.1 年前);至今共发布 37 个版本,其中过去 12 个月发布了 0 个;首次发布于 2023/03/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。