Инсталиране и настройка на API - версия 3.21
След като заплатите таксата за използване на API ще получите API номер и API секретен ключ, както и помощен PHP файл ClassFAPI.php
.
Postman настройки
Authorization таб
Type: Basic Auth
Username: {{API_NUMBER}}
Password: {{API_KEY}}
Tests таб
var data = JSON.parse(responseBody);
postman.setEnvironmentVariable('API_NUMBER', ''); // между апострофите въведете API номера
postman.setEnvironmentVariable('API_KEY', ''); // между апострофите въведете API ключа
Тестов URL
https://fakturirane.eu/api/license_status
CURL пример на PHP
$API_URL = 'https://fakturirane.eu/api/';
$API_COMMAND = 'license_status';
$API_NUMBER = ''; // предоставя се от фирма Лиценз ЕООД
$API_KEY = ''; // предоставя се от фирма Лиценз ЕООД
$data = array(); // array('sale_id'=>62);
$header = array('Authorization: Basic '.base64_encode($API_NUMBER.':'.$API_KEY));
$ch = curl_init();
try{
curl_setopt($ch, CURLOPT_URL, $API_URL.$API_COMMAND);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$result = curl_exec($ch);
$result = json_decode($result);
if($result->error == 0){
return $result;
}else{
echo 'Грешка № '.$result->error;
}
}catch (Exception $ex) {
echo 'Грешка: '.$ex->getMessage();
}finally{
curl_close($ch);
}
Настройка в PHP базирани системи
Копирайте файла ClassFAPI.php
в public_html/
или друга папка на вашия хостинг, която е достъпна през уеб браузър, например /public_html/fapi/
. Файлът съдържа PHP клас, който улеснява достъпа до API.
След това създайте нов PHP файл welcome.php
и в него копирайте PHP кода от тук. В променливата $API_NUMBER
въведете вашия ЕИК номер, а в $API_KEY
- секретния ключ за достъп.
След това заредете във вашия уеб браузър адреса: http://вашия сайт/fapi/welcome.php
.
Ако всичко е наред с инсталацията, тогава на екрана ще се зареди следното съобщение: "Добре дошли във Фактуриране API - версия 3.21!".
Delphi пример
procedure TForm1.Button1Click(Sender: TObject);
var
Command, Data, Answer: string;
DataToSend : TStringStream;
LJsonValue: TJSONValue;
begin
Command := 'document_statistics';
Data := '{"type":"2","year":"2019"}';
try
DataToSend := TStringStream.Create(data, TEncoding.UTF8);
try
IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvTLSv1_2;
IdHTTP1.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
IdHTTP1.Request.Accept := 'application/json';
IdHTTP1.Request.ContentType := 'application/json';
IdHTTP1.Request.BasicAuthentication := True;
IdHTTP1.Request.Username := ''; // API номер
IdHTTP1.Request.Password := ''; // API ключ
Answer := IdHTTP1.Post('https://fakturirane.eu/api/' + Command, DataToSend);
finally
DataToSend.Free;
end;
if Answer <> '' then
begin
LJsonValue := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(Answer), 0) as TJSONValue;
try
ShowMessage(LJsonValue.ToString);
finally
LJsonValue.Free;
end;
end;
except
on E: Exception do
ShowMessage('Error: '+E.ToString);
end;
end;