피드로 돌아가기
Dev.toBackend
원문 읽기
Java 기반 Schematron 엔진을 REST API로 추상화한 Peppol 검증 레이어 구축
How to validate Peppol BIS 3 invoices in 5 lines of Python (or Node, or Go)
AI 요약
Context
EU 국가들의 e-invoicing 의무화에 따라 Peppol, XRechnung 등 복잡한 XML 규격 검증 필요성 증대. 기존 phive, Mustang 엔진은 Java JAR 또는 웹 폼 형태만 제공하여 현대적인 Backend 스택에서의 API 통합 및 CI/CD 파이프라인 적용에 한계 발생.
Technical Solution
- Mustang 2.23.0 엔진 상단에 Thin REST API 레이어를 구축하여 언어 중립적인 인터페이스 제공
- Synchronous POST 요청을 통한 실시간 검증과 Webhook 콜백 기반의 Asynchronous Batch 처리 구조 설계
- PDF/A-3 하이브리드 형태의 Factur-X 포맷에서 XML 데이터를 네이티브하게 추출하는 파싱 로직 구현
- GitHub Action 연동을 통한 배포 전 Invoice 정합성 검증 단계 추가로 런타임 오류 사전 차단
- Python, Node.js용 전용 SDK 제공을 통한 통합 코드 복잡도 최소화 및 개발자 경험 개선
실천 포인트
1. 레거시 Java 라이브러리를 최신 스택에서 활용해야 할 때 Thin API Wrapper 도입 검토
2. 외부 규격 검증 로직을 CI 단계에 통합하여 데이터 무결성을 보장하는 파이프라인 설계
3. 대량의 문서 검증 시 동기 방식의 타임아웃 방지를 위한 Async + Webhook 패턴 적용