我的办公室 / nmbrs
用于在PHP中消费NMBRS API的SDK
1.3.1
2023-08-23 11:27 UTC
Requires
- php: >=7.1
- ext-soap: *
README
初始化客户端
注意:用户应有权访问nmbrs中所有资源。您可以通过用户模板来管理此操作。
use Mijnkantoor\NMBRS\NmbrsClient; include(__DIR__ . "/vendor/autoload.php"); $client = new \Mijnkantoor\NMBRS\NmbrsClient("your-email-here", "your-token-here", "your-domai-here");
创建公司
注意:每个公司都属于一个债务人,因此我们首先创建该对象。
首先创建一个债务人
$highestDebNumber = $highestDebNumber = $client->getHighestDebtorNumber(); $debtor = $client->createDebtor('Some debtor', $highestDebNumber + 1));
为债务人创建公司
$highestDebNumber = $client->getHighestDebtorNumber(); $client->createDebtor('Some client', $highestDebNumber + 1); $highestCompanyNumber = $client->getHighestCompanyNumber(); $company = $client->createCompanyForDeptor($debtor->Id, [ 'Number' => $highestCompanyNumber, 'CompanyName' => 'Some Company', 'PeriodType' => NmbrsClient::DeclarationPeriodMonth, 'DefaultCompanyId' => -1, 'LabourAgreementSettingsGroupGuid' => '00000000-0000-0000-0000-000000000000', 'PayInAdvance' => false ]);
为公司创建地址
$address = $client->createAddressForCompany($company->Id, [ 'Default' => true, 'Street' => 'Some Street', 'HouseNumber' => '123', 'HouseNumberAddition' => 'A', 'PostalCode' => '1234 AB', 'City' => 'Some City', 'StateProvince' => 'Some Province', 'CountryISOCode' => 'nl', ]);
创建银行账户
$bankAccount = $client->createBankAccountForCompany($company->id, [ 'Description' => 'Test rekening', 'IBAN' => 'GB33BUKB20201555555555', 'BIC' => 'ABNANL2A', 'City' => 'TestDorp', 'Name' => 'Henk', 'Type' => 'Standaard', ]);
更新公司信息
首先更新债务人信息
$client->updateDebtor($debtor->id, ['Name' => 'Other Debtor']);
更新公司信息
// oops, doesn't exist at nmbrs API
更新公司地址
注意:更新实际上是一个删除和插入操作,因此每次更新都有一个新的addressId。
$currentAddress = $client->getCurrentAddressByCompanyId($company->id)); $client->updateAddressForCompany($company->id, $currentAddress->id, [ 'Default' => true, 'Street' => 'Other Street', 'HouseNumber' => '123', 'HouseNumberAddition' => 'A', 'PostalCode' => '1234 AB', 'City' => 'Other City', 'StateProvince' => 'Other Province', 'CountryISOCode' => 'nl', ]);
更新公司的默认银行账户
$currentBankAccount = $client->getDefaultBankAccountForCompany($company->id); $client->updateBankAccountForCompany($company->id, $currentBankAccount->id, [ 'Description' => 'Test rekeninger', 'IBAN' => 'NL70RABO4636681924', 'Type' => 'Standaard', ]);