Törzsadat-API – végpontok, jogok és tárolás

A partner-, címtörzs-, bankszámlatörzs- és partner-bankszámla végpontok paraméterei, ellenőrzött jogkulcsai, tartalmi hatóköre és az írt táblák.

Áttekintés

A törzsadat-végpontok a catalog company/company és masterdata/bankaccount modelleken át dolgoznak; a bankszámlát mindig a központi normalizáló (dlbtvalidate) hozza kanonikus formára. A partner-végpontok tartalmi hatóköre a kulcs tulajdonosának csoport- és cég-szabályai (getApiScopeGroups(), getApiScopeCompanies()). Minden végpontnak van openapi önleíró darabja.

Végpontok

VégpontMűködésEllenőrzött jog
api/masterdata/companyPOST keresés: company_id, tax_number, name, email (formátum), limit (alap 20, max. 100); legalább egy szűrő; találatonként címek és bankszámlákcompany/company::list
company.listGET lapozott lista: page, limit 1–100, sort, order, tax_number (előtag), name, statuslist
company.getegy partner: alapadatok, taxpayer_status, címek KSH-hivatkozással, bankszámlák, users (mindig üres); hatókörön kívül vagy nem létező → 403list
company.addPUT vagy POST: company_name (kötelező, max. 255), rövid név, adószám, cégcsoport, status, opcionális bankaccount; adószám első 8 jegyére duplikáció → 422 a meglévő azonosítóval; bankszámla saveBankaccountForCompany()-val, hibája csak bankaccount_warning; a cégcsoport a hatókörben legyen (422)company/company::edit
company.deletehatókör, majd hivatkozás-számlálás; 0-nál deleteApiCompany() a cím- és bankszámla-kapcsolatokkal; fizikai törlés; hivatkozott cég → 422 darabszámmaldelete
addressmaster.list / .getsearch, status (alapból csak aktív), start, limit 1–200; nem létező → 404; cég-hatókör nincs (megosztott törzs)masterdata/address::list
addressmaster.addirányítószám és település kötelező; azonos sornál a meglévő duplicate:true-val, különben addMaster()edit
addressmaster.deletenem létező → 404; cégekhez kötött → 409 CONFLICT; különben fizikai törlésdelete
bankaccountmaster.list / .getsearch, currency, status (alap aktív), start, limit 1–200; nem létező → 404masterdata/bankaccount::list
bankaccountmaster.addbankaccount kötelező, currency (alap HUF), név, SWIFT, egyenleg, státusz; normalizálás 24 jegyű account_id-re (érvénytelen → 422); azonosnál a meglévő duplicate:true-valedit
bankaccountmaster.deletenem létező → 404; cégekhez kötött → 422 (error_linked)delete
bankaccount.list / .get / .add / .deleteegy partner bankszámlái company_id vagy tax_number alapján; hozzáadás saveBankaccountForCompany()-val (bankaccount_id, linked, normalized); törlés csak a kapcsolatot szünteti megcsak API-kulcs és cég-hatókör (isCompanyInApiScope), funkciójog nincs

Adatmodell

A táblanevek a telepítés saját előtagjával állnak az adatbázisban.

company, company_address, address, address_ksh, company_bankaccount, bankaccount, permission_scope.

Ismert korlátok

  • Az ellenőrzött jogkulcsok (company/company::list stb.) nincsenek BASE, SUBSCRIPTION vagy SYSTEM besorolásban; az edit és delete nincs besorolva a seedekben.
  • A partner törlése fizikai, nem kukába helyezés.