API文档

强大的RESTful API,让您的业务系统与WordPos无缝集成,实现数据互通和业务自动化

API概览

完整、灵活、易用的API接口体系

为开发者而生

WordPos API提供完整的业务功能覆盖,采用RESTful设计风格,支持JSON数据格式,让您能够轻松集成现有系统,构建自定义业务流程。

  • RESTful API设计,易于理解和使用
  • 完整的业务功能API覆盖
  • 实时数据同步和双向通信
  • 完善的错误处理和状态码
  • 详细的文档和代码示例
  • 多语言SDK支持
HTTP
GET https://api.wordpos.com/v1/products
Authorization: Bearer {access_token}
Content-Type: application/json

{
  "success": true,
  "data": [
    {
      "id": "12345",
      "name": "商品名称",
      "price": 29.99,
      "stock": 100
    }
  ],
  "pagination": {
    "page": 1,
    "total": 500
  }
}

核心接口

常用API接口一览,更多详情请参考完整文档

GET /v1/products
获取商品列表,支持分页、搜索、筛选等功能

请求参数

参数名 类型 必需 说明
page Integer 可选 页码,默认为1
limit Integer 可选 每页数量,默认为20
search String 可选 搜索关键词
category_id String 可选 分类ID
POST /v1/products
创建新商品

请求参数

参数名 类型 必需 说明
name String 必需 商品名称
price Decimal 必需 商品价格
barcode String 可选 商品条码
category_id String 可选 分类ID
GET /v1/orders
获取订单列表,支持按时间、状态、客户等条件筛选

请求参数

参数名 类型 必需 说明
start_date Date 可选 开始日期
end_date Date 可选 结束日期
status String 可选 订单状态
customer_id String 可选 客户ID
POST /v1/orders
创建新订单

请求参数

参数名 类型 必需 说明
items Array 必需 订单商品列表
customer_id String 可选 客户ID
payment_method String 必需 支付方式
total_amount Decimal 必需 订单总金额
GET /v1/customers
获取客户列表,支持按等级、积分、注册时间等条件筛选
POST /v1/customers
创建新客户档案
GET /v1/inventory
获取库存信息,查看当前库存水平和预警状态
PUT /v1/inventory/{product_id}
更新商品库存数量

身份认证

安全可靠的API认证机制

OAuth 2.0认证

采用标准的OAuth 2.0认证协议,确保API调用的安全性。每个应用需要获取访问令牌才能调用API。

  • 1
    注册应用:在开发者控制台创建应用,获取Client ID和Client Secret
  • 2
    获取授权:使用Client ID和Client Secret获取访问令牌
  • 3
    调用API:在请求头中携带Bearer Token进行API调用
  • 4
    刷新令牌:在令牌过期前使用刷新令牌获取新的访问令牌
cURL
curl -X POST https://api.wordpos.com/oauth/token \
  -H "Content-Type: application/json" \
  -d '{
    "grant_type": "client_credentials",
    "client_id": "your_client_id",
    "client_secret": "your_client_secret"
  }'

# 响应示例
{
  "access_token": "eyJhbGciOiJSUzI1NiIs...",
  "token_type": "Bearer",
  "expires_in": 3600,
  "refresh_token": "def50200..."
}

速率限制

合理的API调用频率限制,确保系统稳定运行

1000
每小时请求次数
100
每分钟请求次数
10
每秒并发连接
Webhook调用

多语言SDK

官方SDK支持,让集成更加简单快捷

🐍

Python

简洁优雅的Python SDK,支持同步和异步调用

查看文档 →

Java

企业级Java SDK,完善的异常处理和日志记录

查看文档 →
💻

JavaScript

轻量级JS SDK,支持Node.js和浏览器环境

查看文档 →
🔷

C#

现代化的.NET SDK,支持最新C#特性

查看文档 →
📱

PHP

轻量级PHP SDK,快速集成到现有项目

查看文档 →
🌐

Go

高性能Go SDK,支持并发和流式处理

查看文档 →

代码示例

常见场景的实现示例,快速上手

获取商品列表
# Python示例
from wordpos_sdk import WordPosClient

client = WordPosClient(
    client_id='your_client_id',
    client_secret='your_client_secret'
)

products = client.products.list(
    page=1,
    limit=20,
    search='手机'
)

for product in products.data:
    print(f"{product.name}: ¥{product.price}")
创建订单
// JavaScript示例
const WordPos = require('wordpos-sdk');

const client = new WordPos.Client({
  clientId: 'your_client_id',
  clientSecret: 'your_client_secret'
});

const order = await client.orders.create({
  items: [
    { product_id: '12345', quantity: 2, price: 29.99 }
  ],
  payment_method: 'wechat',
  total_amount: 59.98
});

console.log('订单创建成功:', order.id);
Webhook处理
// Java示例
@PostMapping("/webhook")
public ResponseEntity handleWebhook(
    @RequestBody String payload,
    @RequestHeader("X-WordPos-Signature") String signature
) {
    if (!webhookValidator.verify(payload, signature)) {
        return ResponseEntity.status(401).build();
    }

    OrderEvent event = webhookParser.parse(payload);
    // 处理订单事件
    return ResponseEntity.ok().build();
}
库存更新
# PHP示例
use WordPos\WordPosClient;

$client = new WordPosClient([
    'client_id' => 'your_client_id',
    'client_secret' => 'your_client_secret'
]);

$result = $client->inventory->update('product_123', [
    'quantity' => 50,
    'operation' => 'set',
    'reason' => 'manual_adjustment'
]);

echo "库存更新成功: {$result['new_quantity']}";

快速开始

5分钟完成API集成,开始您的开发之旅

1

注册开发者账户

访问WordPos开发者平台,注册开发者账户并完成实名认证

2

创建应用

在控制台创建新应用,获取Client ID和Client Secret

3

获取访问令牌

使用API密钥获取访问令牌,用于后续API调用

4

选择SDK

下载适合您开发语言的SDK,简化开发过程

5

开始开发

参考文档和示例代码,开始您的API集成开发