API-Schlüssel erstellen
Um einen API-Schlüssel zu erstellen, folgen Sie dem Link: https://pay2.house/keys/prepare
Um einen API-Schlüssel zu erstellen, folgen Sie dem Link: https://pay2.house/keys/prepare
Diese API-Methode ermöglicht es, eine neue Zahlung für die Durchführung einer Zahlung über den Zahlungsdienst Pay2.House zu initialisieren.
| Parameter | Typ | Beschreibung |
|---|---|---|
| external_number | string | Eindeutige Transaktions- oder Bestellnummer. |
| amount | number | Betrag der Zahlung oder Transaktion. |
| currency_code | string | Währungscode der Zahlung (zum Beispiel USD für Dollar, EUR für Euro, USDT für Tether). |
| merchant_id | string | Kennung Ihres hinzugefügten Händlers (Merchant ID). |
| description | string | Beschreibung der Zahlung oder Transaktion. |
| deadline_seconds | number | Legt das Zeitintervall für die Bezahlung der Zahlung in Sekunden fest (zum Beispiel entspricht 600 einer Zahlungsfrist von 10 Minuten). Der Maximalwert beträgt 86400 Sekunden (1 Tag). |
| return_url | string | URL-Adresse, zu der der Kunde nach erfolgreichem Abschluss der Zahlung zurückgeleitet werden soll. |
| cancel_url | string | URL-Adresse, zu der der Kunde im Falle einer Stornierung der Zahlung zurückgeleitet werden soll. |
| handling_fee | number | Zusätzliche Zahlungsgebühr. |
| payer_email | string | E-Mail-Adresse des Kunden, die mit der Zahlungstransaktion verbunden ist. |
| payment_method | string | Zahlungsmethode, die für diese Transaktion verwendet wird. Verfügbare Methoden: „PAY2_HOUSE“, „USDT_TRC20“, „CARDS“. Standardmäßig „ALL“, was bedeutet, dass der Kunde die Zahlungsmethode selbst auswählen kann. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| invoice_number | string | Eindeutige Rechnungsnummer, die die Zahlungstransaktion im System identifiziert. |
| approval_url | string | URL-Link, zu dem der Kunde weitergeleitet werden muss, um die Zahlung abzuschließen. |
<?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);
}
?>
Diese API-Methode ermöglicht es, Informationen über Ihre Zahlung im Zahlungssystem Pay2.House abzufragen.
| Parameter | Typ | Beschreibung |
|---|---|---|
| merchant_id | string | Kennung Ihres hinzugefügten Händlers (Merchant ID). |
| invoice_number | string | Ihre Rechnungsnummer. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| invoice_number | string | Eindeutige Rechnungsnummer, die die Zahlungstransaktion im System identifiziert. |
| currency_code | string | Währungscode der Zahlung (zum Beispiel USD für Dollar, EUR für Euro, USDT für Tether). |
| currency_symbol | string | Währungssymbol (zum Beispiel "$" für US-Dollar). |
| external_number | string | Externe Nummer, die mit der Zahlungstransaktion verbunden ist. |
| description | string | Beschreibung der Zahlungstransaktion oder Rechnung. |
| amount | number | Zahlungsbetrag in der angegebenen Währung. |
| handling_fee | number | Betrag der Gebühr für die Zahlungsabwicklung. |
| payment_status | string |
Zahlungsstatus. Wartet auf Zahlung: pending In Bearbeitung: in_processing Bezahlt: paid Storniert: cancelled Abgelaufen: overdue Teilweise bezahlt: partially Zahlungsfehler: error Rückerstattung: 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';
}
?>
Diese API-Methode ermöglicht es, eine neue Überweisung auf ein internes Konto im Pay2.House-System zu initialisieren.
| Parameter | Typ | Beschreibung |
|---|---|---|
| sender_account | string | Absenderkonto. |
| recipient_account | string | Empfängerkonto. |
| amount | number | Überweisungsbetrag. |
| comment | string | Kommentar zur Überweisung. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| transaction_number | string | Eindeutige Überweisungsnummer. |
<?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';
}
?>
Diese API-Methode ermöglicht es, detaillierte Informationen über die Überweisung zu erhalten, einschließlich Status, Betrag, Datum und Uhrzeit der Ausführung sowie anderer zugehöriger Daten.
| Parameter | Typ | Beschreibung |
|---|---|---|
| transaction_number | string | Eindeutige Transaktionsnummer, die zur Identifizierung einer bestimmten Überweisung verwendet wird. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| transaction_number | string | Eindeutige Transaktionsnummer. |
| time_created | number | Erstellungszeit der Transaktion im Unix-timestamp-Format. |
| date_created | string | Erstellungsdatum der Transaktion im Format YYYY-MM-DD. |
| sender_account | string | Kontonummer des Absenders der Mittel. |
| recipient_account | string | Kontonummer des Empfängers der Mittel. |
| amount | number | In der Transaktion überwiesener Betrag. |
| fee_amount | number | Für die Transaktion erhobene Gebühr. |
| currency_code | string | Währungscode der Transaktion (zum Beispiel USD für Dollar, EUR für Euro, USDT für Tether). |
| payment_method | string |
Zahlungsmethode, die für diese Transaktion verwendet wird. 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 |
Methode zur Bestätigung der Transaktion. Bestätigung per SMS: verification_phone Google Authenticator: verification_code Bestätigung über API: verification_api Ohne Bestätigung: none |
| payment_type | string |
Zahlungstyp. Interne Überweisung: transfer Kontoaufladung: refill Währungsumtausch: exchange Rechnungserstellung: invoice Merchant API: merchant |
| transaction_type | string | Transaktionstyp (incoming - Gutschrift, withdrawal - Abbuchung). |
| transaction_status | string |
Transaktionsstatus. In Bearbeitung: in_processing Bestätigt: confirmed Fehler: error |
| comment | string | Zusätzliche Informationen zur Transaktion. |
| error_message | string | Fehlermeldung, wenn die Transaktion fehlgeschlagen ist. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Liste von Transaktionen abzufragen und Informationen über alle ausgeführten Überweisungen bereitzustellen.
| Parameter | Typ | Beschreibung |
|---|---|---|
| per_page | number | Anzahl der Datensätze, die auf einer Seite angezeigt werden. |
| page | number | Seitennummer für die Paginierung. |
| transaction_type | string | Filter nach Transaktionstyp (incoming - Gutschrift, withdrawal - Abbuchung). |
| status | string |
Filter nach Transaktionsstatus. In Bearbeitung: in_processing Bestätigt: confirmed Fehler: error |
| date_range | string | Filter zur Auswahl nach Datumsbereich (im Format DD.MM.YYYY - DD.MM.YYYY), wird ebenfalls zur Filterung verwendet. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| count | number | Gesamtanzahl der Transaktionen, die der Anfrage entsprechen. |
| transactions | array |
Array von Transaktionsobjekten, das Informationen zu jeder Transaktion enthält (zum Beispiel Kennung, Status, Saldo usw.). Siehe Beschreibung aller Felder im Abschnitt Überweisungsinformationen. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Liste aller Konten abzufragen, die mit Ihrem Konto im Pay2.House-System verbunden sind.
| Parameter | Typ | Beschreibung |
|---|---|---|
| delete_flag | number | Kontolöschungsflag. Der Wert 0 weist auf ein aktives Konto hin, der Wert 1 auf ein gelöschtes oder gesperrtes Konto. |
| currency_code | string | Währungscode zum Filtern von Konten (zum Beispiel "USD" für Dollar, "EUR" für Euro, "USDT" für Tether). |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| count | number | Gesamtanzahl der Konten, die der Anfrage entsprechen. |
| wallets | array |
Array von Kontoobjekten, das Informationen zu jedem Konto enthält (zum Beispiel Kennung, Status, Saldo usw.). Siehe Beschreibung aller Felder im Abschnitt Kontoinformationen. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eindeutige Konten zu erstellen, die für Zahlungen und Transaktionen innerhalb des Pay2.House-Systems verwendet werden können.
| Parameter | Typ | Beschreibung |
|---|---|---|
| name | string | Kontoname. |
| currency_code | string | Währungscode der Zahlung (zum Beispiel USD für Dollar, EUR für Euro, USDT für Tether). |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| account_number | string | Nummer des erstellten Kontos. |
<?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';
}
?>
Diese API-Methode ermöglicht es, Informationen über Ihr Konto im Zahlungssystem Pay2.House abzufragen.
| Parameter | Typ | Beschreibung |
|---|---|---|
| account_number | string | Ihre Kontonummer. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| time_created | number | Erstellungszeit des Kontos im Unix-timestamp-Format. |
| date_created | string | Erstellungsdatum des Kontos im Format YYYY-MM-DD. |
| delete_flag | number | Löschflag (0 — nicht gelöscht, 1 — gelöscht). |
| account_number | string | Kontonummer. |
| currency_code | string | Währungscode des Kontos (zum Beispiel USD für Dollar, EUR für Euro, USDT für Tether). |
| currency_symbol | string | Währungssymbol (zum Beispiel "$" für US-Dollar). |
| name | string | Kontoname. |
| balance | number | Aktueller Kontostand. |
| bonus | number | Betrag der auf dem Konto verfügbaren Bonusmittel, falls zutreffend. |
| trc20_address | string | TRC-20-Adresse für Token, falls zutreffend. |
<?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';
}
?>
Diese API-Methode ermöglicht es, einen detaillierten Auszug für das ausgewählte Konto zu erhalten, einschließlich Informationen über alle Transaktionen und Saldoänderungen.
| Parameter | Typ | Beschreibung |
|---|---|---|
| account_number | string | Ihre Kontonummer. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| download_url | string | URL zum Herunterladen der Kontoauszugsdatei im CSV-Format. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Liste verfügbarer BINs für die Ausstellung virtueller Karten im Pay2.House-System abzurufen.
| Parameter | Typ | Beschreibung |
|---|---|---|
| currency_code | string | BIN-Währungscode (zum Beispiel USD, EUR). |
| country_code | string | BIN-Ländercode im Format ISO 3166-1 alpha-2 (zum Beispiel US, HK). |
| card_type | string |
Kartentyp. Virtuell: virtual Physisch: physical |
| card_network | string |
Zahlungssystem. Visa: visa MasterCard: mastercard |
| card_product_type | string |
Kartenprodukttyp. Persönlich: personal Standard: standard |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| count | number | Gesamtanzahl der BINs, die der Anfrage entsprechen. |
| bins | array | Array von BIN-Objekten, das Informationen zu jeder BIN enthält. |
| bin | string | Bankidentifikationsnummer. |
| currency_code | string | BIN-Währungscode (zum Beispiel USD, EUR). |
| country_code | string | BIN-Ländercode im Format ISO 3166-1 alpha-2 (zum Beispiel US, HK). |
| card_type | string | Zahlungssystem (zum Beispiel visa, mastercard). |
| card_product_type | string | Kartenprodukttyp (zum Beispiel standard, personal). |
| card_tier | string | Kartenniveau (zum Beispiel premium, shared). |
| verification_required | number | Ob Verifizierung erforderlich ist (1 — ja, 0 — nein). |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Liste der virtuellen Karten abzufragen, die für Ihr Konto im Pay2.House-System ausgestellt wurden.
| Parameter | Typ | Beschreibung |
|---|---|---|
| per_page | number | Anzahl der Datensätze, die auf einer Seite angezeigt werden. |
| page | number | Seitennummer für die Paginierung. |
| status | string |
Filter nach Kartenstatus. Aktiv: active Gesperrt: blocked Geschlossen: closed Wartet auf Ausstellung: awaiting |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| count | number | Gesamtanzahl der Karten, die der Anfrage entsprechen. |
| cards | array |
Array von Kartenobjekten, das Informationen zu jeder Karte enthält (zum Beispiel Kennung, Status, Saldo usw.). Siehe Beschreibung aller Felder im Abschnitt Karteninformationen. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine neue virtuelle Karte im Pay2.House-System auszustellen.
| Parameter | Typ | Beschreibung |
|---|---|---|
| account_number | string | Ihre Kontonummer, von der die Gebühr für die Kartenausstellung abgebucht wird. |
| first_name | string | Vorname des Karteninhabers. |
| last_name | string | Nachname des Karteninhabers. |
| sur_name | string | Zweiter Vorname des Karteninhabers. |
| date_birth | string | Geburtsdatum des Karteninhabers im Format DD.MM.YYYY. |
| phone_number | string | Telefonnummer des Karteninhabers, einschließlich Ländercode. |
| address | string | Wohnadresse des Karteninhabers. |
| city | string | Wohnort des Karteninhabers. |
| region | string | Region oder Bundesland des Wohnorts des Karteninhabers. |
| post_code | string | Postleitzahl für die Wohnadresse. |
| string | E-Mail-Adresse des Karteninhabers. | |
| country_code | string | Ländercode gemäß ISO 3166-1 alpha-2 (zum Beispiel "US" für die Vereinigten Staaten). |
| bin_number | string | Bankidentifikationsnummer (BIN) der Karte. Muss über Tickets beim technischen Support angefordert werden. |
| renewal_payment_flag | number | Dieses Flag gibt an, ob Mittel für die Kartenverlängerung vom Hauptkonto Pay2.House abgebucht werden dürfen, wenn auf der Karte nicht genügend Guthaben vorhanden ist (1 - ja, 0 - nein). |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| card_number | string | Nummer der ausgestellten Karte. |
| card_id | string | Eindeutige Kartenkennung im System, die für weitere Operationen verwendet wird. |
<?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';
}
?>
Diese API-Methode ermöglicht es, detaillierte Informationen über eine virtuelle Karte zu erhalten, einschließlich Kartennummer, Status, Ausstellungsdatum und anderer zugehöriger Daten.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kartenkennung im System, die zum Abrufen ihrer Details verwendet wird. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| card_name | string | Name der Karte, der bei ihrer Ausstellung angegeben wurde. |
| card_number | string | Nummer der ausgestellten Karte. |
| card_id | string | Eindeutige Kartenkennung im System. |
| cvv | string | Sicherheitscode der Karte, der für die Autorisierung erforderlich ist. |
| expiration_date | string | Ablaufdatum der Karte im Format MM/YY. |
| password | string | 3DS-Passwort für zusätzliche Sicherheit bei Online-Transaktionen. |
| currency_code | string | Währungscode, der für Kartenoperationen verwendet wird. |
| currency_symbol | string | Währungssymbol (zum Beispiel: $ oder €). |
| time_created | number | Erstellungszeit der Karte im Unix-timestamp-Format. |
| date_created | string | Erstellungsdatum der Karte im Format YYYY-MM-DD. |
| date_renewal | string | Datum der nächsten Abbuchung für die Kartenverlängerung im Format YYYY-MM-DD. |
| time_renewal | number | Zeitpunkt der nächsten Abbuchung für die Kartenverlängerung im Unix-timestamp-Format. |
| string | E-Mail-Adresse, die bei der Kartenausstellung angegeben wurde. | |
| phone_number | string | Telefonnummer, die bei der Kartenausstellung angegeben wurde. |
| address_line_1 | string | Wohnadresse, die bei der Kartenausstellung angegeben wurde. |
| city | string | Wohnort, der bei der Kartenausstellung angegeben wurde. |
| country_code | string | Ländercode gemäß ISO 3166-1 alpha-2 (zum Beispiel "US" für die Vereinigten Staaten). |
| first_name | string | Vorname des Karteninhabers. |
| last_name | string | Nachname des Karteninhabers. |
| sur_name | string | Zweiter Vorname des Karteninhabers. |
| date_birth | string | Geburtsdatum des Karteninhabers im Format DD.MM.YYYY. |
| post_code | string | Postleitzahl. |
| card_status | string |
Kartenstatus. Aktiv: active Gesperrt: blocked Geschlossen: closed Wartet auf Ausstellung: awaiting |
| balance | number | Aktuelles Kartenguthaben. |
| issuance_cost | number | Kosten für die Kartenausstellung. |
| renewal_cost | number | Kosten für die Kartenverlängerung. |
| recharge_cost | number | Gebühr für das Aufladen der Karte. |
| recharge_type | string | Typ der Gebühr für das Aufladen der Karte (kann "fixed" für eine feste Gebühr oder "percent" für eine prozentuale Gebühr sein). Der Gebührenwert wird dem Parameter recharge_cost entnommen. |
| account_refund_cost | number | Gebühr für die Rückerstattung von der Karte. |
| account_refund_type | string | Typ der Gebühr für die Rückerstattung von der Karte (kann "fixed" für eine feste Gebühr oder "percent" für eine prozentuale Gebühr sein). Der Gebührenwert wird dem Parameter account_refund_cost entnommen. |
| refund_min_amount | number | Mindestbetrag für die Rückerstattung von der Karte. |
| min_recharge_amount | number | Mindestbetrag für das Aufladen der Karte. |
| max_recharge_amount | number | Höchstbetrag für das Aufladen der Karte. |
| block_status | string |
Kartensperrstatus. Mögliche Werte finden Sie im Abschnitt Kartensperrstatus. |
| date_blocked | string | Datum der Kartensperrung im Format YYYY-MM-DD. |
| time_blocked | number | Zeitpunkt der Kartensperrung im Unix-timestamp-Format. |
<?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';
}
?>
Mit dieser API-Methode können Sie den Namen einer virtuellen Karte im Pay2.House-System ändern.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kartenkennung im System, die zum Abrufen ihrer Details verwendet wird. |
| name | string | Neuer Name der virtuellen Karte. Maximale Länge — 100 Zeichen. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| card_name | string | Name der virtuellen Karte nach der Änderung. |
<?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';
}
?>
Diese API-Methode ermöglicht es, das Guthaben einer virtuellen Karte über Ihr internes Konto aufzuladen.
Die Gutschrift auf die Karte erfolgt innerhalb von 2-3 Minuten nach Erstellung der Aufladeanfrage.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Kennung der virtuellen Karte, die Sie aufladen möchten. |
| account_number | string | Ihre interne Kontonummer, von der der Aufladebetrag abgebucht wird. |
| amount | number | Betrag, den Sie der virtuellen Karte gutschreiben möchten. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| transaction_number | string | Transaktionsnummer, die mit der Kartenaufladung verbunden ist. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Rückerstattung von einer virtuellen Karte auf Ihr internes Konto zu initiieren.
Die Mittel werden auf dasselbe Konto zurückerstattet, von dem die Karte ausgestellt wurde.
Sie erhalten den Betrag abzüglich der Rückerstattungsgebühr gemäß den Kartentarifen.
Wenn Sie zum Beispiel eine Rückerstattung von $10 vornehmen und die Rückerstattungsgebühr 3% beträgt, werden $10 × 3% = $0.30 als Gebühr einbehalten und Ihrem Konto werden $9.70 gutgeschrieben.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kennung der Karte, von der die Rückerstattung erfolgt. |
| amount | number | Rückerstattungsbetrag, der auf das interne Konto überwiesen werden muss. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| transaction_number | string | Eindeutige Transaktionsnummer, die mit der ausgeführten Rückerstattung von der Karte verbunden ist. |
<?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';
}
?>
Diese API-Methode bietet Zugriff auf die vollständige Liste der Operationen, die mit Ihrer virtuellen Karte durchgeführt wurden.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kennung der virtuellen Karte, für die Sie die Operationshistorie abrufen möchten. |
| per_page | number | Anzahl der Datensätze, die auf einer Seite angezeigt werden. |
| page | number | Seitennummer für die Paginierung. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| count | number | Gesamtanzahl der Transaktionen in der Operationshistorie dieser Karte. |
| transactions | array | Liste von Objekten mit Details zu jeder Transaktion, einschließlich Datum, Betrag und Operationstyp. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Aktualisierung des Guthabens der virtuellen Karte zu initiieren, um aktuelle Daten über den derzeitigen Stand der Mittel auf der Karte zu erhalten.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kennung der virtuellen Karte, für die Sie das Guthaben aktualisieren möchten. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| balance | number | Aktuelles Guthaben der virtuellen Karte nach der Aktualisierung, das die verfügbaren Mittel anzeigt. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine Liste von Bestätigungscodes abzurufen, die zur Autorisierung von Operationen mit der virtuellen Karte erforderlich sind.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kennung der virtuellen Karte, für die Bestätigungscodes für Operationen erforderlich sind. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
| codes | array | Liste der Bestätigungscodes, die zum Abschluss von Kartentransaktionen erforderlich sind. |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine virtuelle Karte zu sperren und damit ihre weitere Nutzung zu verhindern.
Wenn auf dem Kartenguthaben Mittel vorhanden sind, werden sie gemäß den Rückerstattungstarifen auf das interne Konto zurückerstattet, von dem die Karte ausgestellt wurde.
Wenn jedoch der Rückerstattungsbetrag nach Abzug der Gebühr kleiner als der Mindestbetrag für die Rückerstattung ist, werden diese Mittel vom Kartenguthaben abgebucht.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kennung der virtuellen Karte, die Sie sperren möchten. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
<?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';
}
?>
Diese API-Methode ermöglicht es, eine virtuelle Karte zu schließen und damit ihre weitere Nutzung zu verhindern.
Es ist wichtig zu beachten, dass diese Methode nicht zum Schließen der Karte verwendet werden kann, wenn sich noch Mittel darauf befinden.
| Parameter | Typ | Beschreibung |
|---|---|---|
| card_id | string | Eindeutige Kennung der virtuellen Karte, die Sie schließen möchten. |
Antwortparameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
| status | string | Status der Anfrageausführung (zum Beispiel "success" für eine erfolgreich ausgeführte Anfrage). |
| code | string | Antwortcode (zum Beispiel "REQUEST_SUCCESS" für eine erfolgreiche Anfrage). |
<?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';
}
?>
Beschreibung der möglichen Kartensperrstatus und ihrer Bedeutungen.
| Status | Beschreibung |
|---|---|
| terms_violation | Verstoß gegen die Nutzungsbedingungen |
| insufficient_funds | Unzureichende Mittel |
| unauthorized_topup | Nicht autorisierte Aufladeversuche |
| high_refund_rate | Hohe Rückerstattungsquote |
| prebilling | Erstabrechnung |
| subscription_delay | Verzögerung der Abonnementgebühr |
| invalid_personal_data | Falsche oder unvollständige personenbezogene Daten |
| illegal_activity | Versuche illegaler Handlungen |
| verification_issues | Probleme mit der Verifizierung |
| high_risk | Hohes Risikoniveau |
| terms_change | Änderung der Kartenbedingungen |
| inactivity | Inaktivität |
| internal_errors | Interne Fehler |
| regulatory_requirements | Regulatorische Anforderungen |
| user_blocked | Kunde hat die Karte gesperrt |
| not_blocked | Nicht gesperrt |
Sobald sich der Zahlungsstatus auf "Bezahlt" ändert, sendet Pay2.House automatisch Benachrichtigungen im Webhook-Format an Ihre zuvor angegebene Webhook URL, die Sie für Ihren Händler konfigurieren.
Wir senden die Benachrichtigung 100 Mal, bis wir den HTTP-Status 200 und den Antworttext "OK" erhalten.
Außerdem fügt unser System automatisch den Parameter "Pay2-House-Signature" mit einem eindeutigen Token in den Anfrageheader ein. Sie können dieses Token verwenden, um die Echtheit der Anfrage zu überprüfen.
<?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');
?>
Hier sind einige der möglichen Fehler, die bei der Verwendung der API auftreten können.
| Fehlercode | Fehlerbeschreibung |
|---|---|
| INVALID_TOKEN | Ungültiger oder fehlender Signaturtoken. |
| INVALID_API_KEY | Ungültiger oder fehlender API-Schlüssel. |
| API_KEY_NOT_FOUND | Der angegebene API-Schlüssel wurde nicht gefunden. |
| INACTIVE_API_KEY | Der bereitgestellte API-Schlüssel ist inaktiv. |
| SIGNATURE_DECODING_FAILED | Fehler beim Dekodieren der Signatur. |
| INVALID_SIGNATURE_DATA | Ungültige Signaturdaten. |
| EXPIRED_SIGNATURE | Die Signatur ist abgelaufen. |
| MISMATCHED_SIGNATURE_ISSUER | Ungültige oder fehlende Key ID. |
| INVALID_MERCHANT_ID | Ungültige oder fehlende Merchant ID. |
| MERCHANT_ID_NOT_FOUND | Merchant ID nicht gefunden. |
| ACCESS_DENIED_MERCHANT | Zugriff auf die angegebene Merchant ID verweigert. |
| INVALID_EXTERNAL_NUMBER | Ungültige oder fehlende externe Zahlungsnummer. |
| INVALID_AMOUNT | Ungültiger Betrag. |
| INVALID_CURRENCY_CODE | Ungültiger Währungscode. |
| INVALID_DESCRIPTION | Ungültige oder fehlende Zahlungsbeschreibung. |
| SIGNATURE_VERIFICATION_FAILED | Signaturprüfung ist aufgrund eines Fehlers fehlgeschlagen. |
| INVALID_RETURN_URL | Ungültige oder fehlende URL-Adresse für die Rückkehr nach erfolgreicher Zahlung. |
| INVALID_CANCEL_URL | Ungültige oder fehlende URL-Adresse für die Zahlungsstornierung. |
| INVALID_PAYER_EMAIL | Ungültige E-Mail-Adresse des Kunden. |
| INVALID_COMMENT | Ungültiger oder fehlender Kommentar. |
| INSUFFICIENT_SENDER_BALANCE | Unzureichender Kontostand auf dem Absenderkonto. |
| AMOUNT_EXCEEDS_SENDER_BALANCE | Der Überweisungsbetrag überschreitet den verfügbaren Kontostand des Absenderkontos. |
| SENDER_ACCOUNT_NOT_FOUND | Absenderkonto nicht gefunden. |
| INVALID_SENDER_ACCOUNT | Ungültiges Absenderkonto. |
| RECIPIENT_ACCOUNT_NOT_FOUND | Empfängerkonto nicht gefunden. |
| INVALID_RECIPIENT_ACCOUNT | Ungültiges Empfängerkonto. |
| DIFFERENT_CURRENCY_CODES | Absender- und Empfängerkonto haben unterschiedliche Währungen. |
| INVALID_TRANSFER | Absender- und Empfängerkonto dürfen nicht identisch sein. |
| PROVIDER_NOT_FOUND | Zahlungsmethode nicht gefunden oder inaktiv. |
| PROVIDER_OPTION_NOT_FOUND | Optionen der Zahlungsmethode nicht gefunden. |
| AMOUNT_BELOW_MINIMUM | Der Überweisungsbetrag liegt unter dem Mindestschwellenwert. |
| AMOUNT_EXCEEDS_MAXIMUM | Der Überweisungsbetrag überschreitet das maximale Limit. |
| INSUFFICIENT_BALANCE_AFTER_FEE | Unzureichender Kontostand auf dem Absenderkonto nach Berücksichtigung der Gebühr. |
| INVALID_NAME_WALLET | Ungültiger oder fehlender Kontoname. |
| INVALID_PAYMENT_METHOD | Ungültige Zahlungsmethode. |
| PAY2_HOUSE_NOT_ENABLED | Die Zahlungsmethode Pay2.House ist für Ihren Händler nicht verfügbar. |
| USDT_TRC20_NOT_ENABLED | Die Zahlungsmethode Tether USDT ist für Ihren Händler nicht verfügbar. |
| CARDS_NOT_ENABLED | Die Zahlungsmethode CARDS ist für Ihren Händler nicht verfügbar. |
| TRON_ACCOUNT_CREATION_ERROR | Fehler beim Erstellen eines TRON-Kontos. |
| INVALID_INVOICE_NUMBER | Ungültiges Format der Kontonummer. |
| INVOICE_NOT_FOUND | Konto nicht gefunden. |
| MAX_WALLETS_REACHED | Die maximal zulässige Anzahl von Konten für Ihr Konto wurde erreicht. |
| MERCHANT_NOT_APPROVED | Händler ist nicht für die Zahlungsabwicklung genehmigt. |
| INVALID_DEADLINE_SECONDS | Ungültiger Wert für das Zeitintervall bis zum Ablauf der Zahlungsfrist. |
| USER_DELETED | Benutzer wurde gelöscht. |
| USER_BANNED | Benutzer ist gesperrt. |
| USER_TEMPORARILY_BLOCKED | Benutzer ist vorübergehend gesperrt. |
| USER_NOT_FOUND | Benutzer nicht gefunden. |
| INVALID_PER_PAGE | Ungültiger Wert für den Parameter "per_page". Der Wert muss zwischen 10 und 100 liegen. |
| INVALID_PAGE | Ungültiger Wert für den Parameter "page". Der Wert muss eine positive ganze Zahl sein. |
| INVALID_STATUS | Ungültiger Status. |
| INSUFFICIENT_BALANCE | Unzureichende Mittel auf dem Konto, um diese Operation auszuführen. |
| INVALID_FIRST_NAME | Vorname ist falsch angegeben. |
| INVALID_LAST_NAME | Nachname ist falsch angegeben. |
| INVALID_SUR_NAME | Zweiter Vorname ist falsch angegeben. |
| INVALID_ADDRESS | Wohnadresse ist falsch angegeben. |
| INVALID_CITY | Wohnort ist falsch angegeben. |
| INVALID_REGION | Wohnregion ist falsch angegeben. |
| INVALID_POST_CODE | Postleitzahl ist falsch angegeben. |
| INVALID_EMAIL | E-Mail-Adresse ist falsch angegeben. |
| INVALID_DATE_BIRTH | Geburtsdatum ist falsch angegeben. |
| FORBIDDEN_COUNTRY | Land ist nicht zur Nutzung zugelassen. |
| INVALID_PHONE_NUMBER | Telefonnummer ist falsch angegeben. |
| INVALID_COUNTRY_CODE | Ländercode ist falsch angegeben. |
| VERIFICATION_REQUIRED | Kontoverifizierung ist erforderlich, um die Operation auszuführen. |
| CARD_ISSUANCE_FAILED | Karte konnte nicht ausgestellt werden. |
| INVALID_BIN_NUMBER | Ungültige oder fehlende BIN-Nummer. |
| ACCOUNT_NOT_FOUND | Das angegebene Konto wurde nicht gefunden. |
| INVALID_ACCOUNT_NUMBER | Ungültige oder fehlende Kontonummer. |
| CARD_NOT_FOUND | Karte nicht gefunden. |
| CARD_BLOCKED | Karte ist gesperrt. |
| CARD_CLOSED | Karte ist geschlossen. |
| CARD_AWAITING | Karte befindet sich im Ausstellungsprozess. |
| CARD_REFUND_FAILED | Rückerstattung von der Karte fehlgeschlagen. |
| CARD_BLOCKING_FAILED | Kartensperrung ist aufgrund eines internen Systemfehlers fehlgeschlagen. |
| CARD_DETAILS_FAILED | Kartendetails konnten nicht abgerufen werden. |
| CARD_BALANCE_NOT_ZERO | Die Karte kann nicht geschlossen werden, da sich noch Mittel darauf befinden. |
| CARD_CLOSING_FAILED | Kartenschließung ist aufgrund eines internen Systemfehlers fehlgeschlagen. |
| REFUND_NOT_ALLOWED | Rückerstattung ist nicht erlaubt. |
| CARD_HAS_NO_BALANCE | Die Karte hat kein Guthaben. |
| CARD_REFUND_MIN_AMOUNT | Mindestbetrag für die Rückerstattung wurde nicht erreicht. |
| CARD_REFUND_MAX_AMOUNT | Rückerstattungsbetrag überschreitet das maximale Limit. |
| CARD_REFUND_COST_GREATER | Rückerstattungsbetrag nach Abzug der Gebühr ist kleiner als der minimal zulässige Rückerstattungsbetrag. |
| CARD_REFUND_AMOUNT_ZERO | Rückerstattungsbetrag muss größer als null sein. |
| ACCOUNT_DELETED | Das angegebene Konto wurde gelöscht. |
| CARD_MINIMUM_AMOUNT | Aufladebetrag muss über dem Mindestbetrag liegen. |
| CARD_MAXIMUM_AMOUNT | Aufladebetrag überschreitet den maximal zulässigen Betrag. |
| CARD_BALANCE_REFRESH_FAILED | Kartenguthaben konnte nicht aktualisiert werden. |
| CARD_HISTORY_REFRESH_FAILED | Kartenoperationshistorie konnte nicht aktualisiert werden. |
| SENDER_ACCOUNT_DELETED | Mittelüberweisung ist nicht möglich, da das Absenderkonto gelöscht oder deaktiviert wurde. |
| RECIPIENT_ACCOUNT_DELETED | Mittelüberweisung ist nicht möglich, da das Empfängerkonto gelöscht oder deaktiviert wurde. |
| TRANSACTION_NOT_PROCESSED | Die Transaktion wurde aufgrund eines Fehlers oder interner Einschränkungen nicht verarbeitet. |
| TRANSACTION_NOT_FOUND | Transaktion im System nicht gefunden. |
| INVALID_TRANSACTION_NUMBER | Ungültige oder fehlende Transaktionsnummer. |
| INVALID_DATE_RANGE | Ein falscher Datumsbereich wurde angegeben. Prüfen Sie das Format und die logische Korrektheit (das Startdatum darf nicht größer als das Enddatum sein). |