Пример #1
0
<?php

require_once dirname(dirname(__FILE__)) . '/Klarna.php';
// Dependencies from http://phpxmlrpc.sourceforge.net/
require_once dirname(dirname(__FILE__)) . '/transport/xmlrpc-3.0.0.beta/lib/xmlrpc.inc';
require_once dirname(dirname(__FILE__)) . '/transport/xmlrpc-3.0.0.beta/lib/xmlrpc_wrappers.inc';
$k = new Klarna();
$k->config(0, 'sharedSecret', KlarnaCountry::SE, KlarnaLanguage::SV, KlarnaCurrency::SEK, Klarna::BETA, 'json', './pclasses.json');
$rno = '2347666470';
try {
    $status = $k->checkOrderStatus($rno);
    // $status is KlarnaFlags::ACCEPTED, KlarnaFlags::DENIED or KlarnaFlags::PENDING
    echo "OK: order status {$status}\n";
} catch (Exception $e) {
    echo "{$e->getMessage()} (#{$e->getCode()})\n";
}
 /**
  * Get status code.
  *
  * @param Klarna $api Klarna API instance
  * @param string $ref klarna reference number
  *
  * @return string
  */
 private function _getStatus($api, $ref)
 {
     $statusName = "";
     try {
         $statusCode = $api->checkOrderStatus($ref);
         switch ($statusCode) {
             case 1:
                 return self::APPROVED;
             case 2:
                 return self::PENDING;
             case 3:
                 return self::DENIED;
         }
     } catch (Exception $e) {
         $this->_showError('Please visit <a href="http://online.klarna.com"> ' . 'Klarna Online</a> for more information.<br><br>', $e->getCode());
     }
     return null;
 }