Számlázó példaprogram

A legfrissebb MiniCRM API dokumentációnk az alábbi linken érhető el:
http://cdn.minicrm.hu/media/MiniCRM-Api-Hungarian.pdf

Az alábbi fejezetben egy php példaprogrammal kerül bemutatásra az API működése, Curl segítségével.

  • Rendszer azonosító (SystemId): 50
  • API kulcs (APIKey): ZxPPCqDItuQhoaLeBM2679mT3iG5NgH1
//Url összeállítása
$Url = 'https://50:ZxPPCqDItuQhoaLeBM2679mT3iG5NgH1@r3.minicrm.hu/Api/Invoice/';

//Paraméterek megadása tömb formátumban
$Params = array(
    'CustomerId' => 12,
    'Type' => 'ProForma',
    'PaymentMethod' => 'WiredTransfer',
    'Issued' => '2013-11-27',
    'Performance' => '2013-11-27',
    'Prompt' => '2013-11-27',
    'CurrencyCode' => 'HUF',
    'IsReverseCharge' => 0,
    'Customer' => array(
        'Name' => 'PHP Teszt User',
        'Country' => 'Magyarország',
        'PostalCode' => 1111,
        'City' => 'Budapest',
        'Address' => 'Példa köz 3.',
        'AccountNumber' => '11111111-2222222-3333333',
        'VatNumber' => '13579135-13-5'
    ),
    'Items' => array(
        0 => array(
            'Name' => 'Teszt szolgáltatás',
            'Unit' => 'darab',
            'Quantity' => 1,
            'VAT' => 27,
            'PriceNet' => 5000
        )
    )
);

//Curl inicializálása
$Curl = curl_init();
curl_setopt($Curl, CURLOPT_RETURNTRANSFER , true);
curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER , false);

//Paraméterek JSON kódolása
$Params = json_encode($Params);

//Fejlécek beállítása (adat típusa, hossza és karakterkódolása)
curl_setopt($Curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Content-Length: '.strlen($Params), 'charset=UTF-8'));

//Kérés típusának átállítása POST-ra
curl_setopt($Curl, CURLOPT_POST, 1);

//Paraméterek átadása a Curl-nek
curl_setopt($Curl, CURLOPT_POSTFIELDS, $Params);

//Url átadása a Curl-nek
curl_setopt($Curl, CURLOPT_URL, $Url);

//Curl kérés lefuttatása
$Response = curl_exec($Curl);

//Curl kérés futtatásában volt-e hiba?
if(curl_errno($Curl)) $Error = "Hiba a Curl futtatásakor: ".curl_error($Curl);

//API által visszatérített http kód lekérése
$ResponseCode = curl_getinfo($Curl, CURLINFO_HTTP_CODE);
if($ResponseCode != 200) $Error = "API Hibakód: {$ResponseCode} - Üzenet: {$Response}";

//Curl lezárása
curl_close($Curl);