Skip to content

Spoje-NET/pohoda-realpad

Repository files navigation

Pohoda-Realpad Integration

logo

This project integrates the Pohoda accounting system with the Realpad CRM system, enabling seamless synchronization of bank movements and payments.

Features

  • Bank Movements Synchronization: Extracts bank movements from Pohoda and filters them based on specific criteria.
  • Realpad API Integration: Sends filtered payments to the Realpad system using their API.
  • Error Handling and Logging: Provides detailed status messages and logs for every synchronization attempt, including the unreachable host/IP:port when a connection timeout occurs.
  • Concurrent Execution Safe: Each run uses a uniquely named temporary file (tempnam()), preventing race conditions when multiple jobs run in parallel.

Requirements

  • PHP 8.1 or higher
  • Curl extension enabled in PHP
  • Access to Pohoda mServer and Realpad systems
  • Valid Realpad API credentials

When installed via the .deb package, all PHP dependencies are managed as system packages — no Composer is required at runtime.

Configuration

Copy example.env to .env and adjust the values to match your environment:

cp example.env .env

Configuration options:

  • APP_DEBUG — Enable debug mode (true/false)
  • EASE_LOGGER — Logging output (e.g., console)
  • POHODA_ICO — Company identifier (IČO)
  • POHODA_URL — Pohoda mServer endpoint URL
  • POHODA_USERNAME / POHODA_PASSWORD — Pohoda API credentials
  • POHODA_TIMEOUT — Request timeout in milliseconds
  • POHODA_COMPRESS — Enable compression (true/false)
  • POHODA_DEBUG — Enable Pohoda debug mode (true/false)
  • REALPAD_USERNAME / REALPAD_PASSWORD — Realpad API credentials
  • REALPAD_PROJECT_ID — Realpad project identifier

Report Format

The application generates reports in the MultiFlexi format, which includes:

Required fields:

  • status — Operation result: success, error, or warning
  • timestamp — Completion time in ISO8601 format

Optional fields:

  • message — Human-readable result description
  • artifacts — Generated files and URLs (endpoints, responses, XML files)
  • metrics — Operational metrics (payments processed, HTTP codes, etc.)

Example successful report:

{
    "status": "success",
    "timestamp": "2025-01-01T12:00:00+00:00",
    "message": "Payment registered successfully. ID: 12345",
    "artifacts": {
        "realpad_endpoint": ["https://cms.realpad.eu/ws/v10/add-payments-pohoda"],
        "pohoda_xml": ["/tmp/Bankovni_doklady_6abf12.xml"],
        "realpad_response": ["/tmp/realpad_response_abc123.txt"]
    },
    "metrics": {
        "payments_processed": 1,
        "http_response_code": 201,
        "pohoda_records_found": 5,
        "exit_code": 0
    }
}

See also

MultiFlexi

Pohoda2Realpad is ready for run as MultiFlexi application. See the full list of ready-to-run applications within the MultiFlexi platform on the application list page.

MultiFlexi App

Debian/Ubuntu installation

Please use the .deb packages. The package installs system PHP libraries directly (no composer install required at runtime) and ships an AppStream metainfo entry so the tool appears in software catalogues.

Add the VitexSoftware repository and install:

echo "deb http://repo.vitexsoftware.com $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/vitexsoftware.list
sudo wget -O /etc/apt/trusted.gpg.d/vitexsoftware.gpg http://repo.vitexsoftware.com/keyring.gpg
sudo apt update
sudo apt install pohoda-realpad

For MultiFlexi integration install the additional package:

sudo apt install multiflexi-pohoda-realpad

Exit Codes

This application uses the following exit codes:

  • 0: Success
  • 1: General error
  • 200: HTTP OK
  • 201: HTTP Created
  • 400: Bad request - invalid data or parameters
  • 401: Unauthorized - authentication failed
  • 418: I'm a teapot (HTTP status code)

About

Send data from Stormware Pohoda to Realpad

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors