Issue #3618956: Track Kessai's renamed payment API: plugin.manager.kessai_payment_gateway, deleteStoredCard(), getClaims()/getRefunds() and STATE_CANCELED

Kessai renamed part of its public API in kessai #3618948, now merged. Yoyaku pins drupal/kessai: 1.x-dev, so these eight lines stopped resolving the moment it landed and Yoyaku's 1.x is red until this goes in.

what where
kessai.gateway_manager -> plugin.manager.kessai_payment_gateway yoyaku_payment.services.yml
PaymentEvents::CANCELLED -> CANCELED OrderLockSubscriber
forgetCard() -> deleteStoredCard() BookingPaymentHooks, DeleteCardAction
refunds()/claims() -> getRefunds()/getClaims(), STATE_CANCELLED -> STATE_CANCELED GuaranteeReturnTest

The service id is the one that breaks the site rather than a test: it is resolved from the container by name, so yoyaku_payment asking for the old id against a renamed Kessai fails to compile the container and every page 500s.

One thing deliberately left alone

HoldThrottle::client() is Yoyaku's own flood identifier and has nothing to do with Kessai's client factory, which also gained a get prefix. A sweep matching on ->client() would have broken hold throttling silently, with nothing failing loudly to say so.

Note on !306 (merged)

!306 (merged) (#3618938) touches four of the five files this branch touches, but none of the same lines; the only contact is GuaranteeReturnTest, where its edit sits at line 130 and this one at 166. Whichever merges second needs a trivial rebase, not a semantic resolution.

Verified locally: the change is deployed on a real site with Kessai at the merged b744858a, where the container compiles, the gateway manager resolves all three gateways under its new id, and cron runs.


Superseded by !306 (merged), which carries this commit (cherry-picked as 200cd931) so the two renames land together. Closing to keep it from being merged separately.

Edited by Frank Mably

Merge request reports

Loading
Loading