Skip to content
Agentmart
Submit a tool

jpk-submit

Wysyła wygenerowany plik JPK_V7M lub JPK_EWP do bramki Ministerstwa Finansów (REST API e-dokumenty.mf.gov.pl) z autoryzacją "danymi autoryzującymi" (bez…

Skill by dithiothreitol

IndexedMIT★ 9
Write a review

Chalk Labs

Need help deploying jpk-submit?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/dithiothreitol-jpk-submit

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Wysyła wygenerowany plik JPK_V7M lub JPK_EWP do bramki Ministerstwa Finansów (REST API e-dokumenty.mf.gov.pl) z autoryzacją "danymi autoryzującymi" (bez podpisu kwalifikowanego). Zwraca numer referencyjny i UPO (Urzędowe Poświadczenie Odbioru). Użyj gdy user mówi "wyślij JPK do MF", "złóż deklarację VAT", "wyślij JPK_V7M", "wyślij ewidencję ryczałtu", "submituj JPK", lub bezpośrednio po wygenerowaniu pliku JPK.

Use cases: backend

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/jpk-submit

What's inside

Skill name
jpk-submit
Description
Wysyła wygenerowany plik JPK_V7M lub JPK_EWP do bramki Ministerstwa Finansów (REST API e-dokumenty.mf.gov.pl) z autoryzacją "danymi autoryzującymi" (bez podpisu kwalifikowanego). Zwraca numer referencyjny i UPO (Urzędowe Poświadczenie Odbioru). Użyj gdy user mówi "wyślij JPK do MF", "złóż deklarację VAT", "wyślij JPK_V7M", "wyślij ewidencję ryczałtu", "submituj JPK", lub bezpośrednio po wygenerowaniu pliku JPK.
License
MIT
Instructions
60 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Wysyłka JPK do bramki MF

Pełny flow: szyfrowanie XML (AES-256-CBC + RSA klucz publiczny MF) → init upload → PUT na Azure Blob → finish → polling status → pobranie UPO.

## Wymagane dane

- **xml-path** — ścieżka do pliku JPK (zwykle z `data/jpk/JPK_V7M_*.xml` lub `data/jpk/JPK_EWP_*.xml`)

W `.env` muszą być:
- `MF_PESEL` — PESEL podatnika
- `MF_PRIOR_INCOME` — kwota przychodu z PIT za rok N-2 (dla wysyłki w 2026 → PIT za 2024). Pozycje zgodnie z formularzem PIT-37/28/36/36L. Brak zeznania → `0`.
- `MF_CERT_PATH` — ścieżka do klucza publicznego MF (PEM/DER) — pobierz z [podatki.gov.pl, sekcja klucze publiczne](https://www.podatki.gov.pl/jednolity-plik-kontrolny/jpk-vat-z-deklaracja/pliki-do-pobrania/)
- `MF_ENV=test` (domyślnie) lub `prod`
- `SELLER_FIRST_NAME`, `SELLER_LAST_NAME`, `SELLER_BIRTH_DATE`, `SELLER_NIP`

## Wywołanie — DRY-RUN (zalecane przed pierwszą wysyłką)

```bash
python3 skills/jpk-submit/scripts/submit.py --xml-path data/jpk/JPK_V7M_2026_04.xml --dry-run
```

Pokazuje co byłoby wysłane (rozmiar, env, fingerprint danych autoryzujących) bez dotykania bramki.

## Wywołanie — wysyłka

```bash
python3 skills/jpk-submit/scripts/submit.py --xml-path data/jpk/JPK_V7M_2026_04.xml
```

Zwraca JSON:
```json
{
  "success": true,
  "reference_number": "20260417-...",
  "status_code": 200,
  "upo_path": "data/upo/UPO_20260417-...bin",
  "mf_env": "test"
}
```

Polling statusu trwa do 10 minut (interwał 15s). Status 200 = sukces + UPO; 401-420 = błędy MF (zła XSD, certyfikat, autoryzacja).

## ⚠️ KRYTYCZNE — przed wysyłką na PROD

1. **Najpierw przetestuj na bramce TEST** (`MF_ENV=test`). Bramka prod = `e-dokumenty.mf.gov.pl`, test = `test-e-dokumenty.mf.gov.pl`.
2. **Zweryfikuj kwotę przychodu z PIT za rok N-2** — błąd → odrzucenie autoryzacji. Konkretne pozycje: PIT-37 poz. 50/83, PIT-28 poz. 20/22/24/62/73, PIT-36 poz. 67-75/131, PIT-36L poz. 23/25/27/28/33. Brak zeznania = 0. Nie wolno sumować z różnych zeznań.
3. **Sprawdź certyfikat MF** — aktualizowany okresowo (ostatnio 18.07.2025). Nieaktualny → init zwróci błąd `404`.
4. **Zachowaj UPO** — `data/upo/UPO_*.bin` to dowód złożenia. Bez UPO uznaje się że JPK nie został złożony.
5. **Termin** — JPK_V7M do 25-go następnego miesiąca; JPK_EWP do 30.04 następnego roku.

## Po sukcesie

Pokaż userowi: `reference_number`, `mf_env`, ścieżkę UPO (jako klikalny link).
Jeśli `mf_env=test` — wyraźnie zaznacz że to **wysyłka TESTOWA, nie produkcyjna**.

## Implementacja MVP — disclaimer

Klient został napisany od zera (brak oficjalnego SDK MF dla Pythona). Jeśli MF zmieni format `InitUploadSigned` (do potwierdzenia: nazwa endpointu dla danych autoryzujących vs. podpis kwalifikowany) — wymaga to aktualizacji [src/jdg_ksiegowy/mf_gateway/client.py](src/jdg_ksiegowy/mf_gateway/client.py).

From dithiothreitol/jdg-ksiegowy, MIT.

More from dithiothreitol/jdg-ksiegowy

Signals

Stars
9
Forks
1
Open issues
0
Last commit (this folder)
Apr 17, 2026 (6 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from dithiothreitol

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get jpk-submit running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying jpk-submit?

CallGet help
Cite this page

jpk-submit skill. Agent Mart. https://agentmart.dev/skills/dithiothreitol-jpk-submit (last updated 2026-10-24)