Exemplu de script pentru facturare

Ultima versiune a documentației MiniCRM API (în limba engleză) poate fi consultată dând click pe următorul link: MiniCRM Api English.

În secțiunea următoare vei regăsi un exemplu de script API și Curl folosind scris în PHP.

  • System ID (SystemId):  50
  • API Key (APIKey):  ZxPPCqDItuQhoaLeBM2679mT3iG5NgH1
//Compile URL
$Url = 'https://50:ZxPPCqDItuQhoaLeBM2679mT3iG5NgH1@r3.minicrm.hu/Api/Invoice/';

//Parameters array
$Params = array(
    'CustomerId' => 12,
    'Type' => 'ProForma',
    'PaymentMethod' => 'WiredTransfer',
    'Issued' => '2013-11-27',
    'Performance' => '2013-11-27',
    'Prompt' => '2013-11-27',
    'CurrencyCode' => 'EUR',
    'IsReverseCharge' => 0,
    'Customer' => array(
        'Name' => 'PHP Test User',
        'Country' => 'România',
        'PostalCode' => 123456,
        'City' => 'Cluj-Napoca',
        'Address' => 'Str. Arieșului',
        'AccountNumber' => '11111111-2222222-3333333',
        'VatNumber' => '13579135-13-5'
    ),
    'Items' => array(
        0 => array(
            'Name' => 'Test service',
            'Unit' => 'piece',
            'Quantity' => 1,
            'VAT' => 19,
            'PriceNet' => 50
        )
    )
);

//Initialize Curl
$Curl = curl_init();
curl_setopt($Curl, CURLOPT_RETURNTRANSFER , true);
curl_setopt($Curl, CURLOPT_SSL_VERIFYPEER , false);

//Encode JSON parameters
$Params = json_encode($Params);

//Set headers (data type, length and character encoding)
curl_setopt($Curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Content-Length: '.strlen($Params), 'charset=UTF-8'));

//Set request type to POST
curl_setopt($Curl, CURLOPT_POST, 1);

//Pass parameters to Curl
curl_setopt($Curl, CURLOPT_POSTFIELDS, $Params);

//Pass the url to Curl
curl_setopt($Curl, CURLOPT_URL, $Url);

//Run Curl request
$Response = curl_exec($Curl);

//Was there a problem running the Curl request?
if(curl_errno($Curl)) $Error = "Error while running Curl : ".curl_error($Curl);

//Get the http code returned by the API
$ResponseCode = curl_getinfo($Curl, CURLINFO_HTTP_CODE);
if($ResponseCode != 200) $Error = "API Error Code: {$ResponseCode} - Message: {$Response}";

//Close Curl
curl_close($Curl);