Описание

Параметры, передаваемые в форме выставления счета описаны в документации протокола:  Документация API-merchant 2.0 (Запрос выставления СКО) .

Обязательными параметрами являются:

• eshopId  - номер магазина в системе IntellectMoney
• invoiceId Счёт К Оплате - уникальный номер в системе IntellectMoney
• hash  - контрольная подпись, правила формирования описаны  тут .

Пример создания запроса

Начальные параметры:

• eshopId = 453271  - номер магазина в системе IntellectMoney
• invoiceId = 3053551762 - номер счета 
• hash = dHA6Ly9jcmwuZ2xvYmFsc2lnbi5jb20v3MvZ3Nkb21haW52YWxzaGEyZzIuY3JsMIG


В примере используется язык программирования - PHP:


<?php
$url = "https://api.intellectmoney.ru/merchant/getBankCardPaymentState"; //Url обращения к методу getBankCardPaymentState
$cert_file = 'c://сertificate.pem'; //Путь к сертификату
$cert_password = 'password'; //Пароль к сертификату

//Набор параметров
$secretKey = 'secret';
$eshopId = '453271';
$invoiceId = '3053551762';

// Формат формирования хэша
//eshopId::invoiceId::secretKey

// Формирование хэша
$hash = md5($eshopId . '::' . $invoiceId . '::' . $secretKey);

// Массив обязательных параметров
$params = [
    'eshopId' => $eshopId,
    'invoiceId' => $invoiceId,
    'hash' => $hash
];

// Отправляем запрос
echo (curlRequest($url, $params));

// Вспомогательная функция для отправки запросов
function curlRequest($url, $data) {
    $queryString = http_build_query($data);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $queryString);
    curl_setopt($ch, CURLOPT_SSLCERT, $cert_file);
    curl_setopt($ch, CURLOPT_SSLCERTPASSWD, $cert_password);
    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}