Skip to content

Feat: add peppyrus integrator#15

Merged
pritambiswal merged 5 commits into
prilk-consulting:developfrom
i1mercep:feat/add-peppyrus-integrator
Jun 20, 2026
Merged

Feat: add peppyrus integrator#15
pritambiswal merged 5 commits into
prilk-consulting:developfrom
i1mercep:feat/add-peppyrus-integrator

Conversation

@i1mercep

@i1mercep i1mercep commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

I have been looking for a free Peppol API and found Peppyrus. Please add the support

This pull request adds support for the Peppyrus integrator to the EDocument integration system, allowing users to transmit and poll electronic invoices via the Peppyrus PEPPOL API. The changes include updates to configuration options, type annotations, and integration logic, as well as the introduction of a new API client module for Peppyrus.

Peppyrus Integrator Support

  • Added a new peppyrus_api.py module implementing the Peppyrus PEPPOL API client, including methods for sending documents, polling the inbox, and validating the connection.
  • Updated the edocument_integrator field in the integration settings JSON and type annotations to include "Peppyrus" as a selectable option. [1] [2]

Integration Logic Enhancements

  • Modified the main API (edocument_integration/api.py) to support transmitting and polling invoices using the Peppyrus integrator, alongside existing support for Recommand. [1] [2]
  • Updated the poll_incoming_documents method in the integration settings DocType to handle Peppyrus as a valid integrator, importing and using the new Peppyrus polling logic.

Copilot AI review requested due to automatic review settings June 10, 2026 00:04

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds a new Peppyrus integrator option and implementation for sending and polling PEPPOL documents via the Peppyrus API.

Changes:

  • Introduce a new PeppyrusAPIClient plus helper functions to transmit invoices and poll the inbox.
  • Add “Peppyrus” as a selectable integrator in integration settings.
  • Extend existing transmit/poll entry points to route to the Peppyrus implementation.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 7 comments.

File Description
edocument_integration/peppyrus_api.py New Peppyrus API client + transmit/poll helpers.
edocument_integration/edocument_integration/doctype/edocument_integration_settings/edocument_integration_settings.py Allows “Peppyrus” and routes polling to Peppyrus.
edocument_integration/edocument_integration/doctype/edocument_integration_settings/edocument_integration_settings.json Adds “Peppyrus” to the integrator Select options.
edocument_integration/api.py Routes transmit + polling API to Peppyrus when selected.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread edocument_integration/peppyrus_api.py Outdated
Comment thread edocument_integration/peppyrus_api.py Outdated
Comment thread edocument_integration/peppyrus_api.py
Comment thread edocument_integration/peppyrus_api.py
Comment thread edocument_integration/peppyrus_api.py Outdated
Comment thread edocument_integration/peppyrus_api.py Outdated
Comment on lines +105 to +107
error_msg = f"Peppyrus API error ({response.status_code}): {error_text}"
frappe.log_error(f"{error_msg}\nRequest Payload: {json.dumps(payload)}", "Peppyrus API Error")
raise Exception(error_msg)
Comment thread edocument_integration/peppyrus_api.py Outdated
@pritambiswal

Copy link
Copy Markdown
Contributor

@i1mercep I will check this and get back this week.

@pritambiswal pritambiswal merged commit e095136 into prilk-consulting:develop Jun 20, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants