PipedreamHQ / PipedreamHQ/pipedream

[APP] beliq - EU e-invoicing (generate / validate / parse / convert)

Open
#21,996 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
11.7k
Forks
5.8k
Avg merge
3d 10h
Merged PRs (30d)
102

Description

**Name of app / service**

beliq (https://beliq.eu) - an API for EU e-invoicing: generate, validate, parse and convert EN 16931 documents (XRechnung, ZUGFeRD, Factur-X, Peppol BIS, FatturaPA, Facturae, e-SLOG).

I am the API owner. I have the components built and tested and would like to contribute them to the registry, but the PR template says a new app has to be integrated by Pipedream first, so this is that request.

**Link to developer documentation**

- Docs: https://docs.beliq.eu
- Authentication: https://docs.beliq.eu/api-reference/authentication
- OpenAPI 3.0.3 spec: https://api.beliq.eu/openapi.json

Auth is a single static API key. beliq accepts it either as `X-API-Key: ` or as `Authorization: Bearer `, so a `custom` app with one `api_key` secret field is all that is needed. No OAuth, no refresh, no scopes.

Connect-time test: `GET https://api.beliq.eu/v1/me` returns `{"success":true,"data":{...}}` for a valid key and 401 otherwise. It is quota-exempt and costs the user nothing, so it is safe to call on every connection test.

**Is lack of support preventing you from moving forward, or do you have a workaround?**

It is blocking. The components are written and passing (source of truth: https://github.com/beliq-eu/pipedream-beliq), but without the `beliq` app provisioned there is nothing for `app: "beliq"` to resolve to, so the registry PR cannot be reviewed or merged. Pipedream users can call the API through a generic HTTP request step today, which means hand-managing the key and the raw XML/PDF request bodies.

**Are there specific actions or triggers you'd like to see for this app?**

Five actions, all already implemented and unit tested in the repo above. No triggers - the API is request/response compute, it emits no events.

| Action | Endpoint | What it does |
|---|---|---|
| Generate Invoice | `POST /v1/generate` | JSON invoice in, standard-compliant XML or hybrid PDF out |
| Validate Invoice | `POST /v1/validate` | XML or PDF in, structured pass/fail with rule ids out |
| Parse Invoice | `POST /v1/parse` | XML or PDF in, structured invoice JSON out |
| Convert Invoice | `POST /v1/convert` | converts between e-invoice syntaxes, reports lost elements |
| Check Account | `GET /v1/me` | zero-quota credential and quota check |

Happy to adjust the shape of any of these to fit registry conventions. Thanks for taking a look.

Contributor guide

Open the contributing guide

Research direction

Start with the existing components and unit tests in github.com/beliq-eu/pipedream-beliq, then review api.beliq.eu/openapi.json and the authentication documentation. Compare the five listed endpoints and the GET /v1/me connection test with Pipedream's registry conventions; done means the beliq app resolves and its actions authenticate and pass their tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, openapi, typescript
Domain
api, backend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.