Install

Works with Drupal: ^11.3 || ^12

Using Composer to manage Drupal site dependencies

Alternative installation files

Download tar.gz 2.63 MB
MD5: 0a5b97b0a2aea66ec7c5ae83e465abab
SHA-1: b0679a51ffc940fd809c48b16846ef8e40ea06d2
SHA-256: dbfe833d1213d6728a7320614769fe43a44e9e38274f5f5d03fff4edaf892bc8
Download zip 3.73 MB
MD5: 432c83227a891e927772a991a945b302
SHA-1: 35685c83e2aaeae7c429b63036b46a2c1f0eb36e
SHA-256: b7d86f37ad725bb97683e0610d314fa7eac5c18fdfd4f56667f5df5cefd9d4fb

Release notes

This release follows kessai 1.0.0-alpha11 and Orchestra's current 1.x: upgrade the three together. No update hook. Deploy the code and rebuild caches. A site running the yoyaku_booking example workflow re-imports it, or sets accept_following_links: true on its form, payment and cancel steps and replaces its variables node with a node that lists the five yoyaku variable providers. Every payment account a booking can be paid through has to accept the site's price currency. An order constraint matching by stored card names the matcher payment_method. Re-import the French catalogs with drush locale:import fr MODULE/translations/fr.po --type=not-customized --override=not-customized, one per catalog.

Following kessai

  • #3632091. The booking payment actions and the payable pass kessai Money, so guarantee holds, captures and refunds work with kessai 1.x. Amounts are added and compared as Money, not as bare strings.
  • #3632092. The price currency is the site's, and kessai's removed default currency is no longer read, so a booking payment no longer fails with "Undefined constant". Payment queries pass kessai's snake_case named arguments.
  • #3632093. A guarantee hold that is no longer needed is released (release()), and the order unlocks on RELEASED as well as CANCELED. A payment reported paid by hand is recorded with recordPaymentReceived(), and each money move carries a request key, so a step asked again moves the money once.
  • #3632095. The guarantee hold calls authorizeStoredPaymentMethod(). A payment's stored card is its payment method id: the order's context carries it as payment_method_id, and the order attribute matcher that counts orders sharing a stored card is payment_method (PaymentMethodMatcher, "Stored payment method"). That matcher also no longer passes an argument kessai removed.

Following Orchestra

  • #3632094. The booking example's registration, payment and cancel steps accept following links, so a booker who follows their link sees the step's form rather than its waiting status.
  • #3632090. The order's payment account is offered as a list, and the order stays locked until the checkout's maximum deadline, whatever account the payer switches to.
  • #3632074. The booking workflow's variables are computed by Orchestra's variable providers on the node that needs them, now that its variables task type is gone.
  • #3632075. yoyaku names Orchestra's engine classes in their new sub-namespaces.
  • #3632073. The status report counts only a module that sends Orchestra's emails (orchestra_mail_core or orchestra_easy_email) as a notification channel.

Tests and documentation

#3632088: five payment kernel tests enable system, which kessai's shipped action needs. The metrics page is refreshed.

Created by: mably
Created on: 12 Nov 2026 at 14:12 UTC
Last updated: 12 Nov 2026 at 14:12 UTC
Bug fixes
New features

Other releases