API
ادائیگی بنائیں
یہ API طریقہ Pay2.House ادائیگی سروس کے ذریعے ادائیگی کرنے کے لیے نئی ادائیگی شروع کرنے کی اجازت دیتا ہے۔
| پیرامیٹر | قسم | تفصیل |
|---|---|---|
| external_number | string | منفرد ٹرانزیکشن یا آرڈر نمبر۔ |
| amount | number | ادائیگی یا ٹرانزیکشن کی رقم۔ |
| currency_code | string | ادائیگی کی کرنسی کا کوڈ (مثلاً ڈالر کے لیے USD، یورو کے لیے EUR، Tether کے لیے USDT)۔ |
| merchant_id | string | آپ کے شامل کردہ مرچنٹ کا شناخت کنندہ (Merchant ID)۔ |
| description | string | ادائیگی یا ٹرانزیکشن کی تفصیل۔ |
| deadline_seconds | number | ادائیگی کے لیے وقت کا وقفہ سیکنڈز میں مقرر کرتا ہے (مثلاً 600 کا مطلب 10 منٹ کی ادائیگی مدت ہے)۔ زیادہ سے زیادہ قدر 86400 سیکنڈز (1 دن) ہے۔ |
| 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، Tether کے لیے USDT)۔ |
| 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، Tether کے لیے USDT)۔ |
| 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"، Tether کے لیے "USDT")۔ |
جواب کے پیرامیٹرز:
| پیرامیٹر | قسم | تفصیل |
|---|---|---|
| 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، Tether کے لیے USDT)۔ |
جواب کے پیرامیٹرز:
| پیرامیٹر | قسم | تفصیل |
|---|---|---|
| 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، Tether کے لیے USDT)۔ |
| 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 | CSV فارمیٹ میں اکاؤنٹ اسٹیٹمنٹ فائل ڈاؤن لوڈ کرنے کا URL۔ |
<?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 طریقہ Pay2.House سسٹم میں ورچوئل کارڈز جاری کرنے کے لیے دستیاب BIN کی فہرست حاصل کرنے کی اجازت دیتا ہے۔
| پیرامیٹر | قسم | تفصیل |
|---|---|---|
| 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 URL پر webhook فارمیٹ میں اطلاعات بھیجتا ہے، جسے آپ اپنے مرچنٹ کے لیے سیٹ کرتے ہیں۔
ہم اطلاع 100 بار بھیجیں گے جب تک ہمیں HTTP status 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 | دستخط decode کرتے وقت خرابی۔ |
| 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 | غلط تاریخ کی حد درج کی گئی ہے۔ فارمیٹ اور منطقی درستگی چیک کریں (شروع کی تاریخ اختتامی تاریخ سے بڑی نہیں ہو سکتی)۔ |