TL;DR: SWIFT yoo ṣe ifẹhinti MT940 nipasẹ Oṣu kọkanla 2028. Bank Statement Parser mu mejeeji MT940 ati CAMT.053 pẹlu API kan ṣoṣo, nitorinaa opo gigun itupalẹ rẹ ṣiṣẹ lakoko iyipada ati lẹhin rẹ.
Kini Idi Ti Iṣilọ Yii Ṣe Pataki
SWIFT n ṣe ifẹhinti awọn ọna kika ifiranṣẹ MT atijọ ni ojurere ti boṣewa ISO 20022 ti o ṣe ọlọrọ. Fun awọn ẹgbẹ iṣura ati inawo, eyi tumọ si pe awọn opo gigun ṣiṣe alaye banki rẹ gbọdọ wa lati MT940 si CAMT.053 ṣaaju awọn akoko ipari lile.
Akoko Iṣilọ SWIFT
| Ọjọ | Ohun Pataki | Ipa |
|---|---|---|
| Oṣu kọkanla 2025 | Ibagbepọ MT-si-MX pari fun awọn sisanwo agbelebu-aala | Awọn ifiranṣẹ PACS jẹ ISO 20022 nikan ni bayi |
| Oṣu kọkanla 2026 | Awọn adirẹsi ti a ṣeto/arabara di dandan; olona-itọnisọna MT101 ni a kọ; Ipele 1 Isakoso Ọran | Awọn ọna kika adirẹsi gbọdọ wa ni ibamu; awọn ifiranṣẹ MT kan yoo jẹ kiko |
| Ipari 2026 | Iyan-wọle bẹrẹ fun gbigba CAMT.052/.053/.054 | Awọn ile-iṣẹ inawo le bẹrẹ gbigba awọn alaye ISO abinibi |
| Oṣu kọkanla 2027 | Gbogbo awọn ile-iṣẹ inawo gbọdọ gba CAMT.053 ni abinibi | SWIFT da iyipada ọna kika MT si ISO duro; awọn eto rẹ gbọdọ ṣe itupalẹ CAMT taara |
| Oṣu kọkanla 2028 | Ifẹhinti ni kikun ti MT940/MT942/MT950/MT900/MT910 | Awọn ọna kika alaye atijọ ko si mọ; CAMT.052/.053/.054 nikan ni aṣayan |
Kini Ti N Yipada Fun Koodu Rẹ
Ṣaaju: MT940 Nikan
from bankstatementparser import Mt940Parser
parser = Mt940Parser("statement.mt940")
df = parser.parse()
Lẹhin: Awọn Ọna Kika Mejeeji Pẹlu Iwari Aifọwọyi
from bankstatementparser import create_parser, detect_statement_format
fmt = detect_statement_format("statement.xml") # or .mt940
parser = create_parser("statement.xml", fmt)
df = parser.parse() # Same DataFrame schema regardless of format
Iṣẹ detect_statement_format() ṣe idanimọ boya faili naa jẹ MT940, CAMT.053, PAIN.001, tabi ọna kika atilẹyin miiran. Iṣẹ create_parser() da parser ti o tọ padà. Koodu isalẹ rẹ ṣiṣẹ bakanna laibikita ọna kika orisun.
CAMT.053 vs MT940: Awọn Iyatọ Pataki
| Ẹya Ara Ẹrọ | MT940 | CAMT.053 |
|---|---|---|
| Ọlọrọ data | Awọn aaye to lopin | Data 3-5x sii fun iṣowo kọọkan |
| Eto kikọ | Lopin (charset SWIFT) | Unicode ni kikun |
| Ilana | Ọrọ alapin pẹlu awọn afi | XML pẹlu awọn aaye orukọ |
| Ijabọ iwọntunwọnsi | Ṣiṣi/pipade nikan | Awọn oriṣi iwọntunwọnsi pupọ |
| Awọn itọkasi | Aaye itọkasi kan ṣoṣo | Awọn oriṣi itọkasi pupọ |
| Imuṣiṣẹ owo | Ipilẹṣẹ | Olona-owo ni kikun pẹlu awọn oṣuwọn paṣipaarọ |
Bawo Ni Bank Statement Parser Ṣe Ran Ọ Lọwọ
- API Iṣọkan: Ṣe itupalẹ MT940, CAMT.053, ati awọn alaye PDF pẹlu ṣiṣan iṣẹ kanna, ti o ṣe agbejade iṣelọpọ DataFrame deede.
- Iwari-aifọwọyi: Ko si iwulo lati mọ ọna kika ni ilosiwaju.
detect_statement_format()ṣe idanimọ rẹ laifọwọyi. - Opo gigun PDF aladapọ: Awọn banki ti o pese awọn alaye PDF nikan lakoko iyipada ni a mu nipasẹ
smart_ingest()pẹlu iṣayẹwo iwọntunwọnsi laifọwọyi. - Aibikita aaye orukọ: Mu eyikeyi iyatọ CAMT.053 (001.02, 001.04, tabi awọn apoowe pato banki) laisi iṣeto.
- Iṣayẹwo owo pupọ:
verify_balance_multi_currency()ṣe iṣayẹwo Ofin Goolu fun ẹgbẹ owo kọọkan — pataki fun awọn alaye CAMT olona-owo. - Sisanwọle: Ṣe ilana awọn faili CAMT nla (50 MB+, awọn iṣowo 50K+) pẹlu iranti ti o ni opin.
- Okeere iwe iroyin: Ṣe okeere taara si ọna kika iwe iroyin hledger tabi beancount fun iṣiro iṣura.
- Idanwo iṣilọ: Ṣiṣe awọn parser mejeeji ni ẹgbẹ-ẹgbẹ lori iwọn ọjọ kanna lati jẹrisi aitasera iṣelọpọ ṣaaju iyipada.
Bibẹrẹ
pip install bankstatementparser
from bankstatementparser import create_parser, detect_statement_format
# Works with MT940 today, CAMT.053 tomorrow, PDF anytime
for file in bank_statement_files:
fmt = detect_statement_format(file)
parser = create_parser(file, fmt)
df = parser.parse()
process(df) # Your code doesn't change
Fun awọn alaye PDF lati awọn banki ti ko tii nfunni ni awọn okeere CAMT ti a ṣeto:
from bankstatementparser.hybrid import smart_ingest
result = smart_ingest("statement.pdf")
assert result.verification.status == "VERIFIED"