定制 stomaskovic/fiskalizacija 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

stomaskovic/fiskalizacija

最新稳定版本:1.0.5

Composer 安装命令:

composer require stomaskovic/fiskalizacija

包简介

PHP API za fiskalizaciju računa

README 文档

README

Build Status Total Downloads

Fork od baitella/fiskalizacija koji je fork od nticaric/fiskalizacija.

PHP API za fiskalizaciju računa u Hrvatskoj

Primjer računa:

Ako se radi o testnoj okolini s demo certifikatom, četvrti parametar konstruktora je potrebno postaviti u true

$fis = new Fiskalizacija("./path/to/certificate.pfx", "password", "security" , true);

Ako se radi o produkcijskoj okolini, četvrti parametar se treba postaviti na false ili se može izostaviti

$fis = new Fiskalizacija("./path/to/certificate.pfx", "password");

Od 27. listopada 2015. napušta se SSL protokol pri komunikaciji fiskalnih blagajni s poslužiteljima i prelazi se na TLS protokol. Kao treći parametar konstruktora treba se postaviti TLS umjesto SSL. Ako bi se treći parametar izostavio, koristio bi se SSL kao default protokol.

$fis = new Fiskalizacija("./path/to/certificate.pfx", "password", "TLS", true);
<?php

use Nticaric\Fiskalizacija\Fiskalizacija;
use Nticaric\Fiskalizacija\Bill\Bill;
use Nticaric\Fiskalizacija\Bill\Refund;
use Nticaric\Fiskalizacija\Bill\BillNumber;
use Nticaric\Fiskalizacija\Bill\TaxRate;
use Nticaric\Fiskalizacija\Bill\BillRequest;

$billNumber = new BillNumber(1, "ODV1", "1");

$listPdv = array();
$listPdv[] = new TaxRate(25.1, 400.1, 20.1, null);
$listPdv[] = new TaxRate(10.1, 500.1, 15.444, null);

$listPnp = array();
$listPnp[] = new TaxRate(30.1, 100.1, 10.1, null);
$listPnp[] = new TaxRate(20.1, 200.1, 20.1, null);

$listOtherTaxRate = array();
$listOtherTaxRate[] = new TaxRate(40.1, 453.3, 12.1, "Naziv1");
$listOtherTaxRate[] = new TaxRate(27.1, 445.1, 50.1, "Naziv2");


$bill = new Bill();

$bill->setOib("32314900695");
$bill->setHavePDV(true);
$bill->setDateTime("15.07.2014T20:00:00");
//  $bill->setNoteOfOrder("P");
$bill->setBillNumber($billNumber);
$bill->setListPDV($listPdv);
$bill->setListPNP($listPnp);
$bill->setListOtherTaxRate($listOtherTaxRate);
$bill->setTaxFreeValue(23.5);
$bill->setMarginForTaxRate(32.0);
$bill->setTaxFree(5.1);
//$bill->setRefund(refund);
$bill->setTotalValue(456.1);
$bill->setTypeOfPlacanje("G");
$bill->setOibOperative("34562123431");

$fis = new Fiskalizacija("path/to/demo.pfx", "password", "TLS", true);

$bill->setSecurityCode(
    $bill->securityCode(
        $fis->getPrivateKey(),
        $bill->oib, 
        $bill->dateTime, 
        $billNumber->numberNoteBill, 
        $billNumber->noteOfBusinessArea, 
        $billNumber->noteOfExcangeDevice, 
        $bill->totalValue
    )
);

$bill->setNoteOfRedelivary(false);

$billRequest = new BillRequest($bill);

$soapMessage = $fis->signXML($billRequest->toXML());
$res = $fis->sendSoap($soapMessage);
var_dump($res);

Primjer poslovnog prostora:

<?php

use Nticaric\Fiskalizacija\Fiskalizacija;
use Nticaric\Fiskalizacija\Business\Address;
use Nticaric\Fiskalizacija\Business\AddressData;
use Nticaric\Fiskalizacija\Business\BusinessArea;
use Nticaric\Fiskalizacija\Business\BusinessAreaRequest;
use Carbon\Carbon;

$address = new Address;
$address->street = "Sv. Mateja";
$address->houseNumber = "19";
$address->zipCode = "10000";
$address->settlement = "Zagreb";
$address->city = "Zagreb";

$addressData = new AddressData;
$addressData->setAddress($address);

$businessArea = new BusinessArea;
$businessArea->setAddressData($addressData);

$date = Carbon::now()->format("d.m.Y");
$businessArea->setDateOfusage($date);

$businessArea->setNoteOfBusinessArea("ODV1");
//$businessArea->setNoteOfClosing("Z");
$businessArea->setOib("32314900695");
$businessArea->setSpecificPurpose("spec namjena");

$businessArea->setWorkingTime("Pon:08-11h Uto:15-17");
$businessAreaRequest = new BusinessAreaRequest($businessArea);

$fis = new Fiskalizacija("./path/to/demo.pfx", "password", "TLS", true);

$soapMessage = $fis->signXML($businessAreaRequest->toXML());

$res = $fis->sendSoap($soapMessage);
var_dump($res);

Primjer testne poruke:

<?php

use Nticaric\Fiskalizacija\Fiskalizacija;
use Nticaric\Fiskalizacija\Test\Test;
use Nticaric\Fiskalizacija\Test\TestRequest;
use Carbon\Carbon;

$test = new Test();
$test->setMessage("testna poruka");

$testRequest = new TestRequest($test);

$fis = new Fiskalizacija("./path/to/demo.pfx", "password", "TLS", true);

$soapMessage = $fis->plainXML($testRequest->toXML());

$res = $fis->sendSoap($soapMessage);
var_dump($res);

统计信息

  • 总下载量: 125
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 40
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-09-12

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固