Repository navigation
v0.3.1
[0.3.1] - 2026-09-23
Fixed
-
A PAC payment could not be retrieved with
get_instant_payment(#15).
Observed against the live developer-mode API in parle-cl/telemaco#377:
GET /v3/payments/{id}for an Automatic Payments charge returned
payment_method: "direct_debit", which Khipu's published Instant Payments
document does not declare (it still lists onlyregular_transfer,
simplified_transferandnot_available). The generated parser raised
ValueError, so the call failed withKhipuResponseErrorand none of the
verification fields could be read.direct_debitis now accepted for that field on that endpoint only, as a
typedPaymentGetPaymentPaymentMethod.DIRECT_DEBITmember reachable through
raw.InstantPaymentStatusis unchanged. Any other undeclared
payment_method, and any undeclaredstatus,status_detailor
funds_source, is still reported asKhipuResponseError.
Added
tools/spec_compat.py, a generation-time compatibility overlay.
make generate-instantnow generates from a derived copy of the Instant
Payments spec underbuild/openapi/; the committed spec is still Khipu's
document byte for byte and its sha256 lock is unchanged. The overlay's single
entry is strict: generation fails if Khipu publishesdirect_debititself
(the entry is then obsolete and must be deleted) or changes the enum in any
other way.make check-spec-compatruns the same check without writing
anything.- CI fails when committed
generated/differs from a fresh
make generate-all, and thespec-driftwatch checks the overlay against
the freshly published spec.
Notes
- This is a deliberate, temporary divergence from Khipu's published schema,
kept only until Khipu documentsdirect_debit. No retry behaviour changed and
nothing new is logged.