Ana içeriğe atla
Ürün ayrıntıları İngilizce olarak görüntülenir. Çeviriler yakında gelecek.
South Korea e-Tax Invoice (Hometax) — A build-to-order Frappe app that turns an ERPNext Sales Invoice into a compliant South  — 1/1Örnek önizleme

A build-to-order Frappe app that turns an ERPNext Sales Invoice into a compliant South Korean electronic tax

invoice, transmitted through your Hometax or ASP channel with full correction and archiving workflow.

ECOSIRE scopes, builds, installs and supports it for your ERPNext v15/v16 site.

South Korea e-Tax Invoice (Hometax) nedir?

A build-to-order Frappe app that turns an ERPNext Sales Invoice into a compliant South Korean electronic tax invoice, transmitted through your Hometax or ASP channel with full correction and archiving workflow. ECOSIRE scopes, builds, installs and supports it for your ERPNext v15/v16 site. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Temel Özellikler

Dedicated Frappe app with its own module, `hooks.py` doc events and fixtures — installed as a bench app, never as untracked server scripts pasted into a live site
`Korea E-Tax Invoice` DocType auto-created from Sales Invoice via an `on_submit` hook, with naming series, workflow states (Draft / Queued / Issued / Rejected / Cancelled) and a linked custom field back on the Sales Invoice
`Korea E-Tax Settings` single DocType holding channel endpoint, credentials as Password fields, issuance defaults, and the invoice-type and correction-purpose code tables
Business registration number (사업자등록번호) checksum validation, plus resolution of supplier/buyer registration number, representative name, business type and classification from Company, Customer, Address and Contact records
Amount recomposition from Sales Invoice Items and the Sales Taxes and Charges table so supply value, VAT and total reconcile line-by-line to the GL entry, with tolerance checks that block issuance on a mismatch
Zero-rated, exempt and tax-inclusive handling driven by ERPNext Item Tax Templates rather than hardcoded rates, so tax logic stays in master data finance already maintains
Queued transmission through Frappe background workers (`frappe.enqueue`) so an unavailable endpoint never blocks invoice submission, with bounded retry and a poison-message cap
Scheduler events declared in `hooks.py` that retry pending documents, poll for outcome and reconcile anything stuck between sent and acknowledged
Approval/authorisation identifier written back onto both the e-Tax Invoice and the Sales Invoice, making ERPNext the single place to answer "was this one accepted?"
One posting, two artefacts: the machine payload actually transmitted, plus a Jinja print format attached to the record and emailable to the buyer contact
Rejection handling that surfaces the returned error code and message on the document, with a guided correction workflow creating a properly typed modified invoice linked to its original
Append-only child transmission log capturing timestamp, endpoint, correlation id, request and response payloads, plus retention-aware archiving of issued artefacts as File records
Role profile separating preparer from issuing officer, with issuance guarded by a whitelisted server method rather than a client-side button alone, and a Client Script on Sales Invoice showing live status and blocking post-issuance cancellation
Read-only exposure over the Frappe REST API and whitelisted methods for BI and auditors, plus a Query Report for issued, pending and rejected documents by period — built and tested for Frappe/ERPNext v15 and v16

Siparişe özel, sizin için baştan sona

Kendiniz kurmanıza gerek yok — ECOSIRE tarafından geliştirilen, kurulan ve desteklenen çalışır bir uygulama.

  1. 1

    Sipariş verirsiniz

    Tek seferlik geliştirme fiyatıyla başlayın. Kapsamı başlangıçta sizinle birlikte belirleriz.

  2. 2

    Geliştirir ve kurarız

    ECOSIRE, ERPNext ortamınızda geliştirir, yapılandırır ve kurar.

  3. 3

    Yayına alma + destek

    Yaklaşık bir iş haftasında yayına alırsınız; canlıya geçiş sonrası iki hafta destek dahildir. Teslim ettiğimiz koddaki hatalar ücretsiz düzeltilir.

Teknik Özellikler

ERPNext Uyumluluğu
—
Lisans
Lisansın doğrulanması gerekiyor
Python Gereksinimi
Python 3.10+
Veritabanı
MariaDB 10.6+

Bu Ürün Hakkında

Korean e-Tax Invoice obligations are not a formatting problem, they are a lifecycle problem. Every taxable supply has to be issued as an electronic tax invoice carrying the supplier and buyer business registration numbers, the supply date, an item-level split of supply value and VAT, and an approval identifier returned after transmission — and once issued, a mistake can only be repaired by a properly typed correction (modified) tax invoice that references the original. ERPNext core gives you an excellent Sales Invoice, Item Tax Templates and a GL, but it has no concept of an approval number, no correction lineage, no rejection state to reconcile against, and nowhere to keep the machine-readable payload you actually transmitted next to the human-readable document your customer received. Finance teams end up re-keying invoices into a separate portal or ASP console, then hand-matching two sets of numbers at VAT return time.

We build a dedicated Frappe app — its own module, DocTypes, permissions and scheduler events — that closes that gap inside ERPNext. A Korea E-Tax Invoice DocType is created from a submitted Sales Invoice through an on_submit doc event registered in hooks.py, so nothing depends on a user remembering an extra button. A mapping layer resolves the supplier and buyer registration numbers, representative name, business type/item classification and address from Company, Customer and Address/Contact records, with a Korea E-Tax Settings single DocType holding issuance defaults, invoice-type and correction-purpose codes, and the ASP/Hometax endpoint credentials as Password fields. Amounts are recomposed from the invoice items and the Sales Taxes and Charges table so supply value, VAT and total reconcile line-by-line to the accounting entry, and a validation pass fails loudly on what Korean issuance actually rejects: a malformed 사업자등록번호 checksum, a missing buyer email for delivery, a supply date outside the permitted issuance window, or a zero-rated line with no exemption reason.

Transmission is deliberately queued rather than synchronous. Server-side whitelisted methods enqueue the payload through Frappe's background workers via frappe.enqueue, so a slow or unavailable endpoint never blocks an accountant's submit, and a scheduler event retries pending documents and polls for outcome. One posting produces both artefacts: the machine format sent to the channel, and a Jinja print format attached to the record and emailable to the buyer, so the copy the customer holds and the copy the authority received come from the same source. Every request and response is written to a child log table with timestamp, endpoint, correlation id and raw payload, and the approval identifier is written back onto both the e-Tax Invoice and a custom field on the Sales Invoice. Rejections land in a distinct Rejected state carrying the returned error code and message, with a guided correction workflow that opens a properly typed modified invoice linked to its original — cancellation, amount change, item change or wrong recipient — so the chain is reconstructible in an audit years later. Read-only access is exposed over the Frappe REST API and whitelisted methods for your reporting stack, and a role profile separates the clerk who prepares from the officer who issues.

This is build-to-order, and we say so plainly: it is not a marketplace app you download today. After a short scoping call we confirm your channel (direct certificate-based Hometax issuance versus a certified ASP provider), your invoice-type and correction-purpose coverage, your Frappe/ERPNext version and your data quality on registration numbers, then quote a fixed scope. Typical delivery is one working week from confirmed scope. The app is installed on a staging bench first, put through a UAT cycle against your real master data with a documented rollback, then cut over to production — followed by a support window and handover of the full git repository, so the code is yours whether or not you keep working with us.

Ne elde edeceksin

  • Installable Frappe app source built and pinned for your exact ERPNext version (v15 or v16), packaged for `bench get-app` / `bench install-app`
  • Installation and configuration on your bench: `Korea E-Tax Settings`, role profiles, custom fields and channel credentials wiring
  • Technical documentation — DocType and field reference, hook and scheduler map, whitelisted method/API reference, and the correction-type decision table
  • User guide for finance staff plus a live training session covering issuance, rejection handling and the correction workflow
  • UAT run on a staging bench against your real master data, with a signed-off test script and a documented rollback plan before production cutover
  • Post-go-live support window for defect fixes and issuance-behaviour questions
  • Handover of the private git repository with full commit history, so your team or another partner can maintain the app
  • Mapping worksheet documenting exactly how each Korean field is sourced from your Company, Customer, Item and tax master data

Bu kimin için

Finance Manager / 경리팀장 at a Korean entity

Owns VAT filing and is accountable when an invoice is issued late, rejected, or corrected the wrong way. Wants issuance to happen from the same screen where the Sales Invoice is submitted, and one report that answers which invoices are issued, pending or rejected for the period — without exporting to a spreadsheet and reconciling against a portal.

Group Controller on a multi-country ERPNext instance

Runs one ERPNext site across several jurisdictions and refuses to let Korea become a manual island. Needs Korean issuance to sit behind the same Sales Invoice lifecycle, GL and close calendar as every other entity, with the approval identifier stored in the ERP so consolidation and audit questions are answerable from one system.

ERP / IT Manager responsible for the bench

Will inherit this app. Cares that it is a real Frappe app with DocTypes, hooks and migrations rather than pasted server scripts, that transmission is queued so it cannot block users, that credentials are stored properly, and that the git repository and the upgrade path to the next ERPNext version are handed over.

External accountant or tax advisor supporting the entity

Reviews issuance before and after filing. Needs read-only visibility of what was transmitted, the response received, and the lineage between an original invoice and its correction — evidence that reconstructs the position without asking the client to log into a separate portal.

South Korea e-Tax Invoice (Hometax) Nasıl Karşılaştırılır

KriterECOSIREÖzel YapıRakipERPNext Yerleşik
Fit to your Korean issuance setupScoped to your channel, invoice types and master data before a line is writtenFits perfectly if the spec is right, but you own writing that specFits the author's assumed setup; edge cases become your problemNo Korean issuance concept to fit
Correction and rejection lifecycleTyped correction workflow with lineage to the original; rejection state carries the returned errorAchievable, but usually the first thing cut when the deadline tightensOften issuance-only; corrections handled manually in the portalAbsent — a cancelled Sales Invoice leaves no issuance trail
Architecture qualityReal Frappe app: module, DocTypes, hooks, scheduler events, migrationsDepends entirely on the developer; server scripts pasted into a live site are commonUsually a proper app, though internals vary widelyCore ERPNext, well built, but nothing Korea-specific to build on
Transmission under load or outageQueued via background workers with bounded retry and reconciliation pollingSynchronous calls are the usual first draft — a slow endpoint blocks usersVaries; retry behaviour is rarely documentedNot applicable — nothing is transmitted
Audit evidenceAppend-only transmission log plus archived machine and human artefacts per documentWhatever was specified — logging is frequently an afterthoughtStatus field commonly present; raw payload retention much less soGL entries only; no issuance evidence
Version compatibilityBuilt and tested against your v15 or v16 bench, upgrade path documentedYou inherit the upgrade burden with no documented field mappingDepends on the maintainer's release cadence and prioritiesMoves with ERPNext core, but adds no Korean capability
Time to a working systemone working week from confirmed scope, staged through UAT on a staging benchMonths once discovery, build, testing and rework are counted honestlyFast to install, then slow through the gap-closing roundsAvailable immediately, and immediately insufficient
Ownership and exitFull git repository handed over; your team or another partner can maintain itYou own it outright, along with all the maintenanceLicensed; source access and roadmap influence are limitedNo app to own

South Korea e-Tax Invoice hakkında Sıkça Sorulan Sorular

How long does delivery take, and when does the clock start?

This is a build-to-order app, not an instant download. Typical delivery is one working week from confirmed scope — the clock starts once we have agreed the issuance channel, the invoice-type and correction-purpose coverage, your Frappe/ERPNext version, and access to a staging bench. Scoping itself is a short call. If your master data needs cleaning (missing buyer registration numbers or contact emails, for example) that work is called out and estimated separately rather than silently absorbed into the timeline.

What support and updates do I get after go-live?

The engagement includes a post-go-live support window for defect fixes and issuance-behaviour questions, agreed in writing before we start. Beyond that we offer an optional maintenance arrangement covering regulatory or channel-format changes and compatibility work when you upgrade your bench, for example a v15 to v16 move. Because you receive the full git repository you are never locked in: your own team or another partner can maintain the app.

Does this connect directly to Hometax, or do I need a certified provider?

Both patterns are supported and the choice is made during scoping. Many organisations issue through a certified ASP provider that handles certificate custody and channel connectivity; others issue directly with their own certificate. The transmission layer is isolated behind a single service module, so the mapping, validation, correction and archiving logic is identical either way and switching providers later is a contained change rather than a rewrite.

What does ERPNext give me natively, and where exactly does it stop?

ERPNext natively gives you the Sales Invoice, Item Tax Templates, tax computation and the GL — the accounting is sound. What it has no concept of is an issuance lifecycle: no approval identifier field, no rejection state, no correction lineage linking a modified invoice to its original, no transmission log, and no machine-format artefact stored alongside the printed document. That is precisely the layer this app adds, without changing how your team posts invoices.

Will this modify or slow down our existing Sales Invoice workflow?

No. The e-Tax document is created by an `on_submit` doc event and transmission runs in Frappe's background workers, so a slow or unavailable channel never holds up a submit. Your posting flow is unchanged apart from a status indicator on the invoice and a guard preventing cancellation of a Sales Invoice whose e-Tax invoice is already issued — which is the behaviour you want, since a change after issuance must be handled as a correction instead.

How are rejections and mistakes handled?

A rejected transmission lands in a distinct `Rejected` state carrying the error code and message returned by the channel, so nothing fails silently. From there the app opens a guided correction workflow that creates a properly typed modified tax invoice — cancellation, amount change, item change or wrong recipient — linked to the original document. The chain is preserved on both records, so an auditor can reconstruct what was issued, what was corrected and why, years later.

Can our reporting tools and auditors read this data without full ERP logins?

Yes. Issuance data is exposed read-only over the Frappe REST API and whitelisted methods with permissions enforced by role, so a BI tool or an auditor's extract can pull issuance status, approval identifiers and correction lineage without write access. A Query Report covering issued, pending and rejected documents by period ships with the app for teams that prefer to work inside ERPNext.

Teklif isteyin

South Korea e-Tax Invoice

A build-to-order Frappe app that turns an ERPNext Sales Invoice into a compliant South Korean electronic tax invoice, transmitted through your Hometax or ASP channel with full correction and archiving workflow. ECOSIRE scopes, builds, installs and supports it for your ERPNext v15/v16 site.

  • Dedicated Frappe app with its own module, `hooks.py` doc events and fixtures — installed as a bench app, never as untracked server scripts pasted into a live site
  • `Korea E-Tax Invoice` DocType auto-created from Sales Invoice via an `on_submit` hook, with naming series, workflow states (Draft / Queued / Issued / Rejected / Cancelled) and a linked custom field back on the Sales Invoice
  • `Korea E-Tax Settings` single DocType holding channel endpoint, credentials as Password fields, issuance defaults, and the invoice-type and correction-purpose code tables
  • Business registration number (사업자등록번호) checksum validation, plus resolution of supplier/buyer registration number, representative name, business type and classification from Company, Customer, Address and Contact records

Teklif isteyin

South Korea e-Tax Invoice ihtiyaçlarınızı bize anlatın; fiyatları, lisans seçeneklerini ve size özel bir teklifi genellikle bir iş günü içinde gönderelim.

Şimdi ödeme yok. Bu, ekibimize bir teklif talebi gönderir — fiyat ve sonraki adımlarla e-posta ile dönüş yapacağız.