介绍
本节介绍 SEBOTPAY 支付网关 API。
SEBOTPAY API 很容易在您的业务软件中实现。 我们的 API 是格式良好的 URL,接受 cURL 请求,返回 JSON 响应。
You can use the API in test mode, which does not affect your live data. The API key is use to authenticate the request and determines the request is valid payment or not. For test mode just use the sandbox URL and In case of live mode use the live URL from section 开始付款 .
支持的货币
本节介绍支持的货币 SEBOTPAY
SEBOTPAY allows to make transaction with below currencies. Any new currency may update in future.
货币名称 | 货币符号 | 货币代码 |
---|---|---|
USD | $ | USD |
获取 API 密钥
本节介绍如何获取 api 密钥。
登录您的 SEBOTPAY 商户账户。 If you don't have any ? 点击这里
下一步是找到 API 密钥 仪表板侧边栏中的菜单。 单击菜单。
可以在那里找到 api 密钥 公钥和私钥。 使用这些密钥启动 API 请求。 每次您都可以通过单击生成新的 API 密钥 生成 API 密钥 按钮。 请记住不要与任何人共享这些密钥。
开始付款
本节介绍发起付款的过程。
要启动付款,请按照示例代码并注意参数。 您将需要使用以下 API 端点发出请求。
实时端点: https://sebotpay.com/payment/initiate
测试终点: https://sebotpay.com/sandbox/payment/initiate
测试模式邮件: test_mode@mail.com
测试模式验证码: 222666
请求方法: POST
使用以下参数请求端点。
参数名称 | 参数类型 | 描述 |
---|---|---|
public_key | string (50) | 必需的 您的公共 API 密钥 |
identifier | string (20) | 必需的 标识符基本上是用于识别您的付款 |
currency | string (4) | 必需的 货币代码,必须大写。 例如 USD,EUR |
amount | decimal | 必需的 支付金额。 |
details | string (100) | 必需的 您的付款或交易的详细信息。 |
ipn_url | string | 必需的 即时付款通知的网址。 |
success_url | string | 必需的 付款成功重定向网址。 |
cancel_url | string | 必需的 付款取消重定向网址。 |
site_logo | string/url | 必需的 您的商业网站标志。 |
checkout_theme | string | 可选的 Checkout form theme dark/light. Default theme is light |
customer_name | string (30) | 必需的 客户名称。 |
customer_email | string (30) | 必需的 客户有效的电子邮件。 |
<?php
$parameters = [
'identifier' => 'DFU80XZIKS',
'currency' => 'USD',
'amount' => 100.00,
'details' => 'Purchase T-shirt',
'ipn_url' => 'http://example.com/ipn_url.php',
'cancel_url' => 'http://example.com/cancel_url.php',
'success_url' => 'http://example.com/success_url.php',
'public_key' => 'your_public_key',
'site_logo' => 'https://sebotpay.com/assets/images/logoIcon/logo.png',
'checkout_theme' => 'dark',
'customer_name' => 'John Doe',
'customer_email' => 'john@mail.com',
];
//live end point
$url = 'https://sebotpay.com/payment/initiate';
//test end point
$url = 'https://sebotpay.com/sandbox/payment/initiate';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
//$result contains the response back.
?>
//Error Response.
{
"error": "true",
"message": "Invalid api key"
}
//Success Response.
{
"success": "ok",
"message": "Payment Initiated. Redirect to url.",
"url":"http://example.com/initiate/payment/checkout?payment_id=eJSAASDxdrt4DASDASVNASJA7893232432cvmdsamnvASF"
}
验证付款和 IPN
本节介绍获取即时付款通知的流程。
要启动付款,请按照示例代码并注意参数。 您将需要使用以下 API 端点发出请求。
终点: 您的业务应用程序 ipn url。
请求方法: POST
您将在下面获得以下参数。
参数名称 | 描述 |
---|---|
status | 支付成功状态。 |
identifier | 标识符基本上是用于识别您的付款。 |
signature | 一个哈希签名,用于在您最后验证您的付款。 |
data | 数据包含一些基本信息,包括费用、金额、货币、支付交易 ID 等。 |
<?php
//Receive the response parameter
$status = $_POST['status'];
$signature = $_POST['signature'];
$identifier = $_POST['identifier'];
$data = $_POST['data'];
// Generate your signature
$customKey = $data['amount'].$identifier;
$secret = 'YOUR_SECRET_KEY';
$mySignature = strtoupper(hash_hmac('sha256', $customKey , $secret));
$myIdentifier = 'YOUR_GIVEN_IDENTIFIER';
if($status == "success" && $signature == $mySignature && $identifier == $myIdentifier){
//your operation logic
}
?>