API
إنشاء دفعة
تتيح طريقة API هذه تهيئة دفعة جديدة لإجراء الدفع عبر خدمة الدفع Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| external_number | string | رقم فريد للمعاملة أو الطلب. |
| amount | number | مبلغ الدفعة أو المعاملة. |
| currency_code | string | رمز عملة الدفعة، مثل USD للدولار، وEUR لليورو، وUSDT لـ Tether. |
| merchant_id | string | معرّف التاجر المضاف لديك (Merchant ID). |
| description | string | وصف الدفعة أو المعاملة. |
| deadline_seconds | number | يحدد الفاصل الزمني المتاح لدفع الدفعة بالثواني، على سبيل المثال 600 يعني مهلة دفع قدرها 10 دقائق. الحد الأقصى للقيمة هو 86400 ثانية (يوم واحد). |
| return_url | string | عنوان URL الذي يجب إعادة العميل إليه بعد إتمام الدفع بنجاح. |
| cancel_url | string | عنوان URL الذي يجب إعادة العميل إليه في حال إلغاء الدفع. |
| handling_fee | number | رسوم إضافية للدفعة. |
| payer_email | string | البريد الإلكتروني للعميل المرتبط بمعاملة الدفع. |
| payment_method | string | طريقة الدفع المستخدمة لهذه المعاملة. الطرق المتاحة: «PAY2_HOUSE»، «USDT_TRC20»، «CARDS». القيمة الافتراضية هي «ALL»، مما يعني أن العميل يمكنه اختيار طريقة الدفع بنفسه. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| invoice_number | string | رقم فاتورة فريد يحدد معاملة الدفع في النظام. |
| approval_url | string | رابط URL يجب إعادة توجيه العميل إليه لإتمام الدفع. |
<?php
function create_payment($request_body = [])
{
$curl = curl_init('https://pay2.house/api/create_payment');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'external_number' => '10001',
'amount' => 1000,
'currency_code' => 'USD',
'payment_method' => 'ALL',
'merchant_id' => 'SN6829106944',
'description' => 'Payment for Merchant.Name',
'deadline_seconds' => 600,
'handling_fee' => 10,
'payer_email' => '[email protected]',
'return_url' => 'https://mysite.com/result',
'cancel_url' => 'https://mysite.com/cancel',
]);
$api_response = create_payment(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['approval_url'])) {
header('Location: ' . $api_response['approval_url'], TRUE, 302);
}
?>
معلومات الدفعة
تتيح طريقة API هذه طلب معلومات عن دفعتك في نظام الدفع Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| merchant_id | string | معرّف التاجر المضاف لديك (Merchant ID). |
| invoice_number | string | رقم الفاتورة الخاص بك. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| invoice_number | string | رقم فاتورة فريد يحدد معاملة الدفع في النظام. |
| currency_code | string | رمز عملة الدفعة، مثل USD للدولار، وEUR لليورو، وUSDT لـ Tether. |
| currency_symbol | string | رمز العملة، مثل "$" للدولار الأمريكي. |
| external_number | string | رقم خارجي مرتبط بمعاملة الدفع. |
| description | string | وصف معاملة الدفع أو الفاتورة. |
| amount | number | مبلغ الدفعة بالعملة المحددة. |
| handling_fee | number | مبلغ رسوم معالجة الدفعة. |
| payment_status | string |
حالة الدفعة. بانتظار الدفع: pending قيد المعالجة: in_processing مدفوعة: paid ملغاة: cancelled منتهية الصلاحية: overdue مدفوعة جزئياً: partially خطأ في الدفع: error استرداد الأموال: refunded |
<?php
function show_payment_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/show_payment_details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'merchant_id' => 'SN6829106938',
'invoice_number' => 'IN9036982986'
]);
$api_response = show_payment_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Amount: ' . $api_response['amount'] . '<br />';
echo 'Fee: ' . $api_response['handling_fee'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
إنشاء تحويل
تتيح طريقة API هذه تهيئة تحويل جديد إلى حساب داخلي في نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| sender_account | string | حساب المرسل. |
| recipient_account | string | حساب المستلم. |
| amount | number | مبلغ التحويل. |
| comment | string | تعليق التحويل. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| transaction_number | string | رقم التحويل الفريد. |
<?php
function transfer_create($request_body = [])
{
$curl = curl_init('https://pay2.house/api/transfers/create');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'sender_account' => 'P2U49984694',
'recipient_account' => 'P2U93380055',
'amount' => 50,
'comment' => 'Transfer of funds to the client\'s account.'
]);
$api_response = transfer_create(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Payment successfully processed.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
معلومات التحويل
تتيح طريقة API هذه الحصول على معلومات تفصيلية عن التحويل، بما في ذلك الحالة والمبلغ وتاريخ ووقت التنفيذ، إضافة إلى بيانات أخرى ذات صلة.
| المعلمة | النوع | الوصف |
|---|---|---|
| transaction_number | string | رقم معاملة فريد يُستخدم لتحديد تحويل معين. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| transaction_number | string | رقم المعاملة الفريد. |
| time_created | number | وقت إنشاء المعاملة بصيغة Unix timestamp. |
| date_created | string | تاريخ إنشاء المعاملة بصيغة YYYY-MM-DD. |
| sender_account | string | رقم حساب مرسل الأموال. |
| recipient_account | string | رقم حساب مستلم الأموال. |
| amount | number | المبلغ المحوّل في المعاملة. |
| fee_amount | number | مبلغ الرسوم المفروضة على المعاملة. |
| currency_code | string | رمز عملة المعاملة، مثل USD للدولار، وEUR لليورو، وUSDT لـ Tether. |
| payment_method | string |
طريقة الدفع المستخدمة لهذه المعاملة. Pay2.House: house_money Push.House: push_house Cloaking.House: cloaking_house Capitalist.Net: capitalist Virtual Card Pay: virtual_card Visa Card Pay: visa Tether USDT: tether SWIFT: swift |
| confirm_method | string |
طريقة تأكيد المعاملة. تأكيد عبر SMS: verification_phone Google Authenticator: verification_code تأكيد عبر API: verification_api بدون تأكيد: none |
| payment_type | string |
نوع الدفع. تحويل داخلي: transfer شحن الحساب: refill تبادل عملات: exchange إصدار فاتورة: invoice Merchant API: merchant |
| transaction_type | string | نوع المعاملة (incoming - إيداع، withdrawal - خصم). |
| transaction_status | string |
حالة المعاملة. قيد المعالجة: in_processing تم التأكيد: confirmed خطأ: error |
| comment | string | معلومات إضافية عن المعاملة. |
| error_message | string | رسالة الخطأ إذا فشلت المعاملة. |
<?php
function transfer_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/transfers/details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'transaction_number' => 'TN4395601712'
]);
$api_response = transfer_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Transaction Number: ' . $api_response['transaction_number'] . '<br />';
echo 'Status: ' . $api_response['transaction_status'] . '<br />';
echo 'Time Created: ' . $api_response['time_created'] . '<br />';
echo 'Date Created: ' . $api_response['date_created'] . '<br />';
echo 'Sender Account: ' . $api_response['sender_account'] . '<br />';
echo 'Recipient Account: ' . $api_response['recipient_account'] . '<br />';
echo 'Amount: ' . $api_response['amount'] . '<br />';
echo 'Fee Amount: ' . $api_response['fee_amount'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
echo 'Payment Method: ' . $api_response['payment_method'] . '<br />';
echo 'Confirm Method: ' . $api_response['confirm_method'] . '<br />';
echo 'Payment Type: ' . $api_response['payment_type'] . '<br />';
echo 'Transaction Type: ' . $api_response['transaction_type'] . '<br />';
echo 'Comment: ' . $api_response['comment'] . '<br />';
echo 'Error Message: ' . $api_response['error_message'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
سجل التحويلات
تتيح طريقة API هذه طلب قائمة بالمعاملات، وتوفير معلومات عن جميع التحويلات المنفذة.
| المعلمة | النوع | الوصف |
|---|---|---|
| per_page | number | عدد السجلات التي سيتم عرضها في صفحة واحدة. |
| page | number | رقم الصفحة للتقسيم إلى صفحات. |
| transaction_type | string | تصفية حسب نوع المعاملة (incoming - إيداع، withdrawal - خصم). |
| status | string |
تصفية حسب حالة المعاملة. قيد المعالجة: in_processing تم التأكيد: confirmed خطأ: error |
| date_range | string | تصفية للاختيار حسب نطاق التاريخ (بصيغة DD.MM.YYYY - DD.MM.YYYY)، وتُستخدم أيضاً للتصفية. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| count | number | إجمالي عدد المعاملات المطابقة للطلب. |
| transactions | array |
مصفوفة من كائنات المعاملات تحتوي على معلومات عن كل معاملة، مثل المعرّف والحالة والرصيد وما إلى ذلك. راجع وصف جميع الحقول في قسم معلومات التحويل. |
<?php
function get_transfers($request_body = [])
{
$curl = curl_init('https://pay2.house/api/transfers');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'per_page' => 10,
'page' => 1,
'status' => 'confirmed'
]);
$api_response = get_transfers(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Transactions: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['transactions'])) {
foreach($api_response['transactions'] AS $item) {
echo '----------------------------------------';
echo 'Transaction Number: ' . $item['transaction_number'] . '<br />';
echo 'Status: ' . $item['transaction_status'] . '<br />';
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Sender Account: ' . $item['sender_account'] . '<br />';
echo 'Recipient Account: ' . $item['recipient_account'] . '<br />';
echo 'Amount: ' . $item['amount'] . '<br />';
echo 'Fee Amount: ' . $item['fee_amount'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Payment Method: ' . $item['payment_method'] . '<br />';
echo 'Confirm Method: ' . $item['confirm_method'] . '<br />';
echo 'Payment Type: ' . $item['payment_type'] . '<br />';
echo 'Transaction Type: ' . $item['transaction_type'] . '<br />';
echo 'Comment: ' . $item['comment'] . '<br />';
echo 'Error Message: ' . $item['error_message'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Transactions Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
الحصول على قائمة الحسابات
تتيح طريقة API هذه طلب قائمة بجميع الحسابات المرتبطة بحسابك في نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| delete_flag | number | علامة حذف الحساب. تشير القيمة 0 إلى حساب نشط، وتشير القيمة 1 إلى حساب محذوف أو محظور. |
| currency_code | string | رمز العملة لتصفية الحسابات، مثل "USD" للدولار، و"EUR" لليورو، و"USDT" لـ Tether. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| count | number | إجمالي عدد الحسابات المطابقة للطلب. |
| wallets | array |
مصفوفة من كائنات الحسابات تحتوي على معلومات عن كل حساب، مثل المعرّف والحالة والرصيد وما إلى ذلك. راجع وصف جميع الحقول في قسم معلومات الحساب. |
<?php
function get_wallets($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'delete_flag' => 0,
'currency_code' => 'USD'
]);
$api_response = get_wallets(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Wallets: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['wallets'])) {
foreach($api_response['wallets'] AS $item) {
echo '----------------------------------------';
echo 'Account Number: ' . $item['account_number'] . '<br />';
echo 'Name: ' . $item['name'] . '<br />';
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Balance: ' . $item['balance'] . '<br />';
echo 'Bonus: ' . $item['bonus'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $item['currency_symbol'] . '<br />';
echo 'Address TRC20: ' . $item['trc20_address'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Wallets Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
إنشاء حساب
تتيح طريقة API هذه إنشاء حسابات فريدة يمكن استخدامها لإجراء المدفوعات والمعاملات داخل نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| name | string | اسم الحساب. |
| currency_code | string | رمز عملة الدفعة، مثل USD للدولار، وEUR لليورو، وUSDT لـ Tether. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| account_number | string | رقم الحساب الذي تم إنشاؤه. |
<?php
function wallet_create($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets/create');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'name' => 'Your Wallet Name',
'currency_code' => 'USD'
]);
$api_response = wallet_create(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Wallet created successfully.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
معلومات الحساب
تتيح طريقة API هذه طلب معلومات عن حسابك في نظام الدفع Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| account_number | string | رقم حسابك. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| time_created | number | وقت إنشاء الحساب بصيغة Unix timestamp. |
| date_created | string | تاريخ إنشاء الحساب بصيغة YYYY-MM-DD. |
| delete_flag | number | علامة الحذف (0 — غير محذوف، 1 — محذوف). |
| account_number | string | رقم الحساب. |
| currency_code | string | رمز عملة الحساب، مثل USD للدولار، وEUR لليورو، وUSDT لـ Tether. |
| currency_symbol | string | رمز العملة، مثل "$" للدولار الأمريكي. |
| name | string | اسم الحساب. |
| balance | number | الرصيد الحالي في الحساب. |
| bonus | number | مقدار أموال المكافآت المتاحة في الحساب، إن وجدت. |
| trc20_address | string | عنوان TRC-20 للرموز، إن وجد. |
<?php
function wallet_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets/details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'account_number' => 'P2U49984694'
]);
$api_response = wallet_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Account Number: ' . $api_response['account_number'] . '<br />';
echo 'Name: ' . $api_response['name'] . '<br />';
echo 'Time Created: ' . $api_response['time_created'] . '<br />';
echo 'Date Created: ' . $api_response['date_created'] . '<br />';
echo 'Balance: ' . $api_response['balance'] . '<br />';
echo 'Bonus: ' . $api_response['bonus'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $api_response['currency_symbol'] . '<br />';
echo 'Address TRC20: ' . $api_response['trc20_address'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
الحصول على كشف الحساب
تتيح طريقة API هذه الحصول على كشف تفصيلي للحساب المحدد، بما في ذلك معلومات عن جميع المعاملات وتغييرات الرصيد.
| المعلمة | النوع | الوصف |
|---|---|---|
| account_number | string | رقم حسابك. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| download_url | string | عنوان URL لتنزيل ملف كشف الحساب بصيغة CSV. |
<?php
function wallet_statement($request_body = [])
{
$curl = curl_init('https://pay2.house/api/wallets/statement');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'account_number' => 'P2U49984694'
]);
$api_response = wallet_statement(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
header('Location: ' . $api_response['download_url'], TRUE, 302);
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
الحصول على قائمة BIN
تتيح طريقة API هذه الحصول على قائمة BIN المتاحة لإصدار البطاقات الافتراضية في نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| currency_code | string | رمز عملة BIN، مثل USD أو EUR. |
| country_code | string | رمز دولة BIN بصيغة ISO 3166-1 alpha-2، مثل US أو HK. |
| card_type | string |
نوع البطاقة. افتراضية: virtual فعلية: physical |
| card_network | string |
نظام الدفع. Visa: visa MasterCard: mastercard |
| card_product_type | string |
نوع منتج البطاقة. شخصية: personal قياسية: standard |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| count | number | إجمالي عدد BIN المطابقة للطلب. |
| bins | array | مصفوفة من كائنات BIN تحتوي على معلومات عن كل BIN. |
| bin | string | رقم التعريف البنكي. |
| currency_code | string | رمز عملة BIN، مثل USD أو EUR. |
| country_code | string | رمز دولة BIN بصيغة ISO 3166-1 alpha-2، مثل US أو HK. |
| card_type | string | نظام الدفع، مثل visa أو mastercard. |
| card_product_type | string | نوع منتج البطاقة، مثل standard أو personal. |
| card_tier | string | مستوى البطاقة، مثل premium أو shared. |
| verification_required | number | هل التحقق مطلوب (1 — نعم، 0 — لا). |
<?php
function cards_bins($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/bins');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'currency_code' => 'USD',
'country_code' => 'HK',
'card_type' => 'virtual',
'card_network' => 'mastercard',
'card_product_type' => 'standard',
]);
$api_response = cards_bins(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Bins: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['bins'])) {
foreach($api_response['bins'] AS $item) {
echo 'BIN: ' . $item['bin'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Country Code: ' . $item['country_code'] . '<br />';
echo 'Card Type: ' . $item['card_type'] . '<br />';
echo 'Card Network: ' . $item['card_network'] . '<br />';
echo 'Card Product Type: ' . $item['card_product_type'] . '<br />';
echo 'Card Tier: ' . $item['card_tier'] . '<br />';
echo '3DS Support: ' . $item['is_3ds_supported'] . '<br />';
echo 'Verification Required: ' . $item['verification_required'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Bins Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
الحصول على قائمة البطاقات
تتيح طريقة API هذه طلب قائمة بالبطاقات الافتراضية الصادرة على حسابك في نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| per_page | number | عدد السجلات التي سيتم عرضها في صفحة واحدة. |
| page | number | رقم الصفحة للتقسيم إلى صفحات. |
| status | string |
تصفية حسب حالة البطاقات. نشطة: active محظورة: blocked مغلقة: closed بانتظار الإصدار: awaiting |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| count | number | إجمالي عدد البطاقات المطابقة للطلب. |
| cards | array |
مصفوفة من كائنات البطاقات تحتوي على معلومات عن كل بطاقة، مثل المعرّف والحالة والرصيد وما إلى ذلك. راجع وصف جميع الحقول في قسم معلومات البطاقة. |
<?php
function get_cards($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'per_page' => 10,
'page' => 1,
'status' => 'active'
]);
$api_response = get_cards(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Cards: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['cards'])) {
foreach($api_response['cards'] AS $item) {
echo '----------------------------------------';
echo 'Card Name: ' . $item['card_name'] . '<br />';
echo 'Card Number: ' . $item['card_number'] . '<br />';
echo 'Card ID: ' . $item['card_id'] . '<br />';
echo 'CVV: ' . $item['cvv'] . '<br />';
echo 'Expire Date: ' . $item['expiration_date'] . '<br />';
echo '3DS Password: ' . $item['password'] . '<br />';
echo 'Currency Code: ' . $item['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $item['currency_symbol'] . '<br />';
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Time Renewal: ' . $item['time_renewal'] . '<br />';
echo 'Date Renewal: ' . $item['date_renewal'] . '<br />';
echo 'Email: ' . $item['email'] . '<br />';
echo 'Phone Number: ' . $item['phone_number'] . '<br />';
echo 'Address Line 1: ' . $item['address_line_1'] . '<br />';
echo 'City: ' . $item['city'] . '<br />';
echo 'Country Code: ' . $item['country_code'] . '<br />';
echo 'Post Code: ' . $item['post_code'] . '<br />';
echo 'First Name: ' . $item['first_name'] . '<br />';
echo 'Last Name: ' . $item['last_name'] . '<br />';
echo 'Sur Name: ' . $item['sur_name'] . '<br />';
echo 'Date Birth: ' . $item['date_birth'] . '<br />';
echo 'Card Status: ' . $item['card_status'] . '<br />';
echo 'Balance: ' . $item['balance'] . '<br />';
echo 'Issuance Cost: ' . $item['issuance_cost'] . '<br />';
echo 'Renewal Cost: ' . $item['renewal_cost'] . '<br />';
echo 'Recharge Cost: ' . $item['recharge_cost'] . '<br />';
echo 'Recharge Type: ' . $item['recharge_type'] . '<br />';
echo 'Account Refund Cost: ' . $item['account_refund_cost'] . '<br />';
echo 'Account Refund Type: ' . $item['account_refund_type'] . '<br />';
echo 'Refund Min Amount: ' . $item['refund_min_amount'] . '<br />';
echo 'Min Recharge Amount: ' . $item['min_recharge_amount'] . '<br />';
echo 'Max Recharge Amount: ' . $item['max_recharge_amount'] . '<br />';
echo 'Block Status: ' . $item['block_status'] . '<br />';
echo 'Time Blocked: ' . $item['time_blocked'] . '<br />';
echo 'Date Blocked: ' . $item['date_blocked'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Cards Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
إصدار بطاقة
تتيح طريقة API هذه إصدار بطاقة افتراضية جديدة في نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| account_number | string | رقم حسابك الذي سيتم خصم رسوم إصدار البطاقة منه. |
| first_name | string | الاسم الأول لحامل البطاقة. |
| last_name | string | اسم العائلة لحامل البطاقة. |
| sur_name | string | الاسم الأوسط لحامل البطاقة. |
| date_birth | string | تاريخ ميلاد حامل البطاقة بصيغة DD.MM.YYYY. |
| phone_number | string | رقم هاتف حامل البطاقة، بما في ذلك رمز الدولة. |
| address | string | عنوان إقامة حامل البطاقة. |
| city | string | مدينة إقامة حامل البطاقة. |
| region | string | منطقة أو ولاية إقامة حامل البطاقة. |
| post_code | string | الرمز البريدي لعنوان الإقامة. |
| string | البريد الإلكتروني لحامل البطاقة. | |
| country_code | string | رمز الدولة وفق معيار ISO 3166-1 alpha-2، مثل "US" للولايات المتحدة. |
| bin_number | string | رقم التعريف البنكي (BIN) للبطاقة. يجب طلبه عبر تذاكر الدعم الفني. |
| renewal_payment_flag | number | تشير هذه العلامة إلى ما إذا كان يمكن خصم أموال تجديد البطاقة من حساب Pay2.House الرئيسي عند عدم كفاية الأموال في البطاقة (1 - نعم، 0 - لا). |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| card_number | string | رقم البطاقة الصادرة. |
| card_id | string | معرّف البطاقة الفريد في النظام، والمستخدم للعمليات اللاحقة. |
<?php
function card_issue($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/issue');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'account_number' => 'P2U48633413',
'first_name' => 'John',
'last_name' => 'Doe',
'sur_name' => 'Smith',
'date_birth' => '01.01.1991',
'phone_number' => '+380990000000',
'address' => 'Kyiv, Ukraine',
'city' => 'Kyiv',
'region' => 'Kyiv',
'country_code' => 'UA',
'post_code' => '01001',
'email' => '[email protected]',
'bin_number' => '1122334455667788',
]);
$api_response = card_issue(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Number: ' . $api_response['card_number'] . '<br />';
echo 'Card ID: ' . $api_response['card_id'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
معلومات البطاقة
تتيح طريقة API هذه الحصول على معلومات تفصيلية عن البطاقة الافتراضية، بما في ذلك رقم البطاقة والحالة وتاريخ الإصدار وبيانات أخرى ذات صلة.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | معرّف البطاقة الفريد في النظام، والمستخدم للحصول على تفاصيلها. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| card_name | string | اسم البطاقة المحدد عند إصدارها. |
| card_number | string | رقم البطاقة الصادرة. |
| card_id | string | معرّف البطاقة الفريد في النظام. |
| cvv | string | رمز أمان البطاقة المطلوب للتفويض. |
| expiration_date | string | تاريخ انتهاء صلاحية البطاقة بصيغة MM/YY. |
| password | string | كلمة مرور 3DS لمزيد من الأمان أثناء المعاملات عبر الإنترنت. |
| currency_code | string | رمز العملة المستخدمة في عمليات البطاقة. |
| currency_symbol | string | رمز العملة، مثل: $ أو €. |
| time_created | number | وقت إنشاء البطاقة بصيغة Unix timestamp. |
| date_created | string | تاريخ إنشاء البطاقة بصيغة YYYY-MM-DD. |
| date_renewal | string | تاريخ الخصم التالي لتجديد البطاقة بصيغة YYYY-MM-DD. |
| time_renewal | number | وقت الخصم التالي لتجديد البطاقة بصيغة Unix timestamp. |
| string | عنوان البريد الإلكتروني المحدد عند إصدار البطاقة. | |
| phone_number | string | رقم الهاتف المحدد عند إصدار البطاقة. |
| address_line_1 | string | عنوان الإقامة المحدد عند إصدار البطاقة. |
| city | string | مدينة الإقامة المحددة عند إصدار البطاقة. |
| country_code | string | رمز الدولة وفق معيار ISO 3166-1 alpha-2، مثل "US" للولايات المتحدة. |
| first_name | string | الاسم الأول لمالك البطاقة. |
| last_name | string | اسم العائلة لمالك البطاقة. |
| sur_name | string | الاسم الأوسط لمالك البطاقة. |
| date_birth | string | تاريخ ميلاد مالك البطاقة بصيغة DD.MM.YYYY. |
| post_code | string | الرمز البريدي. |
| card_status | string |
حالة البطاقة. نشطة: active محظورة: blocked مغلقة: closed بانتظار الإصدار: awaiting |
| balance | number | الرصيد الحالي للبطاقة. |
| issuance_cost | number | تكلفة إصدار البطاقة. |
| renewal_cost | number | تكلفة تجديد البطاقة. |
| recharge_cost | number | رسوم شحن البطاقة. |
| recharge_type | string | نوع رسوم شحن البطاقة، ويمكن أن يكون "fixed" للرسوم الثابتة أو "percent" للرسوم النسبية. تؤخذ قيمة الرسوم من المعلمة recharge_cost. |
| account_refund_cost | number | رسوم استرداد الأموال من البطاقة. |
| account_refund_type | string | نوع رسوم استرداد الأموال من البطاقة، ويمكن أن يكون "fixed" للرسوم الثابتة أو "percent" للرسوم النسبية. تؤخذ قيمة الرسوم من المعلمة account_refund_cost. |
| refund_min_amount | number | الحد الأدنى لمبلغ استرداد الأموال من البطاقة. |
| min_recharge_amount | number | الحد الأدنى لمبلغ شحن البطاقة. |
| max_recharge_amount | number | الحد الأقصى لمبلغ شحن البطاقة. |
| block_status | string |
حالة حظر البطاقة. يمكن العثور على القيم المحتملة في قسم حالات حظر البطاقة. |
| date_blocked | string | تاريخ حظر البطاقة بصيغة YYYY-MM-DD. |
| time_blocked | number | وقت حظر البطاقة بصيغة Unix timestamp. |
<?php
function card_details($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/details');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_details(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Name: ' . $api_response['card_name'] . '<br />';
echo 'Card Number: ' . $api_response['card_number'] . '<br />';
echo 'Card ID: ' . $api_response['card_id'] . '<br />';
echo 'CVV: ' . $api_response['cvv'] . '<br />';
echo 'Expire Date: ' . $api_response['expiration_date'] . '<br />';
echo '3DS Password: ' . $api_response['password'] . '<br />';
echo 'Currency Code: ' . $api_response['currency_code'] . '<br />';
echo 'Currency Symbol: ' . $api_response['currency_symbol'] . '<br />';
echo 'Time Created: ' . $api_response['time_created'] . '<br />';
echo 'Date Created: ' . $api_response['date_created'] . '<br />';
echo 'Time Renewal: ' . $api_response['time_renewal'] . '<br />';
echo 'Date Renewal: ' . $api_response['date_renewal'] . '<br />';
echo 'Email: ' . $api_response['email'] . '<br />';
echo 'Phone Number: ' . $api_response['phone_number'] . '<br />';
echo 'Address Line 1: ' . $api_response['address_line_1'] . '<br />';
echo 'City: ' . $api_response['city'] . '<br />';
echo 'Country Code: ' . $api_response['country_code'] . '<br />';
echo 'Post Code: ' . $api_response['post_code'] . '<br />';
echo 'First Name: ' . $api_response['first_name'] . '<br />';
echo 'Last Name: ' . $api_response['last_name'] . '<br />';
echo 'Sur Name: ' . $api_response['sur_name'] . '<br />';
echo 'Date Birth: ' . $api_response['date_birth'] . '<br />';
echo 'Card Status: ' . $api_response['card_status'] . '<br />';
echo 'Balance: ' . $api_response['balance'] . '<br />';
echo 'Issuance Cost: ' . $api_response['issuance_cost'] . '<br />';
echo 'Renewal Cost: ' . $api_response['renewal_cost'] . '<br />';
echo 'Recharge Cost: ' . $api_response['recharge_cost'] . '<br />';
echo 'Recharge Type: ' . $api_response['recharge_type'] . '<br />';
echo 'Account Refund Cost: ' . $api_response['account_refund_cost'] . '<br />';
echo 'Account Refund Type: ' . $api_response['account_refund_type'] . '<br />';
echo 'Refund Min Amount: ' . $api_response['refund_min_amount'] . '<br />';
echo 'Min Recharge Amount: ' . $api_response['min_recharge_amount'] . '<br />';
echo 'Max Recharge Amount: ' . $api_response['max_recharge_amount'] . '<br />';
echo 'Block Status: ' . $api_response['block_status'] . '<br />';
echo 'Time Blocked: ' . $api_response['time_blocked'] . '<br />';
echo 'Date Blocked: ' . $api_response['date_blocked'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
إعادة تسمية البطاقة
تتيح لك طريقة API هذه تغيير اسم البطاقة الافتراضية في نظام Pay2.House.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | معرّف البطاقة الفريد في النظام، والمستخدم للحصول على تفاصيلها. |
| name | string | الاسم الجديد للبطاقة الافتراضية. الحد الأقصى للطول هو 100 حرف. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| card_name | string | اسم البطاقة الافتراضية بعد التغيير. |
<?php
function card_rename($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/rename');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'name' => 'New Card Name'
]);
$api_response = card_rename(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Name: ' . $api_response['card_name'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
شحن البطاقة
تتيح طريقة API هذه شحن رصيد بطاقة افتراضية باستخدام حسابك الداخلي.
سيتم إيداع الأموال في البطاقة خلال 2-3 دقائق بعد إنشاء طلب الشحن.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | معرّف البطاقة الافتراضية التي تريد شحنها. |
| account_number | string | رقم حسابك الداخلي الذي سيتم خصم مبلغ الشحن منه. |
| amount | number | المبلغ الذي تريد إيداعه في البطاقة الافتراضية. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| transaction_number | string | رقم المعاملة المرتبط بشحن البطاقة. |
<?php
function card_top_up($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/top_up');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'account_number' => 'P2U48633413',
'amount' => 50
]);
$api_response = card_top_up(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Transaction Number: ' . $api_response['transaction_number'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
استرداد الأموال من البطاقة
تتيح طريقة API هذه بدء استرداد الأموال من بطاقة افتراضية إلى حسابك الداخلي.
يتم إرجاع الأموال إلى نفس الحساب الذي صدرت منه البطاقة.
ستتلقى المبلغ بعد خصم رسوم الاسترداد، وفقاً لتعريفات البطاقة.
على سبيل المثال، إذا أجريت استرداداً بقيمة $10 وكانت رسوم الاسترداد 3%، فسيتم خصم $10 × 3% = $0.30 كرسوم، وسيتم إيداع $9.70 في حسابك.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | المعرّف الفريد للبطاقة التي يتم استرداد الأموال منها. |
| amount | number | مبلغ الاسترداد الذي يجب تحويله إلى الحساب الداخلي. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| transaction_number | string | رقم المعاملة الفريد المرتبط باسترداد الأموال المنفذ من البطاقة. |
<?php
function card_refund($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/refund');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'amount' => 10
]);
$api_response = card_refund(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Transaction Number: ' . $api_response['transaction_number'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
سجل عمليات البطاقة
توفر طريقة API هذه وصولاً إلى القائمة الكاملة للعمليات المنفذة باستخدام بطاقتك الافتراضية.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | المعرّف الفريد للبطاقة الافتراضية التي تريد الحصول على سجل العمليات الخاص بها. |
| per_page | number | عدد السجلات التي سيتم عرضها في صفحة واحدة. |
| page | number | رقم الصفحة للتقسيم إلى صفحات. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| count | number | إجمالي عدد المعاملات في سجل العمليات لهذه البطاقة. |
| transactions | array | قائمة كائنات تحتوي على تفاصيل كل معاملة، بما في ذلك التاريخ والمبلغ ونوع العملية. |
<?php
function cards_history($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/history');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264',
'per_page' => 10,
'page' => 3
]);
$api_response = cards_history(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Count Transactions: ' . $api_response['count'] . '<br />';
if ( ! empty($api_response['transactions'])) {
foreach($api_response['transactions'] AS $item) {
echo 'Transaction Time: ' . $item['transaction_time'] . '<br />';
echo 'Transaction Number: ' . $item['transaction_number'] . '<br />';
echo 'Status: ' . $item['status'] . '<br />';
echo 'Type: ' . $item['type'] . '<br />';
echo 'Transaction Amount: ' . $item['transaction_amount'] . '<br />';
echo 'Transaction Currency Code: ' . $item['transaction_currency_code'] . '<br />';
echo 'Account Amount: ' . $item['account_amount'] . '<br />';
echo 'Account Currency Code: ' . $item['account_currency_code'] . '<br />';
echo 'Merchant Name: ' . $item['merchant_name'] . '<br />';
echo 'Merchant Url: ' . $item['merchant_url'] . '<br />';
echo 'Merchant Domain: ' . $item['merchant_domain'] . '<br />';
echo 'Merchant Icon Url: ' . $item['merchant_icon_url'] . '<br />';
echo 'Error Message: ' . $item['error_message'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Transactions Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
تحديث رصيد البطاقة
تتيح طريقة API هذه بدء تحديث رصيد البطاقة الافتراضية، مما يضمن الحصول على بيانات محدثة عن الحالة الحالية للأموال في البطاقة.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | المعرّف الفريد للبطاقة الافتراضية التي تريد تحديث رصيدها. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| balance | number | الرصيد الحالي للبطاقة الافتراضية بعد التحديث، ويعرض الأموال المتاحة. |
<?php
function card_balance_refresh($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/balance/refresh');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_balance_refresh(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Balance: ' . $api_response['balance'] . '<br />';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
رموز تأكيد البطاقة
تتيح طريقة API هذه الحصول على قائمة رموز التأكيد اللازمة لتفويض العمليات باستخدام البطاقة الافتراضية.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | المعرّف الفريد للبطاقة الافتراضية المطلوبة لها رموز تأكيد العمليات. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
| codes | array | قائمة رموز التأكيد اللازمة لإكمال معاملات البطاقة. |
<?php
function card_confirmation_codes($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/confirmation_codes');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_confirmation_codes(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
if ( ! empty($api_response['codes'])) {
foreach($api_response['codes'] AS $item) {
echo 'Time Created: ' . $item['time_created'] . '<br />';
echo 'Date Created: ' . $item['date_created'] . '<br />';
echo 'Otp Code: ' . $item['otp_code'] . '<br />';
echo '----------------------------------------';
echo '<br />';
}
} else {
echo 'No Confirmation Codes Found.';
}
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
حظر البطاقة
تتيح طريقة API هذه حظر بطاقة افتراضية، مما يوقف إمكانية استخدامها لاحقاً.
إذا كانت هناك أموال في رصيد البطاقة، فسيتم إرجاعها إلى الحساب الداخلي الذي صدرت منه البطاقة، وفقاً لتعريفات الاسترداد.
ومع ذلك، إذا كان مبلغ الاسترداد بعد خصم الرسوم أقل من الحد الأدنى لمبلغ الاسترداد، فسيتم خصم هذه الأموال من رصيد البطاقة.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | المعرّف الفريد للبطاقة الافتراضية التي تريد حظرها. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
<?php
function cards_block($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/block');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = cards_block(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Blocked Successfully.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
إغلاق البطاقة
تتيح طريقة API هذه إغلاق بطاقة افتراضية، مما يوقف إمكانية استخدامها لاحقاً.
من المهم ملاحظة أنه لا يمكن استخدام هذه الطريقة لإغلاق البطاقة إذا بقيت عليها أموال.
| المعلمة | النوع | الوصف |
|---|---|---|
| card_id | string | المعرّف الفريد للبطاقة الافتراضية التي تريد إغلاقها. |
معلمات الاستجابة:
| المعلمة | النوع | الوصف |
|---|---|---|
| status | string | حالة تنفيذ الطلب، مثل "success" عند تنفيذ الطلب بنجاح. |
| code | string | رمز الاستجابة، مثل "REQUEST_SUCCESS" للطلب الناجح. |
<?php
function card_close($request_body = [])
{
$curl = curl_init('https://pay2.house/api/cards/close');
curl_setopt($curl, CURLOPT_POST, TRUE);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($request_body));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
$body = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if ( ! empty($info['http_code']) && $info['http_code'] === 200) {
return json_decode($body, TRUE);
}
}
$sign_token = create_token([
'card_id' => 'VC7914059264'
]);
$api_response = card_close(['sign_token' => $sign_token, 'api_key' => 'YOUR_API_KEY']);
if ( ! empty($api_response['status'])) {
if ($api_response['status'] == 'success') {
echo 'Card Closed Successfully.';
} else {
echo 'Error Code: ' . $api_response['code'] . '<br />';
echo 'Error Message: ' . $api_response['msg'] . '<br />';
}
} else {
echo 'Unknown Error';
}
?>
حالات حظر البطاقة
وصف حالات حظر البطاقة المحتملة ومعانيها.
| الحالة | الوصف |
|---|---|
| terms_violation | انتهاك شروط الاستخدام |
| insufficient_funds | نقص الأموال |
| unauthorized_topup | محاولات شحن غير مصرح بها |
| high_refund_rate | نسبة مرتفعة من الاستردادات |
| prebilling | الفوترة الأولى |
| subscription_delay | تأخر رسوم الاشتراك |
| invalid_personal_data | بيانات شخصية غير صحيحة أو غير مكتملة |
| illegal_activity | محاولات القيام بأفعال غير قانونية |
| verification_issues | مشاكل في التحقق |
| high_risk | درجة مخاطر عالية |
| terms_change | تغيير شروط البطاقة |
| inactivity | عدم النشاط |
| internal_errors | أخطاء داخلية |
| regulatory_requirements | متطلبات تنظيمية |
| user_blocked | قام العميل بحظر البطاقة |
| not_blocked | غير محظورة |
Webhook Events
بمجرد أن تتغير حالة الدفعة إلى "مدفوعة"، ترسل Pay2.House تلقائياً إشعارات بصيغة webhook إلى Webhook URL المحدد مسبقاً، والذي تقوم بإعداده لتاجرك.
سنرسل الإشعار 100 مرة حتى نتلقى حالة HTTP 200 ونص الاستجابة "OK".
بالإضافة إلى ذلك، يضيف نظامنا تلقائياً المعلمة "Pay2-House-Signature" مع رمز فريد إلى رأس الطلب. يمكنك استخدام هذا الرمز للتحقق من أصالة الطلب.
<?php
// Function for decoding webhook data
function decrypt_webhook($data = NULL, $secret_key = NULL)
{
$decoded_data = base64_decode($data);
if ($decoded_data === FALSE) {
return FALSE;
}
list($iv, $signature, $encrypted_data) = explode('|', $decoded_data);
$calculated_signature = hash_hmac('sha256', $iv . '|' . $encrypted_data, $secret_key);
if (hash_equals($calculated_signature, $signature)) {
$decoded_encrypted_data = openssl_decrypt(
base64_decode($encrypted_data),
'AES-256-CBC',
hex2bin(hash('sha256', $secret_key)),
0,
hex2bin(bin2hex(hex2bin($iv)))
);
if ($decoded_encrypted_data !== FALSE) {
return $decoded_encrypted_data;
}
}
return FALSE;
}
// Retrieving the webhook request body and decoding the JSON
$payload_body = file_get_contents('php://input');
$payload_decode = json_decode($payload_body, TRUE);
// Checking for the presence of a signature in the request header
if ( ! empty($_SERVER['HTTP_PAY2_HOUSE_SIGNATURE'])) {
// Decoding webhook data and outputting the decoded data
$decrypt_webhook = decrypt_webhook($_SERVER['HTTP_PAY2_HOUSE_SIGNATURE'], 'YOUR_API_KEY');
if ($decrypt_webhook !== FALSE) {
$webhook_decode = json_decode($decrypt_webhook, TRUE);
}
}
// Example print of $payload_decode and $webhook_decode
// Array
// (
// [invoice_number] => IN4063112032
// [external_number] => test
// [amount] => 10
// [handling_fee] => 0
// [currency_code] => EUR
// [description] => Test Payment for Pay2.House
// [status] => paid
// )
// Setting HTTP status 200 and terminating the script with the response text "OK"
http_response_code(200);
exit('OK');
?>
الأخطاء المحتملة
فيما يلي بعض الأخطاء المحتملة التي قد تحدث عند استخدام API.
| رمز الخطأ | وصف الخطأ |
|---|---|
| INVALID_TOKEN | رمز التوقيع غير صالح أو مفقود. |
| INVALID_API_KEY | مفتاح API غير صالح أو مفقود. |
| API_KEY_NOT_FOUND | لم يتم العثور على مفتاح API المحدد. |
| INACTIVE_API_KEY | مفتاح API المقدم غير نشط. |
| SIGNATURE_DECODING_FAILED | خطأ أثناء فك ترميز التوقيع. |
| INVALID_SIGNATURE_DATA | بيانات التوقيع غير صالحة. |
| EXPIRED_SIGNATURE | انتهت صلاحية التوقيع. |
| MISMATCHED_SIGNATURE_ISSUER | معرّف Key ID غير صالح أو مفقود. |
| INVALID_MERCHANT_ID | معرّف Merchant ID غير صالح أو مفقود. |
| MERCHANT_ID_NOT_FOUND | لم يتم العثور على Merchant ID. |
| ACCESS_DENIED_MERCHANT | تم رفض الوصول إلى Merchant ID المحدد. |
| INVALID_EXTERNAL_NUMBER | رقم الدفع الخارجي غير صالح أو مفقود. |
| INVALID_AMOUNT | المبلغ غير صالح. |
| INVALID_CURRENCY_CODE | رمز العملة غير صالح. |
| INVALID_DESCRIPTION | وصف الدفعة غير صالح أو مفقود. |
| SIGNATURE_VERIFICATION_FAILED | فشل التحقق من التوقيع بسبب خطأ. |
| INVALID_RETURN_URL | عنوان URL للعودة بعد الدفع الناجح غير صالح أو مفقود. |
| INVALID_CANCEL_URL | عنوان URL لإلغاء الدفع غير صالح أو مفقود. |
| INVALID_PAYER_EMAIL | عنوان البريد الإلكتروني للعميل غير صالح. |
| INVALID_COMMENT | التعليق غير صالح أو مفقود. |
| INSUFFICIENT_SENDER_BALANCE | الرصيد غير كافٍ في حساب المرسل. |
| AMOUNT_EXCEEDS_SENDER_BALANCE | مبلغ التحويل يتجاوز الرصيد المتاح في حساب المرسل. |
| SENDER_ACCOUNT_NOT_FOUND | لم يتم العثور على حساب المرسل. |
| INVALID_SENDER_ACCOUNT | حساب المرسل غير صالح. |
| RECIPIENT_ACCOUNT_NOT_FOUND | لم يتم العثور على حساب المستلم. |
| INVALID_RECIPIENT_ACCOUNT | حساب المستلم غير صالح. |
| DIFFERENT_CURRENCY_CODES | حسابا المرسل والمستلم لهما عملتان مختلفتان. |
| INVALID_TRANSFER | لا يمكن أن يكون حساب المرسل وحساب المستلم متماثلين. |
| PROVIDER_NOT_FOUND | طريقة الدفع غير موجودة أو غير نشطة. |
| PROVIDER_OPTION_NOT_FOUND | لم يتم العثور على خيارات طريقة الدفع. |
| AMOUNT_BELOW_MINIMUM | مبلغ التحويل أقل من الحد الأدنى. |
| AMOUNT_EXCEEDS_MAXIMUM | مبلغ التحويل يتجاوز الحد الأقصى. |
| INSUFFICIENT_BALANCE_AFTER_FEE | الرصيد غير كافٍ في حساب المرسل بعد احتساب الرسوم. |
| INVALID_NAME_WALLET | اسم الحساب غير صالح أو مفقود. |
| INVALID_PAYMENT_METHOD | طريقة الدفع غير صالحة. |
| PAY2_HOUSE_NOT_ENABLED | طريقة الدفع Pay2.House غير متاحة لتاجرك. |
| USDT_TRC20_NOT_ENABLED | طريقة الدفع Tether USDT غير متاحة لتاجرك. |
| CARDS_NOT_ENABLED | طريقة الدفع CARDS غير متاحة لتاجرك. |
| TRON_ACCOUNT_CREATION_ERROR | خطأ في إنشاء حساب TRON. |
| INVALID_INVOICE_NUMBER | تنسيق رقم الحساب غير صالح. |
| INVOICE_NOT_FOUND | لم يتم العثور على الحساب. |
| MAX_WALLETS_REACHED | تم الوصول إلى الحد الأقصى المسموح به لعدد الحسابات في حسابك. |
| MERCHANT_NOT_APPROVED | لم تتم الموافقة على التاجر لمعالجة المدفوعات. |
| INVALID_DEADLINE_SECONDS | قيمة الفاصل الزمني لانتهاء مهلة الدفع غير صالحة. |
| USER_DELETED | تم حذف المستخدم. |
| USER_BANNED | المستخدم محظور. |
| USER_TEMPORARILY_BLOCKED | المستخدم محظور مؤقتاً. |
| USER_NOT_FOUND | لم يتم العثور على المستخدم. |
| INVALID_PER_PAGE | قيمة المعلمة "per_page" غير صالحة. يجب أن تكون القيمة من 10 إلى 100. |
| INVALID_PAGE | قيمة المعلمة "page" غير صالحة. يجب أن تكون القيمة عدداً صحيحاً موجباً. |
| INVALID_STATUS | الحالة غير صالحة. |
| INSUFFICIENT_BALANCE | الأموال غير كافية في الحساب لتنفيذ هذه العملية. |
| INVALID_FIRST_NAME | تم تحديد الاسم الأول بشكل غير صحيح. |
| INVALID_LAST_NAME | تم تحديد اسم العائلة بشكل غير صحيح. |
| INVALID_SUR_NAME | تم تحديد الاسم الأوسط بشكل غير صحيح. |
| INVALID_ADDRESS | تم تحديد عنوان الإقامة بشكل غير صحيح. |
| INVALID_CITY | تم تحديد مدينة الإقامة بشكل غير صحيح. |
| INVALID_REGION | تم تحديد منطقة الإقامة بشكل غير صحيح. |
| INVALID_POST_CODE | تم تحديد الرمز البريدي بشكل غير صحيح. |
| INVALID_EMAIL | تم تحديد البريد الإلكتروني بشكل غير صحيح. |
| INVALID_DATE_BIRTH | تم تحديد تاريخ الميلاد بشكل غير صحيح. |
| FORBIDDEN_COUNTRY | الدولة غير مسموح باستخدامها. |
| INVALID_PHONE_NUMBER | تم تحديد رقم الهاتف بشكل غير صحيح. |
| INVALID_COUNTRY_CODE | تم تحديد رمز الدولة بشكل غير صحيح. |
| VERIFICATION_REQUIRED | يتطلب تنفيذ العملية التحقق من الحساب. |
| CARD_ISSUANCE_FAILED | تعذر إصدار البطاقة. |
| INVALID_BIN_NUMBER | رقم BIN غير صالح أو مفقود. |
| ACCOUNT_NOT_FOUND | لم يتم العثور على الحساب المحدد. |
| INVALID_ACCOUNT_NUMBER | رقم الحساب غير صالح أو مفقود. |
| CARD_NOT_FOUND | لم يتم العثور على البطاقة. |
| CARD_BLOCKED | البطاقة محظورة. |
| CARD_CLOSED | البطاقة مغلقة. |
| CARD_AWAITING | البطاقة قيد الإصدار. |
| CARD_REFUND_FAILED | فشل استرداد الأموال من البطاقة. |
| CARD_BLOCKING_FAILED | فشل حظر البطاقة بسبب خطأ داخلي في النظام. |
| CARD_DETAILS_FAILED | تعذر الحصول على تفاصيل البطاقة. |
| CARD_BALANCE_NOT_ZERO | لا يمكن إغلاق البطاقة لأن هناك أموالاً متبقية عليها. |
| CARD_CLOSING_FAILED | فشل إغلاق البطاقة بسبب خطأ داخلي في النظام. |
| REFUND_NOT_ALLOWED | استرداد الأموال غير مسموح. |
| CARD_HAS_NO_BALANCE | لا يوجد رصيد في البطاقة. |
| CARD_REFUND_MIN_AMOUNT | لم يتم الوصول إلى الحد الأدنى لمبلغ الاسترداد. |
| CARD_REFUND_MAX_AMOUNT | مبلغ الاسترداد يتجاوز الحد الأقصى. |
| CARD_REFUND_COST_GREATER | مبلغ الاسترداد بعد خصم الرسوم أقل من الحد الأدنى المسموح به للاسترداد. |
| CARD_REFUND_AMOUNT_ZERO | يجب أن يكون مبلغ الاسترداد أكبر من صفر. |
| ACCOUNT_DELETED | تم حذف الحساب المحدد. |
| CARD_MINIMUM_AMOUNT | يجب أن يكون مبلغ الشحن أعلى من الحد الأدنى. |
| CARD_MAXIMUM_AMOUNT | مبلغ الشحن يتجاوز الحد الأقصى المسموح به. |
| CARD_BALANCE_REFRESH_FAILED | تعذر تحديث رصيد البطاقة. |
| CARD_HISTORY_REFRESH_FAILED | تعذر تحديث سجل عمليات البطاقة. |
| SENDER_ACCOUNT_DELETED | لا يمكن تحويل الأموال لأن حساب المرسل قد تم حذفه أو تعطيله. |
| RECIPIENT_ACCOUNT_DELETED | لا يمكن تحويل الأموال لأن حساب المستلم قد تم حذفه أو تعطيله. |
| TRANSACTION_NOT_PROCESSED | لم تتم معالجة المعاملة بسبب خطأ أو قيود داخلية. |
| TRANSACTION_NOT_FOUND | لم يتم العثور على المعاملة في النظام. |
| INVALID_TRANSACTION_NUMBER | رقم المعاملة غير صالح أو مفقود. |
| INVALID_DATE_RANGE | تم تحديد نطاق تاريخ غير صحيح. تحقق من صحة التنسيق والمنطق (لا يمكن أن يكون تاريخ البداية أكبر من تاريخ النهاية). |