# 离线功能

WCPOS 使用基于浏览器的数据库（IndexedDB）在每台设备上本地存储商品和客户数据。这意味着 POS 的部分功能无需互联网连接即可使用，而其他功能则需要网络连接。

## 哪些功能可离线使用[​](#what-works-offline "直接链接到 哪些功能可离线使用")

* **浏览商品** — 从缓存数据中搜索、筛选并查看商品详情
* **浏览客户** — 查找客户姓名、电子邮件和地址
* **建立购物车** — 添加商品、更改数量、编辑价格并应用 POS 折扣
* **扫描条码** — 扫描条码以在本地数据库中查找商品
* **查看报表** — 默认（离线）报表类型会根据本地存储的订单生成报表

## 哪些功能需要连接[​](#what-requires-a-connection "直接链接到 哪些功能需要连接")

* **完成结账** — 处理付款并在 WooCommerce 中创建订单需要与服务器通信
* **应用优惠券代码**——优惠券验证在服务器上进行
* **同步数据**——从 WooCommerce 拉取新产品、更新后的价格或新客户
* **登录**——初始身份验证需要连接到你的 WordPress 站点
* **许可证激活**——Pro 许可证检查需要访问 WCPOS 许可证服务器
* **处理退款**——退款不能离线排队；网关和你的店铺都需要可访问（请参阅[退款](/zh-CN/orders/refunds.md)）

## 本地数据库的工作方式[​](#how-the-local-database-works "直接链接到 本地数据库的工作方式")

首次打开 WCPOS 时，它会开始在后台下载你的 WooCommerce 产品和客户。这个过程是渐进式的——POS 使用得越多，本地数据就越完整。

本地数据库：

* **跨会话保留**——浏览器重启和设备重启后数据仍会保留
* **按设备存储**——每台设备都会维护自己的本地副本
* **保持同步**——WCPOS 会定期检查服务器上的更改并拉取更新

如需更多技术细节，请参阅[架构](/zh-CN/reference/architecture.md)参考。

## 连接状态指示器[​](#connectivity-indicator "直接链接到 连接状态指示器")

POS 页眉会显示一个彩色圆点，用于指示连接状态：

* **绿色** — 已连接到服务器，所有功能均可用
* **黄色** — 连接不稳定，部分操作可能较慢
* **红色** — 离线，仅可浏览缓存数据

## 连接中断时会发生什么[​](#what-happens-during-connectivity-loss "直接链接到 连接中断时会发生什么")

如果在使用 POS 时失去互联网连接：

1. **仍可浏览产品和客户**，数据来自缓存。
2. **可以继续创建购物车**并编辑商品。
3. **尝试结账会失败** — POS 需要连接到 WooCommerce 服务器才能处理订单。
4. **未完成的订单会保留**在本地数据库中，直到连接恢复。

## 连接恢复时[​](#when-connection-restores "直接链接到 连接恢复时")

连接恢复后：

* 连接状态指示器会变为绿色。
* 您可以继续结账并完成任何暂存订单。
* 后台同步会恢复，并拉取您离线期间发生的任何商品或客户变更。
* 无需手动操作，WCPOS 会自动处理重新连接。

## 网络连接不稳定时的提示[​](#tips-for-unreliable-connections "直接链接到 网络连接不稳定时的提示")

* **对重要订单使用“保存到服务器”** — 这会立即将订单推送到 WooCommerce，因此即使设备的本地数据库被清除，订单也不会丢失。
* **定期同步** — 如果您知道网络连接时断时续，请在连接良好时同步商品目录，确保本地数据保持最新。
* **考虑使用原生应用** — 桌面和移动应用（可用时）相比浏览器版本可以提供更好的离线稳定性。
