multicommerce/mcps-sdk-php

Multicommerce php sdk

dev-master 2017-08-01 13:20 UTC

This package is not auto-updated.

Last update: 2025-06-11 23:44:17 UTC


README

Инициализация клиента

$client = \Multicommerce\Gate\Client::initInstance([
  'point_uuid' => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
	'key' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
	'hash_algo' => 'sha256',
	'api_url' => 'https://xxxxx.xxx/xxx'
]);

Инициализация платежа

$client = \Multicommerce\Gate\Client::getInstance();

$packet = $client->init([	      
    'amount' => 123000,
    'currency' => 'RUB',
    'description' => 'Order 123456789',
    'order_id' => '123456789',
    'email' => 'user@xxxxxx.xxx',
    'phone' => '+79123456789',
    'user_ip' => '11.22.33.44'
]);

if ($packet->isSuccess()) {
    //$data = $res->getValues();
    $payment_uuid = $packet->getValue('payment_uuid');
    //сохраняем uuid платжеа
    //$order->setProviderPaymentUuid($payment_uuid);

    // перенаправляем пользователя
    header('Location: '.$packet->getValue('redirection_url');
	    
} else {
    $err_message = $packet->getMessage();
    $err_code = $packet->getCode();
    // throw new Exception($err_message, $err_code);
	    
}

Получение состояния платежа

$client = \Multicommerce\Gate\Client::getInstance();
$packet = $client->statusByOrderId('123456789');
if ($packet->isSuccess()) {
   //...	    
}

##Обработка callback

if(isset($_POST['data']) {
$client = \Multicommerce\Gate\Client::getInstance();
$packet = $client->parseIncomingData($_POST['data']);
$command = $packet->getValue('command');
//...
}