OdooWiki OCA HUB
Reporting License: AGPL-3

Pingen.com is a paid online service. It sends uploaded documents by letter post.

One can decide, per document / attachment, if it should be pushed to pingen.com. The documents are pushed asynchronously.

The informations of the documents from pingen.com are updated through webhook calls.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Lets you flag any Odoo attachment to be sent as a physical letter through the paid pingen.com postal service, and tracks each letter's status, cost and delivery information inside Odoo.

This module connects Odoo to the paid online postal service pingen.com. On any attachment form you get a "Send to Pingen.com" checkbox; ticking it creates a linked Pingen Document record that acts as a queue entry, unticking it cancels the entry (and is refused if the letter was already pushed).

A dedicated "Pingen Documents" menu shows all these records with filters for Pending, Pushed, In Sendcenter, Sent, Error, Pingen Error and Canceled. On the document form you can push the file to pingen.com, ask pingen.com to actually send it, mark errors as resolved, or refresh the letter's information. You choose the delivery product (fast, cheap, bulk, track, sign, various national postal products), grayscale or colour printing, simplex or duplex, and whether the document should be sent automatically or only uploaded.

Two scheduled jobs run in the background: one pushes pending documents and asks for sending, the other refreshes status, cost, page count, parsed address, country and sending date. Webhook calls from pingen.com update documents automatically when a letter is sent, undeliverable, or has an issue. Connection settings (client ID, secret, organisation, webhook secret, staging mode, SSL verification) are configured per company in Settings.

Depends on

base_setup

Required by other modules

Menus it adds

menu_pingen_document
Models and fields (4)
  • res.company · extends an existing modelpingen_staging, pingen_clientid, pingen_ssl_verify, pingen_organization (Pingen organization ID), pingen_webhook_secret, pingen_client_secretid
  • ir.attachment · extends an existing modelsend_to_pingen (Send to Pingen.com), pingen_document_ids (Pingen Document)
  • pingen.document · new modelcost, pages, state, auto_send, push_date, send_date (Date of sending), company_id, country_id, print_mode, currency_id, pingen_uuid, attachment_id, pingen_status, parsed_address, print_spectrum, delivery_product, last_error_message (Error Message)
  • res.config.settings · extends an existing modelpingen_staging (Pingen Staging), pingen_clientid (Pingen Client ID), pingen_ssl_verify (Pingen SSL Verification), pingen_organization (Pingen organization), pingen_webhook_secret (Pingen webhook secret), pingen_client_secretid (Pingen Client Secret ID)

Text generated by AI (DeepSeek) from reading the Odoo 16.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 1 confirmed, 8 with no information of 9 versions.

Sources · Odoo 16.0

Confirmed on 2026-11-03 in branch 16.0 of OCA/report-print-send.

terminal Installation and usage

OCA documentation · Odoo 16.0

The authentication token, client ID, organization ID and webhook secret is configured on the company's view. You can also tick a checkbox if the staging environment (https://stage-api.pingen.com) should be used.

Webhooks should be configured on pingen account. Organization ID and webhook secret must match.

On the attachment view, a new pingen.com section has been added. You can tick a box to push the document to pingen.com.

There is 3 additional options:

  • Send: the document will not be only uploaded, but will be also be sent
  • Speed: priority or economy
  • Type of print: color or black and white

Once the configuration is done and the attachment saved, a Pingen Document is created. You can directly access to the latter on the Link on the right on the attachment view.

You can find them in Pingen Documents App or in the more convenient Documents menu if you have installed the document module.

Errors

Sometimes, pingen.com will refuse to send a document because it does not meet its requirements. In such case, the document's state becomes "Pingen Error" and you will need to manually handle the case, either from the pingen.com backend, or by changing the document on Odoo and resolving the error on the Pingen Document.

When a connection error occurs, the action will be retried on the next scheduler run.

Dependencies

  • Require the Python library requests_oauthlib
  • The address must be in a format accepted by pingen.com: the last line is the country in English or German.

No verified information in OCA: Installation.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.