Skip to main content

Crate wxpay_rs

Crate wxpay_rs 

Source
Expand description

微信支付 API v3 Rust SDK

wxpay-rs 是一个用于微信支付 API v3 的 Rust SDK,提供支付、订单查询、退款、分账和批量转账接口。

§特性

  • 类型安全 - 使用 Rust 类型系统确保 API 调用的安全性
  • 异步支持 - 基于 Tokio 的全异步实现
  • 连接复用 - 多个业务服务共享 HTTP 连接池
  • 平台验签 - 使用受信任的平台证书或公钥验证响应和通知

§快速开始

use wxpay_rs::{WxPayClient, WxPayConfig};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // 创建配置
    let config = WxPayConfig::builder()
        .app_id("wx88888888")
        .merchant_id("1900000109")
        .api_v3_key("abcdefghijklmnopqrstuvwxyz123456")
        .private_key_from_file("path/to/private_key.pem")
        .cert_serial_number("CERT123456")
        .platform_public_key(
            "PUB_KEY_ID_YOUR_PLATFORM_KEY_ID",
            std::fs::read("path/to/wechatpay_public_key.pem")?,
        )
        .timeout(30) // 秒
        .build()?;

    // 创建客户端
    let client = WxPayClient::new(config).await?;

    // 使用 JSAPI 服务
    let jsapi = client.jsapi();
    let _ = jsapi;

    Ok(())
}

§模块结构

  • config - 配置模块
  • client - 客户端模块
  • auth - 认证模块(签名、验签)
  • crypto - 加解密模块
  • cert - 证书管理模块
  • http - HTTP 客户端模块
  • services - 业务服务模块
  • notify - 通知处理模块
  • utils - 工具模块
  • error - 错误类型模块

Re-exports§

pub use client::WxPayClient;
pub use client::WxPayClientBuilder;
pub use config::Environment;
pub use config::NotifyConfig;
pub use config::NotifyConfigBuilder;
pub use config::WxPayConfig;
pub use config::WxPayConfigBuilder;
pub use error::WxPayError;
pub use error::WxPayResult;
pub use services::transport::TransportEvent;
pub use services::transport::TransportObserver;

Modules§

auth
认证模块
cert
证书管理模块
client
客户端模块
config
微信支付配置模块
crypto
加解密模块
docs
README 使用示例的文档与编译入口。
error
微信支付 SDK 错误类型定义
http
HTTP 客户端模块
notify
通知处理模块
services
业务服务模块
utils
工具模块

Constants§

NAME
SDK 名称
VERSION
SDK 版本号

Functions§

name
获取 SDK 名称
version
获取 SDK 版本信息