nmaximenko/poscredit-api-client

PHP Client for PosCredit REST API

dev-master 2016-05-10 13:44 UTC

This package is not auto-updated.

Last update: 2024-09-14 17:59:02 UTC


README

Requirements

  • PHP 5.3 and above
  • PHP's cURL support

Install

  1. Get composer

  2. Run into your project directory:

composer require nmaximenko/poscredit-api-client dev-master

If you have not used composer before, include autoloader into your project.

require 'path/to/vendor/autoload.php';

Usage

Get status

$client = new \PosCredit\ApiClient(
    'userID',
    'userToken'
);
$id = 'pocsredit-request-id';

try {
    $responseText = $client->getCreditStatus($id);
    $response = new \PosCredit\Response\StatusResponse($responseText);
} catch (\RuntimeException $e) {
    echo "Error: " . $e->getMessage();
}

if ($response->isSuccessful()) {
    echo $response->status;
    
    if ($response->status == \PosCredit\Response\StatusResponse::STATUS_DENIED) {
        echo 'credit denied';
    }

    if ($response->status >= \PosCredit\Response\StatusResponse::STATUS_AUTHORIZED) {
        $data['credit_answer'] = $response->answer;
        $data['credit_bank'] = $response->bank;
        $data['credit_sale'] = $response->sale;
        $data['credit_firstpayment'] = $response->firstPayment;
        $data['credit_dognumber'] = $response->dogNumber;
        $data['credit_creditsumm'] = $response->creditSumm;
        $data['credit_creditterms'] = $response->creditTerms;

        if (!empty($response->transferPayment)) {
            if (!empty($response->transferPayment['datePayment'])) {
                $data['credit_datepayment'] = $response->transferPayment['datePayment'];
            }

            if (!empty($response->transferPayment['statusPayment'])) {
                $data['credit_statuspayment'] = $response->transferPayment['statusPayment'];
            }
        }

        print_r($data);
    }
} else {
    echo $response->getError();
}

Create credit request

$client = new \PosCredit\ApiClient(
    'userID',
    'userToken'
);

try {
    $responseText = $client->sendCreditRequest(array(
        'request_id' => 'some-shop-order-id',
        'firstname' => 'Vasily',
        'lastname' => 'Pupkin',
        'surname' => 'Ivanovich',
        'phone' => '9612007788',
        'goods' => array(
            array(
                'name' => 'Cofe-machine',
                'price' => '26500.11',
                //'model' => 'A100',
                //'brand' => 'Nescafe',
            ),
            //...
        ),
        //'comment' => 'customer comment',
    ));
    $response = new \PosCredit\Response\ApiResponse($responseText);
} catch (\RuntimeException $e) {
    echo "Error: " . $e->getMessage();
}

if ($response->isSuccessful()) {
    echo 'Credit request successfully created. ID in PosCredit = ' . $response->idProfile;
} else {
    echo $response->getError();
}