API 概览
欢迎使用 EFundFlow API!本手册将帮助你快速开始接入我们的支付服务。
快速开始
1. 获取 API 密钥
首先,你需要在 EFundFlow 控制台获取 API 密钥:
- 测试环境密钥:用于开发和测试,以
sk_test_
开头 - 生产环境密钥:用于正式环境,以
sk_live_
开头
2. 设置请求头
所有 API 请求必须包含以下请求头:
Authorization: Bearer YOUR_SECRET_KEY
x-merchant-account-id: YOUR_ACCOUNT_ID
Content-Type: application/json
3. 基础 URL
- 测试环境:
https://sandbox.efundpay.com/v4
- 生产环境:
https://api.efundpay.com/v4
4. 测试环境账号
API接入模式测试账号
- API Key:
sk_test_1020250713347001
- X-MERCHANT-ACCOUNT-ID:
202507131000347001
- RSA-PRIVATE-KEY:
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCQjinsvBosrudcBZg7hfKVd6ZjkIB0KCDsKUtnNuYAi6JiA6MdohJjoumFcorXGthHbak5ObQzPy/KLXMQN+NDUadGYHx7JyJBWteCojQtXe64WhpXg/Fp6iWgzWq/xL/EDmkCCmMjdNjLc8S9JPz8CKI5VUgRMtgiOq1NoUtWHqdWXDL716K9bfq168UjB7CUWap4vVDxWGs3yyCxRdtKVUpZ7iLT1kJsen1otHX40BSXn/eUKM/Gu4onTVeS5Vv0wYyTGTOcLG99jcknP80zLYQ/RGv6iw7AncUTz2evKXTWkELknkfIq92Tewd4tM7F4LhOpVLhhyrSf1YC7//3AgMBAAECggEAbTBlLKN85emLaq/zKGrqLMp/DU/WJ2c0Tw52HVWTcDAJDR4QNM76MvaYi6tUglyNp46Gt2oF2nvM/ltMQaDlcjEYOAmjnWaW8mTKyqr43JfKPMgag6ZvUQCDQa5IBuh3rYDxApCUB/E33J3qqrBow3tGBiaL1CnipiBKTYwbGsXMtGk1nIwCdy7hXBqyP/AIPVTI2idpy1j2FwkHKbQA8fB81dKqIa4Ro2DLafAhZg5n8pF+w9ri4iI7SC7Nll7BMagdCSShruUWgN60aeou1lwf3ukjHBxY0iwj/Q9BZv7RDOi7SdhB1IEam70IWV24oqyH4+37BnpOF4SEFk0WKQKBgQDxGUrY6gucm0FqDcpWixG09RNuuv73Mm2bkiL6i6eDAKXduTkS1xSMMEh1cXPtf1B4bZss6+0oq/ccpQk5Ra0w+kjoEnjzX6y8PYDwesU53KlqbqlAIRn3WulUYclHmPXkA99jx/UpYI/kE33R9UGEtl8IoSpWZfVxIxCFQtTkEwKBgQCZfVf2Sd4GioFfjz2Gwu8MELrKalUmIur9Z1iSB2v+I+VD1Ykm/Op8mkrEWzUTothIt+9tRSfo4SmVXNsP/yPI0rJHi44MaTTwuQ9ZDkmjy7SU4OqtJL7RZPx4zEcjSVnEQluv6NnF5OfrLmA4ZFLELmT/Xyz50n0NYqeyn21JDQKBgQC4lbOfFLjlIlxXlM1HqttYnpVNHm9b1EjkZWLQTSFng5R5h3hxuycpGUIwYDbwKpvyR4AZSVtd2yKq1JOWPIkXSVeODa56LdKyn6fa9TOQVCeEq8p6pZ0aqoifKOqQHUSMWIar/wfssNgZNu8KUunhcDqcAb/HO/JItx7L19nj7wKBgBN7IzTxPyrZXX5Bce+uwiRn4y1ZvaDvgZ/UBBvUsVI6QBkR+yxloWVbN+4gHWZ2nrjsD4lw45XdLif09yDaozIT++i0v7y3ha6f7mDBPXt6mVrkCSUcqtNs29aBJu5Fmw0b1wNGrI0/dmgVJMVDhnW75bm73LuAibqvMNWtAnPpAoGBAMVZ4i1W9x6SGC3xHeLIj3TtzGf65tox1VyHb1SctI8I5XmSR9tmutO6PKcGLOLWLAVBn5rqkjMzdCZ0Uswx12b/0tPJdtUnk4kUWM+T9+AMytu90AvEYN0n/q9Voanct6qYERdas2o2enOMOV7qBdTZij9YWHornb10mUGu5Rp8
收银台接入模式测试账号
- API Key:
sk_test_1020250722356001
- X-MERCHANT-ACCOUNT-ID:
202406080000459001
- RSA-PRIVATE-KEY:
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC27lhqunZAYgyNa6LOITio9ObWek5MPAGdJS5zEHg6pdwZ+2VxryFO9dItIPR19KOEL53YuP6vMYg1XR9MDMmGHzKVskcpjU4vejZ3EP12cTD2QhERFGqytaphH5v2rrMF1eIGsZXAkxefMenE2yIVyDHjexhXDVlxzSwLQaeF5dRf649d0KvDK7Dvx60Ib5zJWYIm648+5fdc54KpktJLi+pDpCbUtZSLr+WHJtsuoJfGNdtQfXXsF7dj/lppHAiXIdQ99P7gwrzjSrI7eZML8wQ4tEvvsrCQ51DZ7uh/TA/W+mJH6pUowoRJ9sr9N/3DWTK/tYM4RWQd4tVbyoU5AgMBAAECggEBAJ+/LmktofyBYzLQjyDw8/jfvQIJVnzOXh5sDM8gz81vb/Ekj6ciZ7T7iGougCzN0UmrB23tx0MYvzjStHUGKao9bkA5qllH88IUOKHrrVwUZsx2T08aBD9B06LzJpDaaK2s5LAxvnOoQBWeUeW981sQMzjTEyNaHgT6Rf8ie3e6DZ1BJ/rAwWH3n/urVGObO/yw4AUAtxrqJZigPUphGuybOOtHksvbC8Ov+yOXb7Gu/7hD6CgMfUHXdzZ/XEbHoav/8If3UEYgwmvBpVDKIYwIJ/FN8CpLnj6wqKuls6ijVZp/D6ff3IivDUJHSBfuLs0ARpGGQQsPOzHcIS7eMQECgYEA3OFh07G62bXNiHdGrh2xTksE6foUBx+dXWk7Hb1ZruF54aGW/YHUfQucKxA4WhqFFqRDIExGFY93irztqKVgafiUTQnteQwnyN0b/mH7SNpqn5lEe1pXWAhZwCgU3yHgb6+9sHqcAE+zgyPUmTngeM80VuQdkCvOpE2Zyz6/yKECgYEA1ARKCiF7odQ3CDflwtNcFWh5uhhg8L7FVybOYHJmqONyhmxc8XvvICgtZC4tt39sRyIaF4inKYwGHbsCGYR70ViQYS2GtJKJlhB6rYXN2My3BCv3/L2mxxyODRlm/dYSyMY1ReJeVFNQlJSzo9peP4MwXHAdXI8LvPfjgSEVfZkCgYAZw0ABzQ0aL5ZVgHQCAvyXQTDFiaGkYw+bwZZflaJMP4hTxOEzmF0MaLpCW5X3DHjRdz9NGRhjk2RCDl85+HASbCgABFRqdfx99Sw6s3r3uGIPU3UlXhgp8G9ndkVY8T6YSEs7tlFTx/gMJ7W4WYPRE3nrWJgKJNHpYBO8HQmJgQKBgEKgUnAak5KIcP7ZKg/ugcqMeWxcyuH84WEA5evzJ4W9bDkIBrEwhDXzykfoJx+6IFm+QrrQi8+HnEhtgzxnoM1p6n1PZDyMrEYHSbYMDWMq+fyKoLTBGI8LzywYpn/wbRjBCO68M26GfBUlIcrFDcchv+ncpa13mnW45LqonetJAoGBAIJEYAoyr7MgJyXwGY7+MWlKW5Cra+mo4J04WgRrAoxNWL6oTcbp7hzb5L/nsXr5fAtJjFHXwv018VZYyojGlsfHRlpD/oQ69OQDKhcbMdNWuoZbZAWZQx6p/4PGTi1Twov6yM3HpKXYsaG43ptLp/sBljE6tnbK9FKwejEWHd96
- WEBHOOKS-PUBLIC-RSA-KEY:
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzt0PhRwRWIbPdmuj0lTj8MEn+U2RxtL1nbkAxDfxMsIVtQOQXO3yhLUm/y0BhazPrKYj1jKm7E7NHDxd+q/cjqgBOSjdwX/yu+2VPbftdFRBQtyXPorKniZO1FIU5PQh3rZnbp5PlTrACa1b3NzMvv0i53eYVXF/2B0JKuRyTjvWu4578teJRwqLJOh9xwQmj52T5PWBVdjj/gopamwLOa0ZncL4T+KN9dBDmHFMj5jQbWvkMuGvPcb6onuD7+oqfUyzIAVkOjuhkq86EX9DrUVmkf10VcgTaguA0nilIXeWuClC0OHArLdHtu/gnwVVZLqQdrESFejVFs658PZsjwIDAQAB
核心概念
交易流程
- 创建交易:使用
POST /transactions
创建新的支付交易 - 处理支付:客户在支付页面完成支付
- 接收 Webhook:我们会将支付状态通过 Webhook 推送到你的服务器
- 查询状态:你可以随时查询交易状态
金额处理
- 所有金额均以分为单位(如 100 分 = 1 元)
- 支持币种:CNY(人民币)、USD(美元)、EUR(欧元)等
幂等性
为防止重复处理,建议在请求中添加 Idempotency-Key
请求头:
Idempotency-Key: unique-request-id-12345
示例代码
创建支付交易
curl -X POST https://sandbox.efundpay.com/v4/transactions \
-H "Authorization: Bearer sk_test_..." \
-H "x-merchant-account-id: <x-merchant-account-id>" \
-H "Content-Type: application/json" \
-d '{
"amount": 10000,
"currency": "CNY",
"description": "商品购买",
"customer": {
"email": "customer@example.com",
"name": "张三"
},
"return_url": "https://yoursite.com/success",
"cancel_url": "https://yoursite.com/cancel"
}'
查询交易状态
curl -X GET https://api.efundpay.com/v4/transactions/txn_123456 \
-H "Authorization: Bearer sk_test_..."
-H "x-merchant-account-id: <x-merchant-account-id>"
Webhook 处理
// Express.js 示例
app.post('/webhook/efundpay', (req, res) => {
const event = req.body;
switch (event.type) {
case 'transaction.completed':
// 处理支付成功
console.log('支付成功:', event.data.transaction);
break;
case 'transaction.failed':
// 处理支付失败
console.log('支付失败:', event.data.transaction);
break;
}
res.json({ received: true });
});
安全最佳实践
API 密钥安全
- ✅ 将 API 密钥存储在环境变量中
- ✅ 定期轮换 API 密钥
- ❌ 不要在前端代码中暴露密钥
- ❌ 不要将密钥提交到版本控制系统
Webhook 校验
每个 Webhook 请求都包含签名用于验证请求来源:
const crypto = require('crypto');
function verifyWebhookSignature(payload, signature, secret) {
const expectedSignature = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expectedSignature)
);
}
支持的支付方式
支付方式 | 支持地区 | 处理时间 |
---|---|---|
Visa/MasterCard | 全球 | 实时 |
PromptPay | 泰国 | 实时 |
TrueMoney 电子钱包 | 泰国 | 实时 |
Rabbit LINE Pay | 泰国 | 实时 |
ShopeePay 泰国电子钱包 | 泰国 | 实时 |
KPlus 手机银行 | 泰国 | 实时 |
SCB EASY 手机银行 | 泰国 | 实时 |
Krungsri 手机银行 | 泰国 | 实时 |
KTB 手机银行 | 泰国 | 实时 |
Paotang 手机银行 | 泰国 | 实时 |
Pix | 巴西 | 实时 |
微信支付 | 中国 | 实时 |
支付宝 | 中国 | 实时 |
多语言 SDK
我们为多种编程语言提供 SDK,方便你快速集成:
技术支持
如在集成过程中遇到问题,请联系我们:
- 技术支持邮箱:dev@efundflow.com
- 文档反馈:support@efundflow.com
- 社区论坛:www.efundflow.com
准备好开始了吗?请访问 认证 页面,了解如何配置你的第一个 API 请求。