Export letter of credit and back to back LC tracking for ERPNext, built for Bangladesh RMG exporters.

# Export LC for ERPNext
**Export letter of credit management for ERPNext v16—from sales order to commercial invoice and delivery.**
[](https://github.com/invento-software-limited/export-lc/actions/workflows/ci.yml)
[](https://github.com/invento-software-limited/export-lc/actions/workflows/linter.yml)
[](https://github.com/frappe/erpnext)
[](license.txt)
Read the LC management guide ·
Explore Import LC

## See each export credit beside the order, invoice and delivery it governs
ERPNext manages sales orders, invoices, deliveries and accounting. Export LC adds the documentary-credit record between those steps, helping export teams keep commercial terms, bank fields and utilization in the same workflow rather than rebuilding the position in spreadsheets and files.
> **Scope:** Export LC records and maps LC data inside ERPNext. It does not connect to a bank, transmit SWIFT messages or replace bank approval and document-checking procedures.
## Export LC workflow at a glance
```text
Sales Order
│
▼
Export Proforma Invoice
│
▼
Export LC
├────────► Sales Invoice (Commercial Invoice)
└────────► Delivery Note
│
▼
Utilization and LC status recalculated
```
## What teams can do
| Task | How Export LC helps |
| --- | --- |
| Start from approved sales data | Create an **Export Proforma Invoice** from a Sales Order and carry forward items, currency and commercial details. |
| Maintain the documentary credit | Record the Export LC with applicant, beneficiary, issuing and beneficiary bank, value, dates, tolerance and shipment/document terms. |
| Create commercial documents | Create a Sales Invoice (commercial invoice) or Delivery Note from the Export LC without re-entering the transaction. |
| Monitor drawdown | Calculate utilization from submitted Sales Invoices linked to the Export LC. |
| Read lifecycle status | Use Draft, Active, Partially Utilized, Fully Utilized, Expired and Cancelled states to identify the next action. |
| Review activity visually | Use the Export LC workspace, shortcuts and status chart for a faster operational view. |
The form also contains a selectable `Closed` status for manual use; the automatic status calculation does not assign it.
## Familiar MT700-aligned fields
The Export LC form includes commonly used documentary-credit fields such as reference number (F20), issue and expiry dates (F31C/F31D), credit form (F40A/F40E), applicant and beneficiary (F50/F59), tolerance (F39A), partial shipment and transshipment (F43P/F43T), latest shipment date (F44C), goods and documents (F45A/F46A), additional conditions (F47A), charges (F71D) and instructions (F78).
These fields help structure LC information; they do not claim automatic SWIFT MT700 generation or transmission.
## Product screenshots
| Export Proforma Invoice | Export LC record |
| --- | --- |
|  |  |
## Export or import—which app do you need?
| Use case |
Choose this app |
| A buyer opens an LC in your favour and you ship against it |
Export LC THIS REPOSITORY |
| You open an LC to buy goods, materials or machinery from a supplier |
Explore Import LC → |
Businesses—including ready-made garment exporters using back-to-back LCs—can install both apps to manage each direction. In the current `version-16` repositories, the apps manage their respective workflows; they do not automatically create a master export LC/back-to-back import LC relationship across apps.
Understand the complete import and export LC workflow
## Installation
> ### Frappe Cloud
>
> **The simplest setup for managed installations.**
>
> [**Install Export LC from the Marketplace →**](https://cloud.frappe.io/marketplace/apps/export_lc)
### Self-hosted bench
Use an existing Frappe/ERPNext v16 bench:
```bash
bench get-app https://github.com/invento-software-limited/export-lc.git --branch version-16
bench --site your-site.example install-app export_lc
bench --site your-site.example migrate
bench build --app export_lc
```
After installation, open **Export LC** from the ERPNext app switcher. Setting up a new bench or site? Start with the [official Frappe installation guide](https://frappeframework.com/docs/user/en/installation).
### Compatibility
- **Frappe and ERPNext:** v16 (`>=16.0.0-dev, <17.0.0-dev`)
- **Runtime:** Python 3.10 or newer · **App branch:** `version-16`
The repository also has a `develop` branch for active development; production v16 installations should use `version-16`.
## Documentation and support
[**Read the user guide →**](docs/user_guide.md) · [**View the product overview →**](docs/product_overview.md) · [**Browse all documentation →**](https://invento-software-limited.github.io/export-lc/)
Need help? [Open a reproducible issue](https://github.com/invento-software-limited/export-lc/issues).
When reporting a problem, include your Frappe and ERPNext versions, the affected document type, steps to reproduce and a redacted screenshot where useful. Never include LC numbers, bank credentials or confidential trade documents in a public issue.
## Contributing
Contributions are welcome. Install the repository's pre-commit hooks before opening a pull request:
```bash
cd apps/export_lc
pre-commit install
pre-commit run --all-files
```
The project uses Ruff, ESLint, Prettier and Semgrep alongside its CI checks.
## Publisher
Built and maintained by [Invento Software Limited](https://invento.com.bd/), an ERPNext partner in Bangladesh.
## License
MIT. See [license.txt](license.txt).