4个稳定版本
1.0.3 | 2022年10月11日 |
---|---|
1.0.1 | 2022年10月7日 |
#821 in 异步
185KB
323 行
TinkoffPay-rs
⭐️ 请给我一个 star ⭐️
这将激励我继续维护和添加 futures
关于 | 技术 | 要求 | 开始 | 使用 | 许可 & 屏幕截图 | 作者
🎯 关于
简单的 tinkoff 集成(卖家收到支付表单的链接并将买家重定向到该链接);注意:使用回调方法
🚀 技术
本项目使用了以下工具
✅ 要求
🏁 开始
# Clone this project
$ git clone https://github.com/KM8Oz/tinkoffpay-rs
# Access
$ cd tinkoffpay-rs
# Install dependencies
$ cargo install --path=.
# Run the project
$ cargo test request_demo_url -- --nocapture
# The server will initialize in the <https://127.0.0.1:3000>
✅ 使用
use crate::{Payments, Receipt, Taxation, TaxNDK};
// should be an async fn
let payment_url = Payments::default()
.build(
"TinkoffBankTest",
"https://bulkus.ru/pay_back",
// Success or Fail URL (GET) = [your callback url]?order_id=[orderid]
// payment catch url (POST) has those params:
// Json(Object {
// "Amount": Number(10000),
// "CardId": Number(130550983),
// "ErrorCode": String("0"),
// "ExpDate": String("1122"),
// "OrderId": String("278600"),
// "Pan": String("430000******0777"),
// "PaymentId": Number(1866123460),
// "Status": String("CONFIRMED"),
// "Success": Bool(true),
// "TerminalKey": String("1639044907391DEMO"),
// "Token": String("711cd4fa0df2afa8a69a56884e9d902eb882c9a01af56498fc6bfdefaf9eef8d")
// })
"210950",
"Подарочная карта на 1400.00 рублей")
.set_amount(500) // in ruble
.set_customer("+71234567890", "[email protected]")
.set_receipt(
Receipt::default()
.build(
"[email protected]",
"+71234567890",
"[email protected]",
Taxation::OSN
)
.add_item(
"Наименование товара 1", // name
1, // quantity
100, // in ruble
TaxNDK::None
)
.add_item(
"Наименование товара 2", // name
2, // quantity
200, // in ruble
TaxNDK::None
)
)
.to_url().await;
match payment_url.clone() {
Ok(m) => {
println!("payment url: {:?}", m);
},
Err(err) => {
println!("payment error: {:?}", err);
}
}
📝 许可证
本项目采用 MIT 许可。更多详细信息,请参阅 LICENSE 文件。
由 @KM8Oz 用 ❤️ 制作

依赖
~6–17MB
~229K SLoC