Skip to content

docs: architecture overview + installation & usage guide - #13

Merged
birkof merged 1 commit into
mainfrom
docs/architecture-and-usage
Jun 17, 2026
Merged

birkof merged 1 commit into
mainfrom
docs/architecture-and-usage

Conversation

@birkof

@birkof birkof commented Jun 17, 2026

Copy link
Copy Markdown
Owner

Summary

Documentation-only PR. Rewrites the two docs to reflect the current bundle (PHP 8.3+, the IPN handler, and the config/input hardening already merged via #12). Every claim was grounded by reading the actual src/, composer.json, phpunit.xml.dist, and .github/workflows/ci.yml.

README.md — replaces the outdated stub (which claimed "Symfony 3.4 / 4.0" support) with:

  • An architecture overview: component map, the DI service graph (netopia_mobilpay.configuration → …payment / …ipn_handler), outbound/inbound flows, security model, project layout, testing & CI.
  • A practical Installation section: composer require, config/bundles.php registration, netopia_mobilpay.yaml (signature required; cert/key as path or inline PEM), and the two mandatory route names (netopia_mobilpay_confirm_url / netopia_mobilpay_return_url).
  • A Usage section: outbound createCreditCardPaymentObject(...) + auto-submit Twig form, and inbound decrypt() → verify → confirmResponse()/errorResponse().

src/Resources/doc/index.md — rewritten as the full integration guide:

  • Modern config/bundles.php registration (was legacy AppKernel::registerBundles()).
  • Required-signature config + key table; removed the obsolete app/config/parameters.yml block.
  • New Required routes section (was missing entirely).
  • Full outbound flow (was a one-line "follow the interface" stub), token (/card4) + SMS notes, input-validation note.
  • IPN handling flow + IpnResult field/predicate reference; PCI scope note.

Test Plan

  • Claims grounded in code: composer.json, Configuration.php (signature required), NetopiaMobilPayConfiguration (route consts, cert/key path-or-PEM, resolvePaymentUrl), NetopiaMobilPayService (validation, getEnvKey/getEncData/getCipher/getIv via getMobilPayConfiguration()), Notification/* (IPN), services.yaml, phpunit.xml.dist, ci.yml.
  • No source/behaviour changes — Markdown only.
  • Reviewer: optional spot-check that the env_key/data/cipher/iv form field names match your Netopia account's expected POST fields.

…egration guide

Replace the outdated README stub (which claimed Symfony 3.4/4.0 support) with a
grounded architecture overview plus Installation and Usage sections, and rewrite
src/Resources/doc/index.md as a complete integration guide: config/bundles.php
registration, required-signature config, the mandatory confirm/return routes, the
outbound payment flow (auto-submit form), and the inbound IPN handling flow.

Documents the IPN handler and payment-input/config hardening now on main (PR #12).
@birkof birkof self-assigned this Jun 17, 2026
@birkof birkof added the enhancement New feature or request label Jun 17, 2026
@birkof
birkof merged commit dd372bc into main Jun 17, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant