Імпарт банкаўскіх выпісак у Odoo – гэта толькі першы крок. Рэальная карысць з’яўляецца толькі тады, калі банкаўскую аперацыю можна надзейна суаднесці з правільным выходным рахункам, рахункам пастаўшчыка, крэдытовай нотай або плацяжом.
Менавіта тут у Odoo 19 Community не хапае зручнай магчымасці ў карыстальніцкім інтэрфейсе. Імпартаваныя банкаўскія радкі таму спачатку застаюцца на прамежкавым банкаўскім рахунку і для далейшай апрацоўкі іх трэба прызначыць адкрытай бухгалтарскай пазіцыі.
Для нашай уласнай устаноўкі Odoo 19 Community мы таму распрацавалі Bank Statement Matcher. Паколькі гэтая праблема тычыцца не толькі нас, мы бясплатна прадстаўляем модуль на GitHub пад свабоднай ліцэнзіяй AGPL-3.
Да праекта на GitHub:
Odoo 19 Bank Statement Matcher
Ад імпарту банкаўскай выпіскі да правільнага рахунку
З нашым ужо апублікаваным праектам Odoo 19 Bank Statement Import у Odoo 19 Community можна счытваць розныя фарматы банкаўскіх выпісак. Да іх адносяцца, сярод іншага, CAMT.053, CAMT.054, OFX і SWIFT MT940.
Новы Bank Statement Matcher дапаўняе гэты імпарт наступным вызначальным працоўным крокам:
Якая імпартаваная банкаўская аперацыя адносіцца да якой адкрытай пазіцыі?
Модуль шукае сярод адкрытых дэбіторскіх і крэдытных запазычанасцяў, ацэньвае магчымыя супадзенні і паказвае карыстальнікам, чаму прапануецца менавіта такое супастаўленне. Прапанову можна праверыць, пацвердзіць, выправіць або замяніць ручным выбарам.
Так для Odoo 19 Community узнікае скразны працоўны працэс:
Імпартаваць банкаўскую выпіску
вызначыць магчымыя супастаўленні
праверыць прапановы разам
прыняць адназначныя супадзенні
неадназначныя выпадкі апрацаваць уручную
Што ўмее Odoo 19 Bank Statement Matcher
Модуль распрацаваны для практычнага выкарыстання ў бухгалтарыі. Ён падтрымлівае, сярод іншага, наступныя функцыі:
пошук адпаведных рахункаў, рахункаў пастаўшчыкоў, крэдытовых нот і плацяжоў
аўтаматычнае вызначэнне прапаноў па супастаўленні пры стварэнні банкаўскага радка
зразумелае адлюстраванне выкарыстанага правіла супастаўлення і яго надзейнасці
паўторны пошук у пазнейшы час
асобнае супастаўленне або сумесная апрацоўка некалькіх банкаўскіх радкоў
ручны выбар адкрытай пазіцыі, калі ніводная прапанова не падыходзіць
адмена ўжо выкананага супастаўлення
распазнаванне некалькіх раўназначных супадзенняў без адвольнага рашэння
падказкі пра прапановы або заказы, па якіх яшчэ няма адкрытай бухгалтарскай пазіцыі
неабавязковая непасрэдная перадача з імпарту банкаўскіх выпісак OCA ў від супастаўлення
нямецкі пераклад пры англійскім зыходным кодзе
Цэнтральны агляд даступны ў Odoo праз Бухгалтарыя → Бухгалтарыя → Супастаўленне банкаўскіх радкоў. Там можна сумесна шукаць і апрацоўваць яшчэ адкрытыя банкаўскія радкі.
Зразумелае супастаўленне замест чорнай скрынкі
З фінансавымі данымі недастаткова проста прапанаваць якое-небудзь супадзенне. Карыстальнікі павінны бачыць, чаму банкаўская аперацыя павінна адпавядаць пэўнаму дакументу.
Таму Bank Statement Matcher працуе з выразна вызначанымі правіламі і рознымі ўзроўнямі даверу:
| Давер | Правіла | Значэнне |
|---|---|---|
| 100 | Рэферэнс | У тэксце праводкі знойдзены нумар дакумента, плацёжны рэферэнс або рэферэнс паходжання. |
| 80 | Партнёр і сума | Дзелавы партнёр і адкрытая сума супадаюць. |
| 60 | Адназначная сума | Сума дакладна адпавядае толькі адной адкрытай пазіцыі. |
| 30 | Партнёр | Партнёр супадае, але сума не; гэта толькі падказка. |
Для кожнага журнала можна вызначыць, пачынаючы з якога ўзроўню даверу адназначная прапанова можа быць прынята праз групавое дзеянне. Больш слабыя супадзенні застаюцца бачнымі, але павінны быць правераны і пацверджаны паасобку.
Пры гэтым важна: модуль не выконвае праводкі ў фонавым рэжыме без нагляду. Ён стварае прапановы. Супастаўленне адбываецца толькі ў выніку свядомага дзеяння карыстальніка – паасобку або праз кантраляваную групавую апрацоўку.
Улічваюцца і складаныя банкаўскія рэферэнсы
Банкі не заўсёды перадаюць плацёжныя рэферэнсы ў адзінай форме. Нумар рахунку можа быць злучаны з імёнамі, лічбамі або іншымі звесткамі. Раздзяляльнікі могуць адсутнічаць або быць адлюстраваны інакш, чым у зыходным дакуменце.
Таму Matcher нармалізуе значэнні для параўнання і ўлічвае таксама пераходы паміж літарамі і лічбамі. Так рэферэнсы можна распазнаць, напрыклад, і тады, калі яны ў банкаўскім тэксце дапісаны непасрэдна да іншага зместу.
Пошук наўмысна ідзе ад дакумента Odoo да банкаўскага тэксту. Гэта пазбаўляе ад таго, каб кароткія агульныя паслядоўнасці лічбаў з тэксту праводкі прыводзілі да вялікай колькасці непадыходзячых супадзенняў.
Правілы не абмежаваны ні пэўным банкам, ні пэўнай краінай, ні жорстка зададзенай схемай нумарацыі. Гэта робіць модуль цікавым і для іншых устаноўак Odoo 19 Community.
Чаму важны паўторны пошук
Не кожны банкаўскі плацёж можна суаднесці ўжо пры імпарце. На практыцы плацёж можа паступіць раней, чым адпаведны рахунак створаны або праведзены ў Odoo. Рахунак пастаўшчыка або крэдытовая нота таксама могуць быць занесены толькі пазней.
Таму банкаўскія радкі можна праз «Шукаць зноў» праверыць яшчэ раз у пазнейшы час. Як толькі адпаведная адкрытая пазіцыя з’явіцца, раней неспастаўляемая банкаўская аперацыя можа стаць адназначным супадзеннем.
Калі, напрыклад, у банкаўскім тэксце названа прапанова або заказ, па якім яшчэ няма рахунку і, такім чынам, адкрытай пазіцыі, модуль дае карысную падказку. Замест таго каб проста паказваць «няма супадзення», ён звяртае ўвагу на тое, што, магчыма, спачатку трэба стварыць рахунак.
Бяспека мае прыярытэт
Няправільнае аўтаматычнае супастаўленне можа выклікаць у бухгалтарыі больш працы, чым адкрыты банкаўскі радок. Таму Bank Statement Matcher наўмысна распрацаваны асцярожным:
Аднолькава ацэненыя супадзенні не вырашаюцца адвольна.
Слабыя прапановы паказваюцца, але не прымаюцца праз групавое дзеянне.
Перад супастаўленнем яшчэ раз правяраецца, ці даступная адкрытая пазіцыя.
Пазіцыя, якую тым часам ужо ўрэгуляваў іншы карыстальнік, паўторна не апрацоўваецца.
Кожны банкаўскі радок апрацоўваецца ў межах уласнай кантрольнай кропкі базы даных.
Памылка ў адным банкаўскім радку не перашкаджае апрацоўцы ўсіх астатніх радкоў.
Няпоўныя старыя даныя без сапраўднай даты праводкі з меркаванняў бяспекі выключаюцца.
Так модуль падтрымлівае аўтаматызацыю там, дзе яна эканоміць час, і патрабуе ручнога рашэння там, дзе даных недастаткова для адназначнасці.
Узаемадзеянне з нашым Bank Statement Import
Рэпазітар складаецца з двух модуляў:
| Модуль | Задача |
|---|---|
| account_statement_matcher | Забяспечвае ўласна пошук, ацэнку, праверку і супастаўленне. Патрабуе толькі модуль Odoo account. |
| account_statement_matcher_import_oca | Неабавязковы мост да імпарту банкаўскіх выпісак OCA. Пасля імпарту непасрэдна адкрываецца від супастаўлення з новымі імпартаванымі радкамі. |
Неабавязковы мост усталёўваецца аўтаматычна, калі прысутнічаюць і Matcher, і модуль OCA account_statement_import_file. Таму імпарт банкаўскіх выпісак і наступнае супастаўленне непасрэдна ўзаемадзейнічаюць.
Больш пра імпарт падтрыманых банкаўскіх фарматаў вы знойдзеце ў нашым артыкуле:
Odoo 19 Bank Statement Import – нашы пашырэнні для Odoo Community
Усталёўка ў Odoo 19 Community
Усталёўка адбываецца як і для звычайнага дадатковага модуля Odoo:
Скапіраваць тэчкі модуляў у наладжаны шлях addons Odoo.
Абнавіць спіс прыкладанняў у Odoo.
Усталяваць модуль Bank Statement Matcher.
Для кожнага банкаўскага журнала вызначыць, ці трэба шукаць прапановы пры імпарце.
Выбраць патрэбнае мінімальнае значэнне для кантраляванага групавога супастаўлення.
Модуль распрацаваны і пратэставаны для Odoo 19.0 Community. Перад выкарыстаннем з іншымі версіямі Odoo трэба асабліва праверыць змены ў ўнутраных бухгалтарскіх функцыях і функцыях узгаднення.
Як і для любога пашырэння ў бухгалтарскай сферы, мы рэкамендуем спачатку праверыць устаноўку ў тэставым асяроддзі на копіі ўласнай базы даных і тыповых банкаўскіх выпісках.
Бясплатна і Open Source для супольнасці Odoo
Мы ў Biricon IT Services GmbH спачатку распрацоўваем рашэнні для канкрэтных патрабаванняў нашай уласнай працы. Калі з гэтага ўзнікае модуль, прыдатны для агульнага выкарыстання, мы не хочам хаваць яго ў адной устаноўцы.
Таму Odoo 19 Bank Statement Matcher даступны бясплатна як Open-Source-праект. Зыходны код можна праглядаць, правяраць, адаптаваць і развіваць у рамках ліцэнзіі AGPL-3.
Наша мэта – не аўтаматызаваць як мага больш бухгалтарскіх рашэнняў ўсляпую. Мы хочам скараціць паўторную працу і адначасова забяспечыць, каб фінансавыя супастаўленні заставаліся зразумелымі і кантраляванымі.
Так мы разумеем разумную Open-Source-распрацоўку: вырашыць рэальную праблему, празрыста задакументаваць рашэнне і потым перадаць яго супольнасці.
Праект, зыходны код і ўдзел
Поўны зыходны код, ўказанні па ўстаноўцы і тэхнічная дакументацыя даступныя на GitHub:
Адкрыць Odoo 19 Bank Statement Matcher на GitHub
Мы будзем рады практычнаму досведу, справаздачам пра памылкі, прапановам па паляпшэнні і ўкладу з боку супольнасці Odoo.
Бясплатна. Зразумела. Open Source. Для Odoo 19 Community.