Actualization Status
Last Actualization
- last_date: 2026-09-05T14:00:00Z
- last_commit: a71274b
Log
2026-09-05 — The process engine had no page at all
The platform has run BPMN processes for months — definitions, human tasks, decision tables, case management, an editor with BPMN import and export — and the public documentation did not mention any of it. A client could not learn from these pages that the capability exists, let alone what it does.
clients/business-processes.md— new page. What a definition is made of, how the operator queue works, step reliability, versions, decision tables, ad-hoc cases, and where each of these lives in the console.clients/admin-console.md— the console section list was missing the process pages entirely; added, gated on the Workflow & BPM module.clients/index.md— capability table and quick navigation.
Step reliability is documented as it now behaves, not as it used to. Until 2026-09-05 a failed step was retried zero times, its attempt counter was written as a hard-coded zero, and the failure review queue existed but the engine never wrote to it. The page describes the working behaviour: the retry policy and its defaults (five attempts over roughly an hour), the time limit as a budget without signs of life rather than a total execution budget, and the review queue with a retry that re-executes the step for real.
The caution about retries and double charges is deliberate and belongs on this page rather than in a footnote: the narrow default exists because a process step is often a provider call, and widening it is the client's decision to make with the provider's idempotency in hand.
2026-09-03 — Partner SDK, agentic payments, and a documentation audit against the live platform
Every claim the partner section makes was run against sandbox.4pay.online. Twelve did not
hold. The corrections, by page:
getting-started.md— rewritten./api/v1/healthreturnscore_status, notstatus;hostedhas no default and a create without it is refused asunexpected card(this alone broke the first payment for anyone following the old page);widget_urlishttps://pay.<host>?id=…&token=…with a 15-minute JWT, not/pay/<uuid>; timestamps are2026-09-03 11:18:30.101839 Etc/UTC, not ISO 8601; added the settle-without-a-browser step.transactions.md—hostedcorrected;returnUrl/failUrlare required for server-to-server payments, not for hosted ones; the listing's filter table replaced (page,offset,from,to,currencyare refused with422and never existed); paging documented ascursor, with the two silent traps —start_cursoraccepted and ignored,txidaccepted and ignored.authentication.md— the session field isexpire_atin Unix seconds, notexpires_atas an ISO string. (An earlier revision of this entry claimed a missingx-organization-idalways gives400. That was wrong and has since been corrected on the pages themselves: the code depends on the endpoint. Ten plugs read the header and refuse differently —400fromRequireOrganization,401fromAuthorize,403fromClientRequired— and on the payment endpointsRequireOrganizationruns in:syncmode and does not halt at all, so the refusal comes fromAuthorizeas401.)sandbox.md— rewritten. There are nosk_test_-prefixed keys and the environment is not chosen by the key; sandbox is a separate host. The Visa/Mastercard test cards never existed — the simulator matches the whole tuple against five МИР cards, documented with their CVVs, holder and expiry.errors.md— added the error that arrives as201 Created; corrected the400/401rows.code-examples.md— rewritten. Every example now sends both credential headers (half of them sent onlyx-api-keyand would fail), setshosted, and checksstatus.payment-flows.md— the hosted example was missinghosted: true;envadded to all examples; two paragraphs of Russian translated.webhooks.md— noted that the signing secret may live on the partner rather than the terminal.universal-transaction-protocol.md— recorded the reference implementation's timestamp deviation from §2, and added the normative statements that a201is not an acceptance and thathostedhas no default.
Added docs/partners/sdk.md: the SDK in TypeScript, Python and PHP — install, first payment,
the behaviours it handles for you, webhooks, money, sandbox fixtures.
Added docs/partners/agentic-payments.md: MCP, AP2, ACP and A2A — what each answers, how the
merchant side works, and what the platform does not do (no Payment Mandate forwarded to card
networks; no third-party vault tokens).
Added sdk/: the SDK sources themselves — typescript/, python/, php/, shared
examples/, and two scripts. scripts/verify-docs.mjs re-runs the audit above against a live
platform and fails naming the page that has started lying; scripts/build-archives.mjs packs the
downloads served at /sdk/.
Source: a live run against sandbox.4pay.online (partner key, env=test), plus the platform
source for the sandbox card fixtures and the webhook signing rule.
2026-08-23 — Participatory Finance
Added a new partner section, docs/partners/participatory-finance/ (8 pages):
index.md— the product family, the two readings, module gating, and the conventions that apply across all seven products: money as integer minor units in strings, integer percentages, basis points for markup, contract-number format, the shared lifecycle, the review object, errorspartnerships.md— profit by agreement, loss by contribution share; permanent and diminishing forms; buyoutinstallment-sales.md— the acquisition sequence, markup in basis points, the payment schedule, delinquency without penaltyleases.md— operating and finance forms, the owner's expenses, arrears, return and transfer of titlemanaged-investments.md— capital against work, loss capped at the capital, automatic liquidationcertificate-issues.md— backing, the subscription window, per-certificate distribution, the internal issue codesafekeeping-deposits.md— the two custody forms, the bonus as a right rather than an obligationinvestment-deposits.md— indicative rate as a look at the past, early withdrawal against the accrued share
Added docs/clients/islamic-banking.md: the religious reading for platform operators — the shared storage layer, the isolation between readings, the mandatory review, the action table per product type, and the response-shape differences from the secular endpoints.
Updated: sidebars.js (new partner category, new client page), intro.md, partners/index.md, clients/index.md — quick links and the capability table.
Source: the OpenAPI specification generated from the platform (mix api.spec), the contract schemas, and the JSON views. There was no documentation for any of these seven products before this entry.
2026-02-26 — Adapter Documentation Expansion
Added 28 new adapter detail pages:
- Card Processors (10): Nexi, Omise, Dragonpay, PayMongo, KG Inicis, GMO, Barion, Kevin.eu, Klix, Eway, Payrails
- Bank Transfers (6): OpenPayd, TrueLayer, Nuapay, FedNow, PayTo, Paysend
- E-Wallets (4): OVO, LINE Pay, KakaoPay, Touch 'n Go
- BNPL (4): Splitit, Sezzle, Zip Pay, Paidy
- Crypto (1): Binance Pay
- Mobile Money (2): MTN Mobile Money, Orange Money
Updated 12 existing adapter pages: Tokenio, Paysera, MiFinity, ShopeePay, DANA, Atome, SeQura, Kredivo, Mercuryo, BoomFi, emerchantpay, Chipper Cash, DigiVirgo
Updated category index pages:
- card-processors.md — added Eway, Payrails; updated count to 110+
- bank-transfers.md — added Paysend; updated count to 58
- e-wallets.md — updated count to 39
- mobile-money.md — updated count to 11
Updated intro.md:
- Provider count: 275+ → 300+
Updated clients/index.md:
- Provider count: 275+ → 300+ (table row and architecture diagram)
Updated clients/providers/index.mdx:
- Provider count: 275+ → 300+