Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

    Voici un exemple d'utilisation dans la page qui doit rediriger les valeurs du paiement vers la plateforme de paiement :    

init the class


            $paymentRequest = new Axepta($Your_HMAC);

            $paymentRequest->setCryptKey($Your_CRYPTKEY);

           

    Set your data in :


            $paymentRequest->setUrl(Axepta::PAYSSL);

            $paymentRequest->setMerchantID($Your_MERCHANTID);

            $paymentRequest->setTransID("Your paiement prefix" . $Your_Payment_id."/".rand(100000,999999));

            $paymentRequest->setAmount($Your_Amount*100);

            $paymentRequest->setCurrency('EUR');

            $paymentRequest->setRefNr($Your_Ref);

           

            $paymentRequest->setURLSuccess("Your success URL page");   

            $paymentRequest->setURLFailure("Your failure URL page");   

            $paymentRequest->setURLNotify("Your notify URL page");

           

            $paymentRequest->setURLBack("Your cancel URL back page");   

            $paymentRequest->setReponse('encrypt');   

            $paymentRequest->setLanguage('fr');

            $paymentRequest->setOrderDesc('Your Order description text');

            // ...

           

            // check your data

    data            $paymentRequest->validate();

       

            // compute    compute

            $mac = $paymentRequest->getShaSign() ;         // run HMAC hash    hash

            $data = $paymentRequest->getBfishCrypt();    // run Crypt & retrieve Data

    Data            $len = $paymentRequest->getLen();            // retrieve Crypt length


    fill your form


           echo "<html><body><form name=\"redirectForm\" method=\"GET\" action=\"" . $paymentRequest->getUrl() . "\">" .

                 "<input type=\"hidden\" name=\"MerchantID\" value=\"". $paymentRequest->getMerchantID() . "\">" .

                 "<input type=\"hidden\" name=\"Len\" value=\"". $paymentRequest->getLen() . "\">" .

                 "<input type=\"hidden\" name=\"Data\" value=\"". $paymentRequest->getBfishCrypt() . "\">" .

                 "<input type=\"hidden\" name=\"URLBack\" value=\"". $paymentRequest->getURLBack() . "\">" .

                 "<input type=\"hidden\" name=\"CustomField1\" value=\"". $paymentRequest->getAmount()/100 . "\">" .

                 "<input type=\"hidden\" name=\"CustomField2\" value=\"". $paymentRequest->getTransID() . "\">" .

                 "<input type=\"hidden\" name=\"CustomField3\" value=\"". $Your_logo_img . "\">" .

                 "<input type=\"hidden\" name=\"CustomField8\" value=\"". $Your_miscelaneous text . "\">" .

                 "<noscript><input type=\"submit\" name=\"Go\" value=\"Click to continue\"/></noscript> </form>" .

                 "<script type=\"text/javascript\">document.redirectForm.submit(); </script>" .

                 "</body></html>";




 Voici un exemple d'utilisation lors d'une connexion server-to-server :    

    init the class

            $paymentRequest = new Axepta($Your_HMAC);
            $paymentRequest->setCryptKey($Your_CRYPTKEY);
           
    Set your data in :

            $paymentRequest->setUrl(Axepta::DIRECT);
            $paymentRequest->setMerchantID($Your_MERCHANTID);
            $paymentRequest->setTransID("Your paiement prefix" . $Your_Payment_id."/".rand(100000,999999));
            $paymentRequest->setAmount($Your_Amount*100);
            $paymentRequest->setCurrency('EUR');
            $paymentRequest->setRefNr($Your_Ref);
           
            $paymentRequest->setURLSuccess("Your success URL page");   
            $paymentRequest->setURLFailure("Your failure URL page");   
            $paymentRequest->setURLNotify("Your notify URL page");
           
            $paymentRequest->setURLBack("Your cancel URL back page");   
            $paymentRequest->setReponse('encrypt');   
            $paymentRequest->setLanguage('fr');
            $paymentRequest->setOrderDesc('Your Order description text');
            // ...
           
            // check your data    data
            $paymentRequest->validate();
       
            // compute    compute
            $mac = $paymentRequest->getShaSign() ;         // run HMAC hash    hash
            $data = $paymentRequest->getBfishCrypt();    // run Crypt & retrieve Data    Data
            $len = $paymentRequest->getLen();            // retrieve Crypt length

    Send the POST REQUEST  :  ( code depending on the PHP framework you use )


            $request = Request::factory($paymentRequest->getUrl())            ->headers('Content-type', 'application/x-www-form-urlencoded; charset=UTF-8')
            ->method(Request::POST)
            ->post($transmit);


Voici un exemple d'utilisation lors de la réception de la réponse dans les pages URLnotify ou URLSuccess

        $paymentResponse = new Axepta($Your_HMAC);
        $paymentResponse->setCryptKey($Your_CRYPTKEY);
        $paymentResponse->setResponse($_GET);
        if($paymentResponse->isValid() && $paymentResponse->isSuccessful()) {
            $TransID = $paymentResponse->getPayID();
            $PCNr = $paymentResponse->getPCNr();
            $CCBrand  = $paymentResponse->getCCBrand();
            $CCExpiry = $paymentResponse->getCCExpiry();
            // .....
        } else {
            // Fail ....
        }