为开发者而生
开发者
API平台
强大的API和SDK让您轻松集成加密货币支付功能。 完整的文档、示例代码和测试环境助您快速上手。
简单集成
5分钟内完成API集成
多语言SDK
支持10+编程语言
完整文档
详细的API文档和示例
沙盒环境
免费的测试环境
99.9%
API稳定性
50ms
平均响应时间
24/7
技术支持
javascript
// 创建支付
const payment = await fetch('https://api.example.com/v1/payments', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
amount: '100.00',
currency: 'BTC',
description: '产品购买'
})
});
const result = await payment.json();
console.log('Payment ID:', result.id);
5分钟快速开始
获取API密钥,查看文档,开始您的第一个集成。
快速开始
四个简单步骤,快速集成加密货币支付
1
获取 API 密钥
在控制台中创建您的 API 密钥
2
安装 SDK
选择您喜欢的编程语言安装 SDK
3
创建支付
使用 API 创建您的第一个支付请求
4
处理回调
设置 Webhook 处理支付状态更新
获取 API 密钥
// 在控制台中创建 API 密钥
const apiKey = "pk_live_your_api_key_here";
API Reference
Complete REST API documentation and examples
POST
/v1/payments
Create a new payment request
Parameters
amountcurrencycrypto_currencyreturn_url
GET
/v1/payments/{id}
Retrieve payment details
Parameters
id
GET
/v1/payments
List all payments
Parameters
limitoffsetstatus
Code Examples
Complete example code supporting multiple programming languages
JavaScript Example
// JavaScript SDK
import CryptoPay from '@cryptopay/node-sdk';
const cryptoPay = new CryptoPay('your_api_key');
// Create Payment
const payment = await cryptoPay.payments.create({
amount: 1000,
currency: 'USD',
cryptoCurrency: 'BTC',
returnUrl: 'https://your-site.com/success',
cancelUrl: 'https://your-site.com/cancel'
});
// Get Payment Status
const status = await cryptoPay.payments.retrieve(payment.id);
console.log('Payment status:', status.status);
More Examples
Check out our GitHub repository for more complete example projects and integration guides
官方 SDK
支持主流编程语言的官方 SDK,让集成更简单
Node.js
v2.1.0用于服务器端 JavaScript 应用
npm install @cryptopay/node-sdk
25,000+ 下载MIT 许可
Python
v1.8.3用于 Python Web 应用和脚本
pip install cryptopay-python
18,000+ 下载MIT 许可
PHP
v1.5.2用于 PHP Web 应用
composer require cryptopay/php-sdk
12,000+ 下载MIT 许可
Java
v1.3.1用于 Java 和 Spring Boot 应用
maven: cryptopay-java-sdk
8,000+ 下载MIT 许可
Ruby
v1.2.0用于 Ruby 和 Rails 应用
gem install cryptopay-ruby
5,000+ 下载MIT 许可
Go
v1.1.0用于 Go 语言应用
go get github.com/cryptopay/go-sdk
3,000+ 下载MIT 许可
找不到您需要的语言?
我们的 REST API 支持任何能发送 HTTP 请求的编程语言。查看我们的 GitHub 仓库获取更多示例。
Webhook 集成
实时接收支付状态更新,确保您的应用与支付状态同步
支持的事件类型
payment.created
支付请求创建时触发
示例数据
{
"event": "payment.created",
"data": {
"id": "pay_123456",
"status": "pending",
"amount": 1000,
"currency": "USD"
}
}
payment.confirmed
支付确认时触发
示例数据
{
"event": "payment.confirmed",
"data": {
"id": "pay_123456",
"status": "confirmed",
"amount": 1000,
"currency": "USD",
"crypto_amount": 0.022,
"crypto_currency": "BTC"
}
}
payment.failed
支付失败时触发
示例数据
{
"event": "payment.failed",
"data": {
"id": "pay_123456",
"status": "failed",
"error": "insufficient_funds"
}
}
处理 Webhook
Express.js 示例
const express = require('express');
const crypto = require('crypto');
app.post('/webhook', (req, res) => {
const signature = req.headers['x-cryptopay-signature'];
const payload = JSON.stringify(req.body);
// 验证签名
const expectedSignature = crypto
.createHmac('sha256', webhookSecret)
.update(payload)
.digest('hex');
if (signature === expectedSignature) {
const event = req.body;
switch (event.event) {
case 'payment.confirmed':
// 处理支付确认
console.log('Payment confirmed:', event.data);
break;
case 'payment.failed':
// 处理支付失败
console.log('Payment failed:', event.data);
break;
}
res.sendStatus(200);
} else {
res.sendStatus(400);
}
});
安全最佳实践
- • 始终验证 Webhook 签名
- • 使用 HTTPS 端点接收 Webhook
- • 实现幂等性处理重复事件
- • 设置合理的超时时间
Webhook 配置
在控制台中配置您的 Webhook 端点和需要接收的事件类型