Skip to content

JNY-PFM-INT-004Resolve a payment after its response is lost

Markdown

JNY-PFM-INT-004

Resolve a payment after its response is lost

Markdown
  • DocumentDraft
  • Product intentConfirmed
  • ImplementationObserved

KindJourneyProduct areaPlatformModuleIntegration access, customer extensions and shared workflow configurationRevision1End-to-endOptional

Read atservices-platform ad3f6a65react-console baf6dae3

The Formal Contract

The narrative above explains; the sections below are authoritative — the rules, scenarios and tests this document binds.

Goal
Establish a payment outcome through lookup or an operator decision without repeating the original payment.
Screens
/console/{tenantId}/configuration/platform/integrations/activity/{executionId}/console/{tenantId}/configuration/platform/integrations/needs-attention
Intent sources
services-platform:docs/milestones/INTG-M2-calls-through-the-gateway.md#M2-D2services-platform:docs/milestones/INTG-M2-calls-through-the-gateway.md#M2-D6

Steps

#SurfaceActionCapabilityExpectedProvenance
1invokeIntegrationCapabilitySend a payment authorization from Accounting whose response disappears after dispatch.CAP-PFM-INT-009Accounting receives an unknown outcome and the original payment is not dispatched again.test
2/console/{tenantId}/configuration/platform/integrations/activity/{executionId}Inspect the payment call.CAP-PFM-INT-010The detail shows settlement in progress and the next planned lookup.test
react-console:lib/integrations/settling.test.ts#says when Rhythm checks again, as a time
3platform.integrations.executions.reconcileQuery the provider for the original payment.CAP-PFM-INT-010A conclusive result settles the call and produces one completion for Accounting.test
services-platform:modules/integrations/tests/integration/services/executions/reconciler.integration.spec.js#settles a found operation succeeded, with the provider’s answer as the stored response
4/console/{tenantId}/configuration/platform/integrations/needs-attentionIf lookup remains inconclusive, resolve the payment with an operator note.CAP-PFM-INT-011The final record identifies the operator and creates one completion for Accounting.test
services-platform:modules/integrations/tests/integration/services/executions/execution-settlement.integration.spec.js#resolve of a sync execution the caller was never answered for writes exactly one completion

Alternate and Failure Paths

PathFrom stepConditionPath takenOutcomeProvenance
alternate3Five provider lookups remain inconclusiveEscalate the payment and send administrators one noticeAn operator determines the outcome through the manual branchtest
services-platform:modules/integrations/tests/integration/services/executions/reconciler.integration.spec.js#sends the execution to needs_attention after the fifth lookup that cannot tell, with one notice to the administrators
failure3The provider reports no matching paymentContinue lookup and escalate after the last attemptDo not infer a failed payment solely from absencetest
services-platform:modules/integrations/tests/integration/services/executions/reconciler.integration.spec.js#sends a payment to needs_attention at the last lookup, with one notice, never failing it

Assertions

IdStatementProvenance
01Unknown payment outcomes use lookup rather than a second payment dispatch.test
02Manual settlement writes one completion for the calling application.test
services-platform:modules/integrations/tests/integration/services/executions/execution-settlement.integration.spec.js#resolve of a sync execution the caller was never answered for writes exactly one completion

End-to-end policy: optional: Browser evidence covers settlement displays; service tests with a controlled clock establish the delayed lookup sequence.

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.