Számlázó példaprogram
A legfrissebb MiniCRM API dokumentációnk az alábbi linken érhető el:
MiniCRM Api Dokumentáció
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);