kostenloser Webspace werbefrei: lima-city


Micropayment

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    m********e

    Hallo lima-city!

    Ich benötige Hilfe beim erstellen einer API. Das System micropayments ruft auf meiner Seite die sog. API auf, nicht der User! Kann mir jemand ein Beispiel geben?? Ich möchte lediglich eine simple SQL-Abfrage machen, mehr nicht :)
    Hier einmal die Anleitung:

    <?php
    /*
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ==============================================================================================
    ==================================== = = = = = = = = = = = ===================================
    ================================= API HandyPay - Event ===================================
    ===================================== Version 1.0.4 ======================================
    ==================================== Datum 2007-09-03 ====================================
    ==================================== micropayment GmbH ===================================
    ==================================== = = = = = = = = = = = ===================================
    ==============================================================================================
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    Bei der Zahlungsart "HandyPay - Event" wird nach Beendigung eines Calls eine URL aufgerufen.

    Diese URL kann im Controlcenter konfiguriert werden:
    1. Loggen Sie sich auf http://www.micropayment.de ein
    2. Gehen Sie auf: -> Konfiguration / Zahlungsarten / Projektname / HandyPay - Event

    Typischerweise befindet sich an der angegebenen Adresse ein Script welches auf Seite des Projektinhabers
    den Zahlvorgang, also ein "Event", abschließt.
    Ein solches Event kann das Anlegen eines Useraccounts sein, das Aufladen eines Kontos oder das generieren
    eines PDF`s.
    Hinweis: Das Event wird nur einmal ausgelöst, unabhängig von Aktionen des Users (Seitenrefresh o.ä.)

    Das Script wird zusammen mit den angegebenen (GET) Parametern aufgerufen. Diese werden auch im Controlcenter
    über den Punkt "zusätzliche GET-Parameter (QueryString)" konfiguriert.

    ==============================================================================================

    Neben http ist auch https möglich.
    Bei der kompletten URL werden Platzhalter ersetzt, wenn sie gefunden werden.

    Diese Platzhalter haben immer folgende Form:

    __platzhaltername__ (2 Unterstriche vor und nach dem Platzhalternamen; alles klein geschrieben)



    1) vordefinierte Platzhalter:
    --------------------------
    Folgende Platzhalternamen stehen z.Z. zur Verfügung:

    amount - Der Parameter amount mit dem das Bezugsfenster initialisiert wurde
    currency - Der Parameter currency mit dem das Bezugsfenster initialisiert wurde; 3 Stellen ISO
    country - Das Land aus dem der Call erfolgte; 2 Stellen ISO
    auth - Eindeutige ID die den Call identifiziert
    title - Der Parameter title mit dem das Bezugsfenster initialisiert wurde

    2) frei definierbare Platzhalter:
    ------------------------------

    Dem Platzhalternamen wird ein $ (Dollarzeichen) vorangestellt. Also z.B.

    $freeparam
    $user

    Dieser freie Platzhalter wird mit dem Wert des gleichnamigen GET-Parameters, mit dem das Bezugsfenster
    aufgerufen wurde, ersetzt.



    Beispiel:
    Konfiguriert wurde:
    http://projekt.de/api/?amount=__amount__&title=__title__&auth=__auth__&country=__country__&currency=__currency__&free=__$freeparam__


    3) Funktionsmodi (Optionen API-URL)
    ------------------------------------
    Beim Aufruf der API-URL wird standardmäßig der Parameter "function" angehängt.
    Der Standardwert ist "billing" und wird immer nach einer erfolgreichen Zahlung aufgerufen.

    Wenn in der Konfiguration unter "Optionen API-URL" der Punkt "Das senden zusätlicher Daten aktivieren"
    angewählt wurde, werden zusätzliche Ereignisse an die API-URL geschickt. Spätestens mit
    Aktivierung dieser Option muß der Parameter "function" ausgewertet werden.

    Zur Zeit stehen folgende Funktionen zur Verfügung:

    billing - Aufruf nach einer erfolgreichen (Erst-) Zahlung
    storno - Ein Zahlvorgang wird storniert
    backpay - Ein stornierter Zahlvorgang wurde erfolgreich inkassiert (Storno ist aufgehoben).

    diese Funktionen können zukünftig erweitert werden. Sie sollten deshalb immer exakt auf die
    Funktion prüfen (keine Defaultverarbeitung)


    Erklärung:

    storno
    Wenn dem System die Stornierung einer Zahlung bekannt wird, können Sie über diese Funktion
    darüber informiert werden. Die API-URL wird in der selben Form (mit den gleichen Parametern)
    wie bei "billing", also der ursprünglichen Zahlung, aufgerufen.
    Die einzige Unterscheidung ist der Parameter "function".
    Sie können dann auf geeignete Art mit dieser Information verfahren.

    backpay
    Eine stornierte Zahlung wurde erfolgreich inkassiert, d.h. das ursprüngliche Storno
    ist damit aufgehoben. Verhalten ist wie bei "storno", allerdings mit function=backpay.


    Hinweis: Der Sessionparameter "auth" ist bei allen Funktionen gleich, wenn die selbe Ursprungszahlung gemeint ist.



    Aufruf des Bezugsfensters mit http://billing.micropayment.de/handypay/event/?project=.....&freeparam=das_ist_frei

    Die Weiterleitung nach dem Call zeigt auf:
    http://projekt.de/api/?amount=100&title=testartikel&auth=1234567890gjgjhgjhgjhgjhgjhgjhg&country=DE&currency=EUR&free=das_ist_frei&function=billing
    ==============================================================================================

    Als Response werden folgende Werte erwartet:
    (Diese müssen mit einem Zeilenumbruch (\n) getrennt werden.)

    status - mögliche Werte ok | error
    - wenn error wird eine Fehlermeldung im Bezugsfenster ausgegeben
    - wenn ok auf das in URL angegebene Ziel weitergeleitet
    url - Zieladresse auf die der Kunde weitergeleitet werden soll

    optionale parameter:

    target - das (html)Target in dem am Ende die Zieladresse ausgegeben werden soll.
    default ist _blank ;es wird also ein neues Fenster geöffnet.

    forward - Am Ende der Zahlung erscheint die "Erfolgsseite". Mit diesem Parameter legt man
    fest, ob der User auf einen Button klicken muß (0) oder ob versucht werden soll,
    automatisch das Ziel anzusurfen (1). Achtung, wenn ein neues Fenster automatisch
    geöffnet werden soll (forward=1 und target=_blank), wird das in vielen Fällen
    an Popup-Blockern scheitern.
    mögliche Werte 0 | 1
    default ist 0; es wird also nicht automatisch weitergeleitet


    Beispiel für einen OK-Response:

    status=ok
    url=http://projekt.de/member/?testparam=123jhsdkjh
    target=_top
    forward=1

    ==============================================================================================

    Nachfolgend eine simple Lösung per PHP
    */


    // 1. Parameter auswerten und Programmlogik --------------------------------------------------
    /*
    Aufruf erfolgte entsprechend dem obigen Beispiel mit:
    http://projekt.de/api/?amount=100&title=testartikel&auth=1234567890gjgjhgjhgjhgjhgjhgjhg&country=DE&currency=EUR&free=das_ist_frei&function=billing

    ergibt....

    $amount = $_GET['amount'];
    $title = $_GET['title'];
    $auth = $_GET['auth'];
    $country = $_GET['country'];
    $currency = $_GET['currency'];
    $free = $_GET['free'];
    $function = $_GET['function'];


    ... prüfen von $function


    a) wenn == 'billing'
    ... prüfen ob der Preis ($amount; $currency) zu dem Artikel ($title) paßt und dann entsprechende
    Aktionen ausführen

    .... $auth für Statistik oder zusätzliche Serviceabfragen speichern
    .... $country für Statistik oder sonstiges verwenden

    .... wenn alles OK ist Parameter url für den Response zusammenbauen....

    oder

    b) wenn == 'storno' => eine stornobehandlung
    ... Response wie bei billing zusammenbauen. (Url kann mit beliebigen Wert gefüllt werden)...

    c) wenn == 'backpay' => eine backpaybehandlung
    ... Response wie bei billing zusammenbauen. (Url kann mit beliebigen Wert gefüllt werden)...


    */

    // 2. Response preparieren ------------------------------------------------------------------
    $trenner = "\n";

    $status = 'ok';
    $url = 'http://projekt.de/member/?testparam=123jhsdkjh';
    $target = '_top';
    $forward = 1;




    $response = 'status=' . $status;
    $response.= $trenner;
    $response.= 'url=' . $url;
    $response.= $trenner;
    $response.= 'target=' . $target;
    $response.= $trenner;
    $response.= 'forward=' . $forward;

    echo $response;

    /*
    ==============================================================================================
    Beispielaufruf der Payment-URL:

    http://billing.micropayment.de/handypay/event/?project=testprojekt&amount=250&currency=EUR&title=memberid2342&theme=d2&freeparam=das_ist_frei

    ==============================================================================================
    .htaccess: erweiterte Contentsicherung durch alleinige Freigabe unserer IP:

    Order deny,allow
    Deny from all
    Allow from service.micropayment.de
    Allow from proxy.micropayment.de
    Allow from access.micropayment.de

    ==============================================================================================
    */
    ?>

    [/qoute]
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!