Arama Yap Mesaj Gönder
Biz Sizi Arayalım
+90
X
X

Wählen Sie Ihre Währung

Türk Lirası $ US Dollar Euro
X
X

Wählen Sie Ihre Währung

Türk Lirası $ US Dollar Euro

Wissensdatenbank

Startseite Wissensdatenbank Allgemein PayTR Direkt API Integration: Schri...

Bize Ulaşın

Konum Halkalı merkez mahallesi fatih cd ozgur apt no 46 , Küçükçekmece , İstanbul , 34303 , TR

PayTR Direkt API Integration: Schritt 1 - Direktzahlungen mit dem Zahlungsformular entgegennehmen

In diesem Artikel erklären wir Schritt für Schritt, wie Sie mit der PayTR Direkt-API Zahlungen direkt über das Zahlungsformular entgegennehmen können. Wir behandeln die serverseitige Validierung, die Token-Generierung, das korrekte Senden der Formulardaten und die Zahlungsstatus.

Verwandte Anleitungen:


Funktionsweise der Direkt-API-Integration

  1. Der Kunde möchte ein Produkt/eine Dienstleistung erwerben.

  2. Er gibt seine Daten in das Zahlungsformular ein.

  3. Ein Token wird generiert und die Daten werden direkt an PayTR per POST gesendet.

  4. PayTR überprüft die Daten und leitet den Kunden auf die Erfolgs-/Fehlerseite weiter.


1) Wie wird ein Token generiert?

Erforderliche Felder:

  • merchant_id

  • user_ip

  • merchant_oid

  • email

  • payment_amount

  • payment_type ('card')

  • installment_count

  • currency (Standardmäßig TL)

  • test_mode

  • non_3d

PHP-Beispiel zur Token-Berechnung:

$hash_str = $merchant_id . $user_ip . $merchant_oid . $email . $payment_amount . $payment_type . $installment_count . $currency . $test_mode . $non_3d;
$paytr_token = base64_encode(hash_hmac('sha256', $hash_str.$merchant_salt, $merchant_key, true));

Hinweis: Die HMAC SHA256-Hash-Verschlüsselung mit Base64 ist obligatorisch.


2) Was muss in der POST-Anfrage gesendet werden?

Feldname Beschreibung
merchant_id Händler-ID
paytr_token Der von Ihnen generierte Token
user_ip IP-Adresse des Kunden
merchant_oid Bestellnummer
email E-Mail-Adresse des Kunden
payment_type 'card'
payment_amount Zahlungsbetrag
installment_count Anzahl der Raten
cc_owner Karteninhaber
card_number Kartennummer
expiry_month Monat
expiry_year Jahr
cvv CVV
merchant_ok_url Erfolgreiche Weiterleitungs-URL
merchant_fail_url Fehlerhafte Weiterleitungs-URL
user_name Name des Kunden
user_address Adresse
user_phone Telefonnummer
user_basket JSON-Warenkorbdaten

3) Erstellen eines Zahlungsformulars (PHP-HTML-Beispiel)

<form action="https://www.paytr.com/odeme" method="post">
    <input type="text" name="cc_owner" value="TEST KARTI">
    <input type="text" name="card_number" value="9792030394440796">
    <input type="text" name="expiry_month" value="12">
    <input type="text" name="expiry_year" value="99">
    <input type="text" name="cvv" value="000">
    <!-- Andere obligatorische versteckte Eingabefelder -->
    <input type="hidden" name="merchant_id" value="..."><!-- usw. -->
    <input type="submit" value="Zahlen">
</form>

4) Sync-Modus (falls verwendet)

  • Wenn sync_mode=1 gesendet wird, wird das Zahlungsergebnis sofort im JSON-Format zurückgegeben.

  • Sie können die Werte "status": "success" oder "failed" oder "wait_callback" erhalten.

  • Bietet eine schnellere Integration und ein modernes Zahlungserlebnis.

Beispiel für eine JSON-Antwort im Sync-Modus:

{
  "status": "success",
  "msg": "Zahlung erfolgreich",
  "utoken": "...", // Wenn die Kartenspeicherung erfolgt ist
  "ctoken": "..."
}

5) Benachrichtigungs-URL und Zahlungsergebnisse

  • Auch wenn der Kunde zu merchant_ok_url geht, wird die Bestellung nicht bestätigt!

  • Die eigentliche Validierung erfolgt über die Benachrichtigungs-URL mit serverseitigen POST-Daten.

  • Sie können die Bestellung bestätigen, wenn status=success in den per POST gesendeten Werten enthalten ist.


6) Zu beachtende Punkte

  • Karteninformationen dürfen nur an PayTR gesendet werden. Speichern Sie sie auf keinen Fall auf Ihrem eigenen Server.

  • Wenn Sie Probleme haben, die IP-Adresse zu erhalten, überprüfen Sie den Wert "REMOTE_ADDR".

  • Auch in der Testumgebung muss "SSL/TLS" aktiviert sein.

  • Senden Sie debug_on=1, um Fehler zu beheben.


Häufige Fehler und Lösungen

Problem Ursache Lösung
"bad hash"-Fehler Falsche Hash-Berechnung Überprüfen Sie die HMAC SHA256- und Base64-Codierung
Das Zahlungsformular gibt einen Fehler aus Fehlendes Feld Stellen Sie sicher, dass Sie alle obligatorischen Felder senden
Die Bestellung wird nicht bestätigt, wenn der Kunde zu merchant_ok_url geht Bestätigung über die Benachrichtigungs-URL wird erwartet Codieren Sie die Benachrichtigungs-URL korrekt

Fazit: Kontrolle mit der Direkt-API!

Die PayTR Direkt-API-Integration ermöglicht es Ihnen, den Zahlungsprozess vollständig auf Ihrer eigenen Seite zu steuern. Insbesondere mit Ratenzahlungen und Non-3D Secure-Transaktionsoptionen bietet sie ein flexibleres Integrationserlebnis.

Verwandte Artikel:

 

Finden Sie nicht die Informationen, die Sie suchen?

Ticket erstellen
Fanden Sie es nützlich?
(1142 mal angesehen / 358 Kunden fanden es hilfreich)

Call now to get more detailed information about our products and services.

Top