@blue-repository/types 0.18.0 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/README.md +1 -1
  2. package/dist/meta.d.ts +2 -2
  3. package/dist/meta.d.ts.map +1 -1
  4. package/dist/meta.js +1 -0
  5. package/dist/meta.js.map +1 -1
  6. package/dist/packages/paynote/blue-ids.d.ts +6 -7
  7. package/dist/packages/paynote/blue-ids.d.ts.map +1 -1
  8. package/dist/packages/paynote/blue-ids.js +6 -7
  9. package/dist/packages/paynote/blue-ids.js.map +1 -1
  10. package/dist/packages/paynote/contents/PayNoteDelivery.d.ts +1 -1
  11. package/dist/packages/paynote/contents/PayNoteDelivery.js +1 -1
  12. package/dist/packages/paynote/contents/PaymentMandate.d.ts +119 -6
  13. package/dist/packages/paynote/contents/PaymentMandate.d.ts.map +1 -1
  14. package/dist/packages/paynote/contents/PaymentMandate.js +119 -6
  15. package/dist/packages/paynote/contents/PaymentMandate.js.map +1 -1
  16. package/dist/packages/paynote/contents/PaymentMandateSpendAuthorizationRequested.d.ts +3 -9
  17. package/dist/packages/paynote/contents/PaymentMandateSpendAuthorizationRequested.d.ts.map +1 -1
  18. package/dist/packages/paynote/contents/PaymentMandateSpendAuthorizationRequested.js +3 -9
  19. package/dist/packages/paynote/contents/PaymentMandateSpendAuthorizationRequested.js.map +1 -1
  20. package/dist/packages/paynote/contents/PaymentMandateSpendAuthorizationResponded.d.ts +1 -1
  21. package/dist/packages/paynote/contents/PaymentMandateSpendAuthorizationResponded.js +1 -1
  22. package/dist/packages/paynote/contents/PaymentMandateSpendSettled.d.ts +12 -6
  23. package/dist/packages/paynote/contents/PaymentMandateSpendSettled.d.ts.map +1 -1
  24. package/dist/packages/paynote/contents/PaymentMandateSpendSettled.js +12 -6
  25. package/dist/packages/paynote/contents/PaymentMandateSpendSettled.js.map +1 -1
  26. package/dist/packages/paynote/contents/PaymentMandateSpendSettlementResponded.d.ts +7 -1
  27. package/dist/packages/paynote/contents/PaymentMandateSpendSettlementResponded.d.ts.map +1 -1
  28. package/dist/packages/paynote/contents/PaymentMandateSpendSettlementResponded.js +7 -1
  29. package/dist/packages/paynote/contents/PaymentMandateSpendSettlementResponded.js.map +1 -1
  30. package/dist/packages/paynote/contents/index.d.ts +1355 -1349
  31. package/dist/packages/paynote/contents/index.d.ts.map +1 -1
  32. package/dist/packages/paynote/contents/index.js +18 -21
  33. package/dist/packages/paynote/contents/index.js.map +1 -1
  34. package/dist/packages/paynote/index.d.ts +1427 -1520
  35. package/dist/packages/paynote/index.d.ts.map +1 -1
  36. package/dist/packages/paynote/meta.d.ts +24 -34
  37. package/dist/packages/paynote/meta.d.ts.map +1 -1
  38. package/dist/packages/paynote/meta.js +18 -29
  39. package/dist/packages/paynote/meta.js.map +1 -1
  40. package/dist/packages/paynote/schemas/PaymentMandate.d.ts +13 -18
  41. package/dist/packages/paynote/schemas/PaymentMandate.d.ts.map +1 -1
  42. package/dist/packages/paynote/schemas/PaymentMandate.js +21 -2
  43. package/dist/packages/paynote/schemas/PaymentMandate.js.map +1 -1
  44. package/dist/packages/paynote/schemas/PaymentMandateSpendAuthorizationRequested.d.ts +3 -6
  45. package/dist/packages/paynote/schemas/PaymentMandateSpendAuthorizationRequested.d.ts.map +1 -1
  46. package/dist/packages/paynote/schemas/PaymentMandateSpendAuthorizationRequested.js +1 -2
  47. package/dist/packages/paynote/schemas/PaymentMandateSpendAuthorizationRequested.js.map +1 -1
  48. package/dist/packages/paynote/schemas/PaymentMandateSpendAuthorizationResponded.d.ts +3 -3
  49. package/dist/packages/paynote/schemas/PaymentMandateSpendAuthorizationResponded.js +1 -1
  50. package/dist/packages/paynote/schemas/PaymentMandateSpendSettled.d.ts +6 -3
  51. package/dist/packages/paynote/schemas/PaymentMandateSpendSettled.d.ts.map +1 -1
  52. package/dist/packages/paynote/schemas/PaymentMandateSpendSettled.js +2 -1
  53. package/dist/packages/paynote/schemas/PaymentMandateSpendSettled.js.map +1 -1
  54. package/dist/packages/paynote/schemas/PaymentMandateSpendSettlementResponded.d.ts +6 -3
  55. package/dist/packages/paynote/schemas/PaymentMandateSpendSettlementResponded.d.ts.map +1 -1
  56. package/dist/packages/paynote/schemas/PaymentMandateSpendSettlementResponded.js +2 -1
  57. package/dist/packages/paynote/schemas/PaymentMandateSpendSettlementResponded.js.map +1 -1
  58. package/dist/packages/paynote/schemas/index.d.ts +37 -128
  59. package/dist/packages/paynote/schemas/index.d.ts.map +1 -1
  60. package/dist/packages/paynote/schemas/index.js +6 -9
  61. package/dist/packages/paynote/schemas/index.js.map +1 -1
  62. package/dist/repository.d.ts +1428 -1521
  63. package/dist/repository.d.ts.map +1 -1
  64. package/package.json +2 -2
  65. package/dist/packages/paynote/contents/PaymentMandateChargeAttemptState.d.ts +0 -113
  66. package/dist/packages/paynote/contents/PaymentMandateChargeAttemptState.d.ts.map +0 -1
  67. package/dist/packages/paynote/contents/PaymentMandateChargeAttemptState.js +0 -113
  68. package/dist/packages/paynote/contents/PaymentMandateChargeAttemptState.js.map +0 -1
  69. package/dist/packages/paynote/schemas/PaymentMandateChargeAttemptState.d.ts +0 -91
  70. package/dist/packages/paynote/schemas/PaymentMandateChargeAttemptState.d.ts.map +0 -1
  71. package/dist/packages/paynote/schemas/PaymentMandateChargeAttemptState.js +0 -28
  72. package/dist/packages/paynote/schemas/PaymentMandateChargeAttemptState.js.map +0 -1
@@ -1,26 +1,24 @@
1
1
  export { CardTransactionReport } from './CardTransactionReport.js';
2
2
  export { CardTransactionCaptureLockChangeFailed } from './CardTransactionCaptureLockChangeFailed.js';
3
3
  export { LinkedCardChargeAndCaptureImmediatelyRequested } from './LinkedCardChargeAndCaptureImmediatelyRequested.js';
4
- export { PayNoteDelivery } from './PayNoteDelivery.js';
5
4
  export { CardTransactionPayNote } from './CardTransactionPayNote.js';
6
5
  export { SettlementAmountRejected } from './SettlementAmountRejected.js';
7
- export { PaymentMandateSpendSettled } from './PaymentMandateSpendSettled.js';
8
6
  export { ReserveFundsAndCaptureImmediatelyRequested } from './ReserveFundsAndCaptureImmediatelyRequested.js';
9
7
  export { ReserveFundsRequested } from './ReserveFundsRequested.js';
10
8
  export { PaymentMandateAttached } from './PaymentMandateAttached.js';
11
9
  export { SettlementAmountSpecified } from './SettlementAmountSpecified.js';
12
- export { PaymentMandateSpendAuthorizationRequested } from './PaymentMandateSpendAuthorizationRequested.js';
13
10
  export { ReservationDeclined } from './ReservationDeclined.js';
14
11
  export { CardTransactionCaptureUnlockRequested } from './CardTransactionCaptureUnlockRequested.js';
15
12
  export { IssueChildPayNoteRequested } from './IssueChildPayNoteRequested.js';
16
13
  export { StartCardTransactionMonitoringRequested } from './StartCardTransactionMonitoringRequested.js';
17
14
  export { ReservationReleaseDeclined } from './ReservationReleaseDeclined.js';
15
+ export { PaymentMandateSpendSettled } from './PaymentMandateSpendSettled.js';
18
16
  export { TransactionIdentified } from './TransactionIdentified.js';
19
- export { PaymentMandateSpendSettlementResponded } from './PaymentMandateSpendSettlementResponded.js';
17
+ export { PaymentMandateSpendAuthorizationResponded } from './PaymentMandateSpendAuthorizationResponded.js';
20
18
  export { LinkedPayNoteStarted } from './LinkedPayNoteStarted.js';
21
19
  export { PayNoteAcceptedByClient } from './PayNoteAcceptedByClient.js';
20
+ export { PaymentMandateSpendAuthorizationRequested } from './PaymentMandateSpendAuthorizationRequested.js';
22
21
  export { LinkedPayNoteStartFailed } from './LinkedPayNoteStartFailed.js';
23
- export { PaymentMandateSpendAuthorizationResponded } from './PaymentMandateSpendAuthorizationResponded.js';
24
22
  export { PayNoteCancelled } from './PayNoteCancelled.js';
25
23
  export { MerchantToCustomerPayNote } from './MerchantToCustomerPayNote.js';
26
24
  export { PayNoteRejected } from './PayNoteRejected.js';
@@ -28,12 +26,13 @@ export { FundsReserved } from './FundsReserved.js';
28
26
  export { LinkedCardChargeRequested } from './LinkedCardChargeRequested.js';
29
27
  export { CardTransactionMonitoringRequestRejected } from './CardTransactionMonitoringRequestRejected.js';
30
28
  export { FundsCaptured } from './FundsCaptured.js';
29
+ export { PaymentMandate } from './PaymentMandate.js';
31
30
  export { LinkedPayNoteStartResponded } from './LinkedPayNoteStartResponded.js';
32
31
  export { PayeeAssignmentRequested } from './PayeeAssignmentRequested.js';
33
32
  export { CardTransactionMonitoringStopped } from './CardTransactionMonitoringStopped.js';
34
- export { PaymentMandate } from './PaymentMandate.js';
35
33
  export { CardChargeResponded } from './CardChargeResponded.js';
36
34
  export { ReservationReleased } from './ReservationReleased.js';
35
+ export { PaymentMandateSpendSettlementResponded } from './PaymentMandateSpendSettlementResponded.js';
37
36
  export { PayNoteClientDecisionDiscarded } from './PayNoteClientDecisionDiscarded.js';
38
37
  export { ChildPayNoteIssuanceDeclined } from './ChildPayNoteIssuanceDeclined.js';
39
38
  export { PayNote } from './PayNote.js';
@@ -46,6 +45,7 @@ export { CardTransactionCaptureLocked } from './CardTransactionCaptureLocked.js'
46
45
  export { ReverseCardChargeAndCaptureImmediatelyRequested } from './ReverseCardChargeAndCaptureImmediatelyRequested.js';
47
46
  export { ChildPayNoteIssued } from './ChildPayNoteIssued.js';
48
47
  export { ReverseCardChargeRequested } from './ReverseCardChargeRequested.js';
48
+ export { PayNoteDelivery } from './PayNoteDelivery.js';
49
49
  export { CaptureFailed } from './CaptureFailed.js';
50
50
  export { TransactionStatus } from './TransactionStatus.js';
51
51
  export { CaptureDeclined } from './CaptureDeclined.js';
@@ -58,7 +58,6 @@ export { TransactionIdentificationFailed } from './TransactionIdentificationFail
58
58
  export { CardTransactionDetails } from './CardTransactionDetails.js';
59
59
  export { PayNoteApproved } from './PayNoteApproved.js';
60
60
  export { CardChargeCompleted } from './CardChargeCompleted.js';
61
- export { PaymentMandateChargeAttemptState } from './PaymentMandateChargeAttemptState.js';
62
61
  export declare const contents: {
63
62
  readonly '2ibvMNB7oxcpkYpxpag2HLC81sRs3PUBFtqjbqN7ET8X': {
64
63
  readonly amountMinor: {
@@ -143,310 +142,676 @@ export declare const contents: {
143
142
  readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
144
143
  };
145
144
  };
146
- readonly '2QkcYqeXBPfAzjYtasCrt91CKjQjcfdjfnHpZ3EX132g': {
145
+ readonly '2wqxtvdRHf7Z3qNNKnycnu3SBVqw4BenK8et9xeT7n86': {
147
146
  readonly cardTransactionDetails: {
148
- readonly description: "Card network identifiers used to match processor and issuer records.";
149
147
  readonly type: {
150
148
  readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
151
149
  };
152
150
  };
153
- readonly clientAcceptedAt: {
154
- readonly description: "Timestamp when the client accepted.";
151
+ readonly description: "PayNote tied to a specific card transaction via ISO scheme identifiers.";
152
+ readonly name: "Card Transaction PayNote";
153
+ readonly type: {
154
+ readonly blueId: "Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F";
155
+ };
156
+ };
157
+ readonly '3b3ePGPg5GzS6KYfqoDfgjWbjccXVnGzytbpFS53x4HM': {
158
+ readonly description: "The Guarantor rejects the proposed settlement amount.";
159
+ readonly name: "Settlement Amount Rejected";
160
+ readonly reason: {
155
161
  readonly type: {
156
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
162
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
157
163
  };
158
164
  };
159
- readonly clientDecisionStatus: {
160
- readonly description: "Client decision (pending, accepted, rejected).";
165
+ readonly type: {
166
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
167
+ };
168
+ };
169
+ readonly '3XstDYFkqsUP5PdM6Z6mwspPzgdQMFtUpNyMsKPK2o6N': {
170
+ readonly amount: {
171
+ readonly type: {
172
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
173
+ };
174
+ };
175
+ readonly description: "Equivalent of Reserve Funds Requested + Capture Funds Requested";
176
+ readonly name: "Reserve Funds and Capture Immediately Requested";
177
+ readonly type: {
178
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
179
+ };
180
+ };
181
+ readonly '3Y3TYmSfZMmPYKmF5i3eR8YcVPNP5Sic2bZN8xRnvMWm': {
182
+ readonly amount: {
183
+ readonly type: {
184
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
185
+ };
186
+ };
187
+ readonly description: "A participant requests the Guarantor to reserve (hold) a specific amount.";
188
+ readonly name: "Reserve Funds Requested";
189
+ readonly type: {
190
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
191
+ };
192
+ };
193
+ readonly '49TYrHpnk2gepJiGduJP3afrnT2DJ6kDxqF4Y9M4C4t7': {
194
+ readonly description: "Payment Mandate was successfully attached to the PayNote context.";
195
+ readonly name: "Payment Mandate Attached";
196
+ readonly paymentMandateDocumentId: {
197
+ readonly description: "Document id of the attached Payment Mandate.";
161
198
  readonly type: {
162
199
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
163
200
  };
164
201
  };
165
- readonly clientRejectedAt: {
166
- readonly description: "Timestamp when the client rejected.";
202
+ readonly type: {
203
+ readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
204
+ };
205
+ };
206
+ readonly '4pVAdZo93FHRRkAkshqCZW4pUvvV1ccczJZ2Lu4jkD1D': {
207
+ readonly description: "The Guarantor confirms the final settlement amount, which may differ from the initial total.";
208
+ readonly finalAmount: {
167
209
  readonly type: {
168
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
210
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
169
211
  };
170
212
  };
171
- readonly contracts: {
172
- readonly acceptPayNote: {
173
- readonly channel: {
174
- readonly type: {
175
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
176
- };
177
- readonly value: "payNoteDeliverer";
178
- };
179
- readonly request: {
180
- readonly acceptedAt: {
181
- readonly description: "Timestamp when the client accepted.";
182
- readonly type: {
183
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
184
- };
185
- };
186
- };
187
- readonly type: {
188
- readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
189
- };
213
+ readonly name: "Settlement Amount Specified";
214
+ readonly type: {
215
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
216
+ };
217
+ };
218
+ readonly '4xS8bmZQBGPENmaPfsrtYguYfq4hTtaZAXrefdyFNkKq': {
219
+ readonly description: "The Guarantor could not reserve the requested funds.";
220
+ readonly name: "Reservation Declined";
221
+ readonly reason: {
222
+ readonly type: {
223
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
190
224
  };
191
- readonly acceptPayNoteImpl: {
192
- readonly operation: {
193
- readonly type: {
194
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
195
- };
196
- readonly value: "acceptPayNote";
197
- };
198
- readonly steps: {
199
- readonly items: readonly [{
200
- readonly code: {
201
- readonly type: {
202
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
203
- };
204
- readonly value: "const request =\n event && event.message ? event.message.request : null;\nconst acceptedAt =\n request && typeof request.acceptedAt === \"string\"\n ? request.acceptedAt\n : \"\";\nconst currentDecisionStatus = document('/clientDecisionStatus');\nconst alreadyAccepted = currentDecisionStatus === \"accepted\";\nconst alreadyRejected = currentDecisionStatus === \"rejected\";\nconst alreadyDecided = alreadyAccepted || alreadyRejected;\nconst transactionStatus = document('/transactionIdentificationStatus');\nconst canAccept =\n transactionStatus === \"identified\" &&\n currentDecisionStatus === \"pending\";\nconst discardReason = canAccept\n ? \"\"\n : alreadyDecided\n ? `PayNote already ${currentDecisionStatus}`\n : transactionStatus === \"failed\"\n ? \"Transaction identification failed\"\n : \"Transaction not identified\";\nconst currentAcceptedAt = document('/clientAcceptedAt');\nconst currentDeliveryStatus =\n document.canonical('/deliveryStatus') || {\n type: \"Conversation/Status Pending\"\n };\nconst currentDeliveryError = document('/deliveryError');\nconst payNoteBootstrapRequest = document('/payNoteBootstrapRequest');\n\nconst nextDecisionStatus = canAccept\n ? \"accepted\"\n : typeof currentDecisionStatus === \"string\"\n ? currentDecisionStatus\n : \"pending\";\nconst nextAcceptedAt = canAccept\n ? acceptedAt\n : typeof currentAcceptedAt === \"string\"\n ? currentAcceptedAt\n : \"\";\nconst nextDeliveryStatus = canAccept\n ? { type: \"Conversation/Status Completed\" }\n : currentDeliveryStatus;\nconst nextDeliveryError = canAccept\n ? \"\"\n : typeof currentDeliveryError === \"string\"\n ? currentDeliveryError\n : \"\";\n\nreturn {\n acceptedAt,\n nextDecisionStatus,\n nextAcceptedAt,\n nextDeliveryStatus,\n nextDeliveryError,\n events: canAccept\n ? [\n {\n type: \"PayNote/PayNote Accepted By Client\",\n acceptedAt\n },\n payNoteBootstrapRequest\n ]\n : [\n {\n type: \"PayNote/PayNote Client Decision Discarded\",\n decision: \"accepted\",\n reason: discardReason,\n decisionAt: acceptedAt\n }\n ]\n};\n";
205
- };
206
- readonly name: "Capture Acceptance Timestamp";
207
- readonly type: {
208
- readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
209
- };
210
- }, {
211
- readonly changeset: {
212
- readonly items: readonly [{
213
- readonly op: {
214
- readonly type: {
215
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
216
- };
217
- readonly value: "replace";
218
- };
219
- readonly path: {
220
- readonly type: {
221
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
222
- };
223
- readonly value: "/clientDecisionStatus";
224
- };
225
- readonly val: {
226
- readonly type: {
227
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
228
- };
229
- readonly value: "${steps['Capture Acceptance Timestamp'].nextDecisionStatus}";
230
- };
231
- }, {
232
- readonly op: {
233
- readonly type: {
234
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
235
- };
236
- readonly value: "replace";
237
- };
238
- readonly path: {
239
- readonly type: {
240
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
241
- };
242
- readonly value: "/clientAcceptedAt";
243
- };
244
- readonly val: {
245
- readonly type: {
246
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
247
- };
248
- readonly value: "${steps['Capture Acceptance Timestamp'].nextAcceptedAt}";
249
- };
250
- }, {
251
- readonly op: {
252
- readonly type: {
253
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
254
- };
255
- readonly value: "replace";
256
- };
257
- readonly path: {
258
- readonly type: {
259
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
260
- };
261
- readonly value: "/deliveryStatus";
262
- };
263
- readonly val: {
264
- readonly type: {
265
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
266
- };
267
- readonly value: "${steps['Capture Acceptance Timestamp'].nextDeliveryStatus}";
268
- };
269
- }, {
270
- readonly op: {
271
- readonly type: {
272
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
273
- };
274
- readonly value: "replace";
275
- };
276
- readonly path: {
277
- readonly type: {
278
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
279
- };
280
- readonly value: "/deliveryError";
281
- };
282
- readonly val: {
283
- readonly type: {
284
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
285
- };
286
- readonly value: "${steps['Capture Acceptance Timestamp'].nextDeliveryError}";
287
- };
288
- }];
289
- };
290
- readonly name: "Apply Acceptance Update";
291
- readonly type: {
292
- readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
293
- };
294
- }];
295
- };
296
- readonly type: {
297
- readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
298
- };
225
+ };
226
+ readonly type: {
227
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
228
+ };
229
+ };
230
+ readonly '531sxtH5rD9ter3EzwBTcn9GMdA7RAYFwmSQRzxCru8z': {
231
+ readonly cardTransactionDetails: {
232
+ readonly type: {
233
+ readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
299
234
  };
300
- readonly initialize: {
301
- readonly channel: {
302
- readonly type: {
303
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
304
- };
305
- readonly value: "initLifecycleChannel";
306
- };
307
- readonly steps: {
308
- readonly items: readonly [{
309
- readonly changeset: {
310
- readonly items: readonly [{
311
- readonly op: {
312
- readonly type: {
313
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
314
- };
315
- readonly value: "replace";
316
- };
317
- readonly path: {
318
- readonly type: {
319
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
320
- };
321
- readonly value: "/deliveryStatus";
322
- };
323
- readonly val: {
324
- readonly type: {
325
- readonly blueId: "ETAPjwZVyYEfPUWvXkCWAuybBhYUayg4hKC2V7mLXmsv";
326
- };
327
- };
328
- }, {
329
- readonly op: {
330
- readonly type: {
331
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
332
- };
333
- readonly value: "replace";
334
- };
335
- readonly path: {
336
- readonly type: {
337
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
338
- };
339
- readonly value: "/transactionIdentificationStatus";
340
- };
341
- readonly val: {
342
- readonly type: {
343
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
344
- };
345
- readonly value: "pending";
346
- };
347
- }, {
348
- readonly op: {
349
- readonly type: {
350
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
351
- };
352
- readonly value: "replace";
353
- };
354
- readonly path: {
355
- readonly type: {
356
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
357
- };
358
- readonly value: "/clientDecisionStatus";
359
- };
360
- readonly val: {
361
- readonly type: {
362
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
363
- };
364
- readonly value: "pending";
365
- };
366
- }, {
367
- readonly op: {
368
- readonly type: {
369
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
370
- };
371
- readonly value: "replace";
372
- };
373
- readonly path: {
374
- readonly type: {
375
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
376
- };
377
- readonly value: "/deliveryError";
378
- };
379
- readonly val: {
380
- readonly type: {
381
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
382
- };
383
- readonly value: "";
384
- };
385
- }];
386
- };
387
- readonly name: "Initialize Delivery State";
388
- readonly type: {
389
- readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
390
- };
391
- }];
235
+ };
236
+ readonly description: "Request to the card issuer to process any following card transaction capture requests.";
237
+ readonly name: "Card Transaction Capture Unlock Requested";
238
+ readonly type: {
239
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
240
+ };
241
+ };
242
+ readonly '53Dir2sGy1NHuCQXF6suGoDMxYacNhbcy23AKD89SghD': {
243
+ readonly childPayNote: {
244
+ readonly description: "Complete PayNote";
245
+ };
246
+ readonly description: "The Payer requests to issue a new PayNote.\nThe requested PayNote must have amount/total specified and in the same currency as this PayNote.\nIf approved by Guarator, amount/total of this PayNote will be deducted by this value.\nIf child PayNote is later cancelled, or captured value is smaller than the total, the funds will be added back to amount/total.\n";
247
+ readonly name: "Issue Child PayNote Requested";
248
+ readonly type: {
249
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
250
+ };
251
+ };
252
+ readonly '649PKUqAakwi2JwDwHyypfWb4VmrrBAeEqzSU6FDWfgm': {
253
+ readonly description: "Request to start monitoring card events for a target merchant.";
254
+ readonly events: {
255
+ readonly description: "Requested card event categories.\nFor now:\n- transaction\n";
256
+ readonly itemType: {
257
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
258
+ };
259
+ readonly type: {
260
+ readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
261
+ };
262
+ };
263
+ readonly name: "Start Card Transaction Monitoring Requested";
264
+ readonly requestedAt: {
265
+ readonly description: "Timestamp (microseconds since epoch).";
266
+ readonly type: {
267
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
268
+ };
269
+ };
270
+ readonly targetMerchantId: {
271
+ readonly type: {
272
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
273
+ };
274
+ };
275
+ readonly type: {
276
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
277
+ };
278
+ };
279
+ readonly '653sCbbRH3RiKhGjmVxh6wFVs4rn54wJRKDXRMKBZtjA': {
280
+ readonly description: "The Guarantor failed to release the reserved funds.";
281
+ readonly name: "Reservation Release Declined";
282
+ readonly reason: {
283
+ readonly type: {
284
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
285
+ };
286
+ };
287
+ readonly type: {
288
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
289
+ };
290
+ };
291
+ readonly '6aPqmL9AQV31CCV576ZmEcUgysbdbQAfAig9J5VYeR6v': {
292
+ readonly authorizationId: {
293
+ readonly description: "Correlation key copied from Payment Mandate Spend Authorization Requested.";
294
+ readonly type: {
295
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
296
+ };
297
+ };
298
+ readonly capturedDeltaMinor: {
299
+ readonly description: "Net change to amountCaptured in minor units. Positive for successful capture.\n";
300
+ readonly type: {
301
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
302
+ };
303
+ };
304
+ readonly description: "Settlement update sent by bank to Payment Mandate after charge execution, used to apply deterministic reserved/captured deltas in mandate state. For approved authorizations, mandate may already reserve capacity at authorize step. Deltas should express net post-execution adjustment from current mandate state.\n";
305
+ readonly holdId: {
306
+ readonly description: "Optional hold id produced by banking execution.";
307
+ readonly type: {
308
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
309
+ };
310
+ };
311
+ readonly name: "Payment Mandate Spend Settled";
312
+ readonly reason: {
313
+ readonly description: "Optional failure reason.";
314
+ readonly type: {
315
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
316
+ };
317
+ };
318
+ readonly reservedDeltaMinor: {
319
+ readonly description: "Net change to amountReserved in minor units. Positive for new reserve, negative for release/capture settlement. For authorize-only success this is typically 0 when authorization already reserved capacity.\n";
320
+ readonly type: {
321
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
322
+ };
323
+ };
324
+ readonly settledAt: {
325
+ readonly description: "Timestamp when settlement result was emitted.";
326
+ readonly type: {
327
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
328
+ };
329
+ };
330
+ readonly settlementId: {
331
+ readonly description: "Optional settlement correlation id for idempotent settlement updates.";
332
+ readonly type: {
333
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
334
+ };
335
+ };
336
+ readonly status: {
337
+ readonly description: "Settlement status (\"succeeded\" | \"failed\").";
338
+ readonly type: {
339
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
340
+ };
341
+ };
342
+ readonly transactionId: {
343
+ readonly description: "Optional transaction id produced by banking execution.";
344
+ readonly type: {
345
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
346
+ };
347
+ };
348
+ readonly type: {
349
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
350
+ };
351
+ };
352
+ readonly '6gQWKeJHZEbBo13Vvyf2nsdg7TA9kLSYdzMaJgySPG7V': {
353
+ readonly description: "The deliverer identified the card transaction.";
354
+ readonly name: "Transaction Identified";
355
+ readonly type: {
356
+ readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
357
+ };
358
+ };
359
+ readonly '6UFd89oNox3PCpeVFaaCXwbGDp3k3Qc56e4DktnK3F8P': {
360
+ readonly authorizationId: {
361
+ readonly description: "Correlation key copied from Payment Mandate Spend Authorization Requested.";
362
+ readonly type: {
363
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
364
+ };
365
+ };
366
+ readonly description: "Decision from Payment Mandate for a spend authorization request.";
367
+ readonly name: "Payment Mandate Spend Authorization Responded";
368
+ readonly reason: {
369
+ readonly description: "Optional rejection reason.";
370
+ readonly type: {
371
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
372
+ };
373
+ };
374
+ readonly remainingAmountMinor: {
375
+ readonly description: "Optional remaining mandate capacity in minor currency units after decision.";
376
+ readonly type: {
377
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
378
+ };
379
+ };
380
+ readonly respondedAt: {
381
+ readonly description: "Timestamp when the decision was emitted.";
382
+ readonly type: {
383
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
384
+ };
385
+ };
386
+ readonly status: {
387
+ readonly description: "Decision status (\"approved\" | \"rejected\").";
388
+ readonly type: {
389
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
390
+ };
391
+ };
392
+ readonly type: {
393
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
394
+ };
395
+ };
396
+ readonly '6vnMMWuq6qJ1hxLqL1P2ckCqC9JtJF3QNW8s7rMTgZ4Q': {
397
+ readonly description: "Confirmation that linked PayNote startup was requested successfully.";
398
+ readonly name: "Linked PayNote Started";
399
+ readonly payNoteDocumentId: {
400
+ readonly description: "Document id of the bootstrapped linked PayNote when available.";
401
+ readonly type: {
402
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
403
+ };
404
+ };
405
+ readonly payNoteSessionId: {
406
+ readonly description: "Session id of the bootstrapped linked PayNote document.";
407
+ readonly type: {
408
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
409
+ };
410
+ };
411
+ readonly type: {
412
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
413
+ };
414
+ };
415
+ readonly '6VQC585V4SdpyA5hCeQQGM178bbeW3D2WcKt8ZCWK9s3': {
416
+ readonly acceptedAt: {
417
+ readonly description: "Timestamp when the client accepted.";
418
+ readonly type: {
419
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
420
+ };
421
+ };
422
+ readonly description: "The client accepted the PayNote.";
423
+ readonly name: "PayNote Accepted By Client";
424
+ readonly type: {
425
+ readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
426
+ };
427
+ };
428
+ readonly '7EKvVzbT63C2taKWfLf9J2BiVL7BCL6Ld86tH8b9kmxF': {
429
+ readonly amountMinor: {
430
+ readonly description: "Requested amount in minor currency units.";
431
+ readonly type: {
432
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
433
+ };
434
+ };
435
+ readonly authorizationId: {
436
+ readonly description: "Correlation and idempotency key for a single authorization lifecycle.";
437
+ readonly type: {
438
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
439
+ };
440
+ };
441
+ readonly counterpartyId: {
442
+ readonly description: "Counterparty identifier interpreted according to counterpartyType.";
443
+ readonly type: {
444
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
445
+ };
446
+ };
447
+ readonly counterpartyType: {
448
+ readonly description: "Counterparty identifier type (\"merchantId\" | \"customerId\" | \"accountNumber\").";
449
+ readonly type: {
450
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
451
+ };
452
+ };
453
+ readonly currency: {
454
+ readonly description: "Currency used to validate amountMinor against mandate limits.";
455
+ readonly type: {
456
+ readonly blueId: "CBnZ7aaNetj9KEqXpUWj5jvjKbmviLivP98T2EiyxiYc";
457
+ };
458
+ };
459
+ readonly description: "Bank asks a Payment Mandate document to authorize a single spend before reserve/capture execution.\n";
460
+ readonly name: "Payment Mandate Spend Authorization Requested";
461
+ readonly requestedAt: {
462
+ readonly description: "Timestamp when the authorization request was created.";
463
+ readonly type: {
464
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
465
+ };
466
+ };
467
+ readonly requestingDocumentId: {
468
+ readonly description: "Document id that requested the charge.";
469
+ readonly type: {
470
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
471
+ };
472
+ };
473
+ readonly requestingSessionId: {
474
+ readonly description: "Session id that requested the charge.";
475
+ readonly type: {
476
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
477
+ };
478
+ };
479
+ readonly type: {
480
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
481
+ };
482
+ };
483
+ readonly '8dggwonfALwrTSRhg8g8ncXFXierke2mogtEZQXHab64': {
484
+ readonly description: "Linked PayNote startup failed after charge processing.";
485
+ readonly name: "Linked PayNote Start Failed";
486
+ readonly reason: {
487
+ readonly description: "Failure reason.";
488
+ readonly type: {
489
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
490
+ };
491
+ };
492
+ readonly type: {
493
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
494
+ };
495
+ };
496
+ readonly '96buyUXwhkak8xKoCR5nAW9tMuwzkevJFdELVvwKxR6Y': {
497
+ readonly description: "The Guarantor confirms PayNote cancellation requested by Payer.";
498
+ readonly name: "PayNote Cancelled";
499
+ readonly type: {
500
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
501
+ };
502
+ };
503
+ readonly '9dJ3W19EJ8MqtTJR8oidX8eRrkeB8xNQyqeTZeqBHZjo': {
504
+ readonly description: "Base PayNote where payer is merchant and payee is customer. Bank sets/validates payer channel bindings.";
505
+ readonly name: "Merchant To Customer PayNote";
506
+ readonly type: {
507
+ readonly blueId: "Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F";
508
+ };
509
+ };
510
+ readonly AdKfkwRfzRUxUKSzhRfYANsaUBNnz4u6JFWR66qhzyZe: {
511
+ readonly description: "The Guarantor denies the creation of the PayNote.";
512
+ readonly name: "PayNote Rejected";
513
+ readonly reason: {
514
+ readonly type: {
515
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
516
+ };
517
+ };
518
+ readonly type: {
519
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
520
+ };
521
+ };
522
+ readonly AopfdGqnwcxsw4mJzXbmjDMnASRtkce9BZB1n6QSRNXX: {
523
+ readonly amountReserved: {
524
+ readonly type: {
525
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
526
+ };
527
+ };
528
+ readonly description: "The Guarantor confirms that funds have been successfully reserved (held).";
529
+ readonly name: "Funds Reserved";
530
+ readonly type: {
531
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
532
+ };
533
+ };
534
+ readonly Aq4dNFtLHLWYfCS7aqAgWwGi48MgbQmp2EZJtDBN7FSg: {
535
+ readonly amount: {
536
+ readonly description: "Charge amount in minor currency units.";
537
+ readonly type: {
538
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
539
+ };
540
+ };
541
+ readonly description: "Request to create a new card charge linked to the root card transaction context.";
542
+ readonly name: "Linked Card Charge Requested";
543
+ readonly paymentMandateDocumentId: {
544
+ readonly description: "Optional Payment Mandate document id used to authorize charge execution.";
545
+ readonly type: {
546
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
547
+ };
548
+ };
549
+ readonly paynote: {
550
+ readonly description: "Optional PayNote document to bootstrap for the created charge context.";
551
+ };
552
+ readonly type: {
553
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
554
+ };
555
+ };
556
+ readonly B2iherBskP5f4x7x31GahNmsJtyzian6ZN92b8kE1E5q: {
557
+ readonly description: "Notification that card transaction monitoring was rejected.";
558
+ readonly events: {
559
+ readonly itemType: {
560
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
561
+ };
562
+ readonly type: {
563
+ readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
564
+ };
565
+ };
566
+ readonly name: "Card Transaction Monitoring Request Rejected";
567
+ readonly reason: {
568
+ readonly description: "Reason monitoring was rejected.";
569
+ readonly type: {
570
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
571
+ };
572
+ };
573
+ readonly rejectedAt: {
574
+ readonly description: "Timestamp (microseconds since epoch) when monitoring was rejected.";
575
+ readonly type: {
576
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
577
+ };
578
+ };
579
+ readonly targetMerchantId: {
580
+ readonly description: "External merchant identifier requested for monitoring.";
581
+ readonly type: {
582
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
583
+ };
584
+ };
585
+ readonly type: {
586
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
587
+ };
588
+ };
589
+ readonly BJvjorbC5ed5KTV7SxoV3CvrJXjrFPcFxY9QT4jHBbXi: {
590
+ readonly amountCaptured: {
591
+ readonly type: {
592
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
593
+ };
594
+ };
595
+ readonly description: "The Guarantor confirms that funds have been successfully transferred to the Payee.";
596
+ readonly name: "Funds Captured";
597
+ readonly type: {
598
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
599
+ };
600
+ };
601
+ readonly BKKgKnHFhLmmUxq4WRvhV7HYZNu6ngDEce1LvHjZimJr: {
602
+ readonly allowedPaymentCounterparties: {
603
+ readonly description: "Optional payment counterparty allowlist. Missing list means wildcard (any counterparty is allowed).\n";
604
+ readonly itemType: {
605
+ readonly counterpartyId: {
606
+ readonly description: "Counterparty identifier interpreted according to counterpartyType.";
607
+ readonly type: {
608
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
609
+ };
392
610
  };
393
- readonly type: {
394
- readonly blueId: "7X3LkN54Yp88JgZbppPhP6hM3Jqiqv8Z2i4kS7phXtQe";
611
+ readonly counterpartyType: {
612
+ readonly description: "Allowed payment counterparty identifier type:\n- merchantId\n- customerId\n- accountNumber\n";
613
+ readonly type: {
614
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
615
+ };
395
616
  };
396
617
  };
397
- readonly initLifecycleChannel: {
398
- readonly event: {
618
+ readonly type: {
619
+ readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
620
+ };
621
+ };
622
+ readonly allowedPayNotes: {
623
+ readonly description: "Optional linked PayNote allowlist. Used only when allowLinkedPayNote is true. Missing list means wildcard (any linked PayNote is allowed). Each entry must set exactly one selector: typeBlueId or documentBlueId.\n";
624
+ readonly itemType: {
625
+ readonly documentBlueId: {
626
+ readonly description: "Optional blue-id of an allowed concrete PayNote document. Mutually exclusive with typeBlueId.\n";
627
+ readonly type: {
628
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
629
+ };
630
+ };
631
+ readonly typeBlueId: {
632
+ readonly description: "Optional blue-id of an allowed PayNote type. Mutually exclusive with documentBlueId.\n";
633
+ readonly type: {
634
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
635
+ };
636
+ };
637
+ };
638
+ readonly type: {
639
+ readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
640
+ };
641
+ };
642
+ readonly allowLinkedPayNote: {
643
+ readonly description: "Whether this mandate allows linked PayNote startup after charge execution.";
644
+ readonly type: {
645
+ readonly blueId: "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u";
646
+ };
647
+ };
648
+ readonly amountCaptured: {
649
+ readonly description: "Running captured amount in minor currency units. Increased after successful capture.\n";
650
+ readonly type: {
651
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
652
+ };
653
+ };
654
+ readonly amountLimit: {
655
+ readonly description: "Maximum amount in minor currency units allowed by this mandate.";
656
+ readonly type: {
657
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
658
+ };
659
+ };
660
+ readonly amountReserved: {
661
+ readonly description: "Running reserved amount in minor currency units. Increased after successful reserve/authorize, decreased after release/capture.\n";
662
+ readonly type: {
663
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
664
+ };
665
+ };
666
+ readonly chargeAttempts: {
667
+ readonly description: "Stateful map of authorizationId -> authorization state (authorization + settlement).";
668
+ readonly keyType: {
669
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
670
+ };
671
+ readonly type: {
672
+ readonly blueId: "G7fBT9PSod1RfHLHkpafAGBDVAJMrMhAMY51ERcyXNrj";
673
+ };
674
+ readonly valueType: {
675
+ readonly amountMinor: {
676
+ readonly description: "Requested amount in minor currency units.";
677
+ readonly type: {
678
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
679
+ };
680
+ };
681
+ readonly authorizationReason: {
682
+ readonly description: "Optional authorization rejection reason.";
683
+ readonly type: {
684
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
685
+ };
686
+ };
687
+ readonly authorizationRespondedAt: {
688
+ readonly description: "Timestamp of authorization decision response.";
689
+ readonly type: {
690
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
691
+ };
692
+ };
693
+ readonly authorizationStatus: {
694
+ readonly description: "Authorization decision status (\"approved\" | \"rejected\").";
695
+ readonly type: {
696
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
697
+ };
698
+ };
699
+ readonly authorizedAmountMinor: {
700
+ readonly description: "Authorized amount reserved against mandate capacity for this attempt.";
701
+ readonly type: {
702
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
703
+ };
704
+ };
705
+ readonly capturedDeltaMinor: {
706
+ readonly description: "Captured delta applied for accepted settlement.";
707
+ readonly type: {
708
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
709
+ };
710
+ };
711
+ readonly chargeMode: {
712
+ readonly description: "Requested charge mode (\"authorize_only\" | \"authorize_and_capture\").";
713
+ readonly type: {
714
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
715
+ };
716
+ };
717
+ readonly counterpartyId: {
718
+ readonly description: "Counterparty identifier interpreted according to counterpartyType.";
719
+ readonly type: {
720
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
721
+ };
722
+ };
723
+ readonly counterpartyType: {
724
+ readonly description: "Counterparty identifier type (\"merchantId\" | \"customerId\" | \"accountNumber\").";
725
+ readonly type: {
726
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
727
+ };
728
+ };
729
+ readonly currency: {
730
+ readonly description: "Requested currency.";
731
+ readonly type: {
732
+ readonly blueId: "CBnZ7aaNetj9KEqXpUWj5jvjKbmviLivP98T2EiyxiYc";
733
+ };
734
+ };
735
+ readonly holdId: {
736
+ readonly description: "Optional hold id associated with settlement.";
737
+ readonly type: {
738
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
739
+ };
740
+ };
741
+ readonly lastSettlementId: {
742
+ readonly description: "Optional last applied settlement id for idempotency tracking.";
743
+ readonly type: {
744
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
745
+ };
746
+ };
747
+ readonly lastSettlementProcessingStatus: {
748
+ readonly description: "Mandate processing status for last settlement (\"accepted\" | \"rejected\").";
749
+ readonly type: {
750
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
751
+ };
752
+ };
753
+ readonly lastSettlementRequestStatus: {
754
+ readonly description: "Last settlement request status received from bank (\"succeeded\" | \"failed\").";
755
+ readonly type: {
756
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
757
+ };
758
+ };
759
+ readonly reservedDeltaMinor: {
760
+ readonly description: "Reserved delta applied for accepted settlement.";
761
+ readonly type: {
762
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
763
+ };
764
+ };
765
+ readonly settled: {
766
+ readonly description: "Whether mandate accepted settlement for this attempt.";
399
767
  readonly type: {
400
- readonly blueId: "BrpmpNt5JkapeUvPqYcxgXZrHNZX3R757dRwuXXdfNM2";
768
+ readonly blueId: "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u";
401
769
  };
402
770
  };
403
- readonly type: {
404
- readonly blueId: "H2aCCTUcLMTJozWkn7HPUjyFBFxamraw1q8DyWk87zxr";
771
+ readonly settlementReason: {
772
+ readonly description: "Optional settlement rejection/info reason.";
773
+ readonly type: {
774
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
775
+ };
405
776
  };
406
- };
407
- readonly payNoteDeliverer: {
408
- readonly description: "Participant delivering and reporting status (e.g., bank).";
409
- readonly type: {
410
- readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
777
+ readonly settlementRespondedAt: {
778
+ readonly description: "Timestamp of last settlement processing response.";
779
+ readonly type: {
780
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
781
+ };
411
782
  };
412
- };
413
- readonly payNoteSender: {
414
- readonly description: "Participant submitting the PayNote delivery (merchant or processor).";
415
- readonly type: {
416
- readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
783
+ readonly transactionId: {
784
+ readonly description: "Optional transaction id associated with settlement.";
785
+ readonly type: {
786
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
787
+ };
417
788
  };
418
789
  };
419
- readonly rejectPayNote: {
790
+ };
791
+ readonly contracts: {
792
+ readonly authorizeSpend: {
420
793
  readonly channel: {
421
794
  readonly type: {
422
795
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
423
796
  };
424
- readonly value: "payNoteDeliverer";
797
+ readonly value: "guarantorChannel";
425
798
  };
799
+ readonly description: "Validate a charge attempt against mandate policy and reserve capacity.";
426
800
  readonly request: {
427
- readonly reason: {
428
- readonly description: "Optional rejection reason.";
429
- readonly type: {
430
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
431
- };
432
- };
433
- readonly rejectedAt: {
434
- readonly description: "Timestamp when the client rejected.";
435
- readonly type: {
436
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
437
- };
801
+ readonly type: {
802
+ readonly blueId: "7EKvVzbT63C2taKWfLf9J2BiVL7BCL6Ld86tH8b9kmxF";
438
803
  };
439
804
  };
440
805
  readonly type: {
441
806
  readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
442
807
  };
443
808
  };
444
- readonly rejectPayNoteImpl: {
809
+ readonly authorizeSpendImpl: {
445
810
  readonly operation: {
446
811
  readonly type: {
447
812
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
448
813
  };
449
- readonly value: "rejectPayNote";
814
+ readonly value: "authorizeSpend";
450
815
  };
451
816
  readonly steps: {
452
817
  readonly items: readonly [{
@@ -454,9 +819,9 @@ export declare const contents: {
454
819
  readonly type: {
455
820
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
456
821
  };
457
- readonly value: "const request =\n event && event.message ? event.message.request : null;\nconst safeReason =\n typeof request === \"string\"\n ? request\n : request && typeof request.reason === \"string\"\n ? request.reason\n : \"\";\nconst rejectedAt =\n request && typeof request.rejectedAt === \"string\"\n ? request.rejectedAt\n : \"\";\nconst currentDecisionStatus = document('/clientDecisionStatus');\nconst alreadyAccepted = currentDecisionStatus === \"accepted\";\nconst alreadyRejected = currentDecisionStatus === \"rejected\";\nconst alreadyDecided = alreadyAccepted || alreadyRejected;\nconst transactionStatus = document('/transactionIdentificationStatus');\nconst canReject =\n transactionStatus === \"identified\" &&\n currentDecisionStatus === \"pending\";\nconst discardReason = canReject\n ? \"\"\n : alreadyDecided\n ? `PayNote already ${currentDecisionStatus}`\n : transactionStatus === \"failed\"\n ? \"Transaction identification failed\"\n : \"Transaction not identified\";\n\nconst currentRejectedAt = document('/clientRejectedAt');\nconst currentDeliveryStatus =\n document.canonical('/deliveryStatus') || {\n type: \"Conversation/Status Pending\"\n };\nconst currentDeliveryError = document('/deliveryError');\n\nconst nextDecisionStatus = canReject\n ? \"rejected\"\n : typeof currentDecisionStatus === \"string\"\n ? currentDecisionStatus\n : \"pending\";\nconst nextRejectedAt = canReject\n ? rejectedAt\n : typeof currentRejectedAt === \"string\"\n ? currentRejectedAt\n : \"\";\nconst nextDeliveryStatus = canReject\n ? { type: \"Conversation/Status Failed\" }\n : currentDeliveryStatus;\nconst nextDeliveryError = canReject\n ? safeReason\n : typeof currentDeliveryError === \"string\"\n ? currentDeliveryError\n : \"\";\n\nreturn {\n reason: safeReason,\n rejectedAt,\n nextDecisionStatus,\n nextRejectedAt,\n nextDeliveryStatus,\n nextDeliveryError,\n events: canReject\n ? [\n {\n type: \"PayNote/PayNote Rejected By Client\",\n reason: safeReason,\n rejectedAt\n }\n ]\n : [\n {\n type: \"PayNote/PayNote Client Decision Discarded\",\n decision: \"rejected\",\n reason: discardReason,\n decisionAt: rejectedAt\n }\n ]\n};\n";
822
+ readonly value: "const documentCanonical = document.canonical('/');\nconst requestCanonical = eventCanonical\n ? canon.at(eventCanonical, '/message/request')\n : undefined;\n\nconst requestedAtNode = requestCanonical\n ? canon.at(requestCanonical, '/requestedAt')\n : undefined;\nconst requestedAtRaw = requestedAtNode ? canon.unwrap(requestedAtNode) : '';\nconst requestedAt = typeof requestedAtRaw === 'string' ? requestedAtRaw : '';\nconst nowIso =\n requestedAt ||\n (typeof event.timestamp === 'string' ? event.timestamp : '');\n\nconst normalizeTimestamp = function (value) {\n if (typeof value !== 'string' || !value) {\n return '';\n }\n let digits = '';\n let index = 0;\n while (index < value.length) {\n const code = value.charCodeAt(index);\n if (code >= 48 && code <= 57) {\n digits += value.charAt(index);\n }\n index += 1;\n }\n if (digits.length < 14) {\n return '';\n }\n return digits.slice(0, 14);\n};\n\nconst authorizationIdNode = requestCanonical\n ? canon.at(requestCanonical, '/authorizationId')\n : undefined;\nconst authorizationIdRaw = authorizationIdNode\n ? canon.unwrap(authorizationIdNode)\n : '';\nconst authorizationId =\n typeof authorizationIdRaw === 'string' ? authorizationIdRaw : '';\n\nconst amountMinorNode = requestCanonical\n ? canon.at(requestCanonical, '/amountMinor')\n : undefined;\nconst amountMinorRaw = amountMinorNode ? canon.unwrap(amountMinorNode) : 0;\nconst amountMinor = typeof amountMinorRaw === 'number' ? amountMinorRaw : 0;\n\nconst counterpartyTypeNode = requestCanonical\n ? canon.at(requestCanonical, '/counterpartyType')\n : undefined;\nconst counterpartyTypeRaw = counterpartyTypeNode\n ? canon.unwrap(counterpartyTypeNode)\n : '';\nconst counterpartyType =\n typeof counterpartyTypeRaw === 'string' ? counterpartyTypeRaw : '';\n\nconst counterpartyIdNode = requestCanonical\n ? canon.at(requestCanonical, '/counterpartyId')\n : undefined;\nconst counterpartyIdRaw = counterpartyIdNode\n ? canon.unwrap(counterpartyIdNode)\n : '';\nconst counterpartyId =\n typeof counterpartyIdRaw === 'string' ? counterpartyIdRaw : '';\n\nconst requestedCurrencyNode = requestCanonical\n ? canon.at(requestCanonical, '/currency')\n : undefined;\nconst requestedCurrencyRaw = requestedCurrencyNode\n ? canon.unwrap(requestedCurrencyNode)\n : '';\nconst requestedCurrency =\n typeof requestedCurrencyRaw === 'string' ? requestedCurrencyRaw : '';\n\nconst chargeAttemptsNode = canon.at(documentCanonical, '/chargeAttempts');\nconst chargeAttemptsRaw = chargeAttemptsNode\n ? canon.unwrap(chargeAttemptsNode)\n : {};\nconst chargeAttempts =\n chargeAttemptsRaw &&\n typeof chargeAttemptsRaw === 'object' &&\n !Array.isArray(chargeAttemptsRaw)\n ? chargeAttemptsRaw\n : {};\nconst nextChargeAttempts = { ...chargeAttempts };\n\nconst existingAttemptRaw = authorizationId\n ? chargeAttempts[authorizationId]\n : undefined;\nconst existingAttempt =\n existingAttemptRaw &&\n typeof existingAttemptRaw === 'object' &&\n !Array.isArray(existingAttemptRaw)\n ? existingAttemptRaw\n : null;\nconst existingDecision =\n existingAttempt &&\n typeof existingAttempt.authorizationStatus === 'string'\n ? existingAttempt.authorizationStatus\n : '';\nconst existingReason =\n existingAttempt && typeof existingAttempt.authorizationReason === 'string'\n ? existingAttempt.authorizationReason\n : '';\n\nconst amountLimitNode = canon.at(documentCanonical, '/amountLimit');\nconst amountLimitRaw = amountLimitNode ? canon.unwrap(amountLimitNode) : 0;\nconst amountLimit = typeof amountLimitRaw === 'number' ? amountLimitRaw : 0;\n\nconst amountReservedNode = canon.at(documentCanonical, '/amountReserved');\nconst amountReservedRaw = amountReservedNode\n ? canon.unwrap(amountReservedNode)\n : 0;\nconst amountReserved =\n typeof amountReservedRaw === 'number' ? amountReservedRaw : 0;\n\nconst amountCapturedNode = canon.at(documentCanonical, '/amountCaptured');\nconst amountCapturedRaw = amountCapturedNode\n ? canon.unwrap(amountCapturedNode)\n : 0;\nconst amountCaptured =\n typeof amountCapturedRaw === 'number' ? amountCapturedRaw : 0;\n\nconst mandateCurrencyNode = canon.at(documentCanonical, '/currency');\nconst mandateCurrencyRaw = mandateCurrencyNode\n ? canon.unwrap(mandateCurrencyNode)\n : '';\nconst mandateCurrency =\n typeof mandateCurrencyRaw === 'string' ? mandateCurrencyRaw : '';\n\nconst expiresAtNode = canon.at(documentCanonical, '/expiresAt');\nconst expiresAtRaw = expiresAtNode ? canon.unwrap(expiresAtNode) : '';\nconst expiresAt = typeof expiresAtRaw === 'string' ? expiresAtRaw : '';\n\nconst revokedAtNode = canon.at(documentCanonical, '/revokedAt');\nconst revokedAtRaw = revokedAtNode ? canon.unwrap(revokedAtNode) : '';\nconst revokedAt = typeof revokedAtRaw === 'string' ? revokedAtRaw : '';\n\nconst nowComparable = normalizeTimestamp(nowIso);\n\nconst allowedCounterpartiesNode = canon.at(\n documentCanonical,\n '/allowedPaymentCounterparties'\n);\nconst allowedCounterpartiesRaw = allowedCounterpartiesNode\n ? canon.unwrap(allowedCounterpartiesNode)\n : [];\nconst allowedCounterparties = Array.isArray(allowedCounterpartiesRaw)\n ? allowedCounterpartiesRaw\n : [];\nconst isCounterpartyAllowed =\n allowedCounterparties.length === 0 ||\n allowedCounterparties.some(function (item) {\n const itemType =\n item && typeof item.counterpartyType === 'string'\n ? item.counterpartyType\n : '';\n const itemId =\n item && typeof item.counterpartyId === 'string'\n ? item.counterpartyId\n : '';\n return (\n item &&\n itemType === counterpartyType &&\n itemId === counterpartyId\n );\n });\n\nlet status = 'rejected';\nlet reason = '';\nlet nextAmountReserved = amountReserved;\n\nif (existingDecision === 'approved' || existingDecision === 'rejected') {\n status = existingDecision;\n reason = existingDecision === 'rejected' ? existingReason : '';\n} else if (!authorizationId) {\n reason = 'Missing authorizationId.';\n} else if (amountMinor <= 0) {\n reason = 'Amount must be greater than zero.';\n} else if (!requestedCurrency || requestedCurrency !== mandateCurrency) {\n reason = 'Currency does not match mandate currency.';\n} else if (revokedAt) {\n reason = 'Mandate is revoked.';\n} else if (\n expiresAt &&\n normalizeTimestamp(expiresAt) &&\n nowComparable &&\n normalizeTimestamp(expiresAt) < nowComparable\n) {\n reason = 'Mandate is expired.';\n} else if (!isCounterpartyAllowed) {\n reason = 'Counterparty is not allowed by mandate.';\n} else if (amountReserved + amountCaptured + amountMinor > amountLimit) {\n reason = 'Mandate amount limit exceeded.';\n} else {\n status = 'approved';\n nextAmountReserved = amountReserved + amountMinor;\n}\n\nif (authorizationId && !existingDecision) {\n const chargeModeNode = requestCanonical\n ? canon.at(requestCanonical, '/chargeMode')\n : undefined;\n const chargeModeRaw = chargeModeNode ? canon.unwrap(chargeModeNode) : '';\n const chargeMode = typeof chargeModeRaw === 'string' ? chargeModeRaw : '';\n\n nextChargeAttempts[authorizationId] = {\n amountMinor,\n currency: requestedCurrency,\n counterpartyType,\n counterpartyId,\n chargeMode,\n authorizationStatus: status,\n authorizationReason: reason,\n authorizationRespondedAt: nowIso,\n authorizedAmountMinor: status === 'approved' ? amountMinor : 0,\n settled: false,\n lastSettlementRequestStatus: '',\n lastSettlementProcessingStatus: '',\n settlementReason: '',\n settlementRespondedAt: '',\n reservedDeltaMinor: 0,\n capturedDeltaMinor: 0,\n holdId: '',\n transactionId: ''\n };\n}\n\nconst remainingAmountMinor = Math.max(\n 0,\n amountLimit - (nextAmountReserved + amountCaptured)\n);\n\nconst responseEvent = {\n type: 'PayNote/Payment Mandate Spend Authorization Responded',\n authorizationId,\n status,\n remainingAmountMinor,\n respondedAt: nowIso\n};\n\nif (reason) {\n responseEvent.reason = reason;\n}\n\nreturn {\n nextChargeAttempts: nextChargeAttempts,\n nextAmountReserved: nextAmountReserved,\n events: [responseEvent]\n};\n";
458
823
  };
459
- readonly name: "Capture Rejection Reason";
824
+ readonly name: "Decide Spend Authorization";
460
825
  readonly type: {
461
826
  readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
462
827
  };
@@ -473,51 +838,13 @@ export declare const contents: {
473
838
  readonly type: {
474
839
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
475
840
  };
476
- readonly value: "/clientDecisionStatus";
477
- };
478
- readonly val: {
479
- readonly type: {
480
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
481
- };
482
- readonly value: "${steps['Capture Rejection Reason'].nextDecisionStatus}";
483
- };
484
- }, {
485
- readonly op: {
486
- readonly type: {
487
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
488
- };
489
- readonly value: "replace";
490
- };
491
- readonly path: {
492
- readonly type: {
493
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
494
- };
495
- readonly value: "/clientRejectedAt";
496
- };
497
- readonly val: {
498
- readonly type: {
499
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
500
- };
501
- readonly value: "${steps['Capture Rejection Reason'].nextRejectedAt}";
502
- };
503
- }, {
504
- readonly op: {
505
- readonly type: {
506
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
507
- };
508
- readonly value: "replace";
509
- };
510
- readonly path: {
511
- readonly type: {
512
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
513
- };
514
- readonly value: "/deliveryStatus";
841
+ readonly value: "/chargeAttempts";
515
842
  };
516
843
  readonly val: {
517
844
  readonly type: {
518
845
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
519
846
  };
520
- readonly value: "${steps['Capture Rejection Reason'].nextDeliveryStatus}";
847
+ readonly value: "${steps['Decide Spend Authorization'].nextChargeAttempts}";
521
848
  };
522
849
  }, {
523
850
  readonly op: {
@@ -530,17 +857,17 @@ export declare const contents: {
530
857
  readonly type: {
531
858
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
532
859
  };
533
- readonly value: "/deliveryError";
860
+ readonly value: "/amountReserved";
534
861
  };
535
862
  readonly val: {
536
863
  readonly type: {
537
864
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
538
865
  };
539
- readonly value: "${steps['Capture Rejection Reason'].nextDeliveryError}";
866
+ readonly value: "${steps['Decide Spend Authorization'].nextAmountReserved}";
540
867
  };
541
868
  }];
542
869
  };
543
- readonly name: "Apply Rejection Update";
870
+ readonly name: "Persist Authorization Decision";
544
871
  readonly type: {
545
872
  readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
546
873
  };
@@ -550,43 +877,33 @@ export declare const contents: {
550
877
  readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
551
878
  };
552
879
  };
553
- readonly reportDeliveryError: {
554
- readonly channel: {
555
- readonly type: {
556
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
557
- };
558
- readonly value: "payNoteDeliverer";
880
+ readonly granteeChannel: {
881
+ readonly description: "Grantee timeline channel (party allowed to use the mandate).";
882
+ readonly type: {
883
+ readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
559
884
  };
560
- readonly request: {
561
- readonly description: "Delivery error reason.";
562
- readonly type: {
563
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
564
- };
885
+ };
886
+ readonly granterChannel: {
887
+ readonly description: "Granting party timeline channel.";
888
+ readonly type: {
889
+ readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
565
890
  };
891
+ };
892
+ readonly guarantorChannel: {
893
+ readonly description: "Bank/admin channel executing mandate checks and settlement updates.";
566
894
  readonly type: {
567
- readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
895
+ readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
568
896
  };
569
897
  };
570
- readonly reportDeliveryErrorImpl: {
571
- readonly operation: {
898
+ readonly initialize: {
899
+ readonly channel: {
572
900
  readonly type: {
573
901
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
574
902
  };
575
- readonly value: "reportDeliveryError";
903
+ readonly value: "initLifecycleChannel";
576
904
  };
577
905
  readonly steps: {
578
906
  readonly items: readonly [{
579
- readonly code: {
580
- readonly type: {
581
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
582
- };
583
- readonly value: "const reason =\n event && event.message ? event.message.request : \"\";\nconst safeReason = typeof reason === \"string\" ? reason : \"\";\n\nreturn {\n reason: safeReason,\n events: [\n {\n type: \"PayNote/PayNote Delivery Failed\",\n reason: safeReason\n }\n ]\n};\n";
584
- };
585
- readonly name: "Capture Delivery Failure Reason";
586
- readonly type: {
587
- readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
588
- };
589
- }, {
590
907
  readonly changeset: {
591
908
  readonly items: readonly [{
592
909
  readonly op: {
@@ -599,67 +916,54 @@ export declare const contents: {
599
916
  readonly type: {
600
917
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
601
918
  };
602
- readonly value: "/deliveryStatus";
603
- };
604
- readonly val: {
605
- readonly type: {
606
- readonly blueId: "Guus3kHbivXvy5G93yhiKs3Pc8sxCc4XVvSo7CqLsQEc";
607
- };
608
- };
609
- }, {
610
- readonly op: {
611
- readonly type: {
612
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
613
- };
614
- readonly value: "replace";
615
- };
616
- readonly path: {
617
- readonly type: {
618
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
619
- };
620
- readonly value: "/deliveryError";
621
- };
622
- readonly val: {
623
- readonly type: {
624
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
625
- };
626
- readonly value: "${steps['Capture Delivery Failure Reason'].reason}";
919
+ readonly value: "/chargeAttempts";
627
920
  };
921
+ readonly val: {};
628
922
  }];
629
923
  };
630
- readonly name: "Apply Delivery Failure";
924
+ readonly name: "Initialize mandate runtime state";
631
925
  readonly type: {
632
926
  readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
633
927
  };
634
928
  }];
635
929
  };
636
930
  readonly type: {
637
- readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
931
+ readonly blueId: "7X3LkN54Yp88JgZbppPhP6hM3Jqiqv8Z2i4kS7phXtQe";
638
932
  };
639
933
  };
640
- readonly updateTransactionIdentificationStatus: {
934
+ readonly initLifecycleChannel: {
935
+ readonly event: {
936
+ readonly type: {
937
+ readonly blueId: "BrpmpNt5JkapeUvPqYcxgXZrHNZX3R757dRwuXXdfNM2";
938
+ };
939
+ };
940
+ readonly type: {
941
+ readonly blueId: "H2aCCTUcLMTJozWkn7HPUjyFBFxamraw1q8DyWk87zxr";
942
+ };
943
+ };
944
+ readonly settleSpend: {
641
945
  readonly channel: {
642
946
  readonly type: {
643
947
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
644
948
  };
645
- readonly value: "payNoteDeliverer";
949
+ readonly value: "guarantorChannel";
646
950
  };
951
+ readonly description: "Apply final reserve/capture deltas for a previously authorized charge attempt.";
647
952
  readonly request: {
648
- readonly description: "True when the transaction is identified.";
649
953
  readonly type: {
650
- readonly blueId: "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u";
954
+ readonly blueId: "6aPqmL9AQV31CCV576ZmEcUgysbdbQAfAig9J5VYeR6v";
651
955
  };
652
956
  };
653
957
  readonly type: {
654
958
  readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
655
959
  };
656
960
  };
657
- readonly updateTransactionIdentificationStatusImpl: {
961
+ readonly settleSpendImpl: {
658
962
  readonly operation: {
659
963
  readonly type: {
660
964
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
661
965
  };
662
- readonly value: "updateTransactionIdentificationStatus";
966
+ readonly value: "settleSpend";
663
967
  };
664
968
  readonly steps: {
665
969
  readonly items: readonly [{
@@ -667,9 +971,9 @@ export declare const contents: {
667
971
  readonly type: {
668
972
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
669
973
  };
670
- readonly value: "const request =\n event && event.message ? event.message.request : null;\nconst identified = request === true;\nconst currentStatus = document('/transactionIdentificationStatus');\nconst canUpdate =\n currentStatus !== \"identified\" && currentStatus !== \"failed\";\nconst identificationStatus = canUpdate\n ? identified\n ? \"identified\"\n : \"failed\"\n : currentStatus;\nconst currentDeliveryStatus =\n document.canonical('/deliveryStatus') || {\n type: \"Conversation/Status Pending\"\n };\nconst deliveryStatus = canUpdate\n ? identified\n ? { type: \"Conversation/Status In Progress\" }\n : { type: \"Conversation/Status Failed\" }\n : currentDeliveryStatus;\nconst currentDeliveryError = document('/deliveryError');\nconst deliveryError = canUpdate\n ? identified\n ? \"\"\n : \"Transaction identification failed\"\n : typeof currentDeliveryError === \"string\"\n ? currentDeliveryError\n : \"\";\nconst eventType = identified\n ? \"PayNote/Transaction Identified\"\n : \"PayNote/Transaction Identification Failed\";\n\nreturn {\n identificationStatus,\n deliveryStatus,\n deliveryError,\n events: canUpdate ? [{ type: eventType }] : []\n};\n";
974
+ readonly value: "const documentCanonical = document.canonical('/');\nconst requestCanonical = eventCanonical\n ? canon.at(eventCanonical, '/message/request')\n : undefined;\n\nconst settledAtNode = requestCanonical\n ? canon.at(requestCanonical, '/settledAt')\n : undefined;\nconst settledAtRaw = settledAtNode ? canon.unwrap(settledAtNode) : '';\nconst settledAt = typeof settledAtRaw === 'string' ? settledAtRaw : '';\nconst nowIso =\n settledAt || (typeof event.timestamp === 'string' ? event.timestamp : '');\n\nconst authorizationIdNode = requestCanonical\n ? canon.at(requestCanonical, '/authorizationId')\n : undefined;\nconst authorizationIdRaw = authorizationIdNode\n ? canon.unwrap(authorizationIdNode)\n : '';\nconst authorizationId =\n typeof authorizationIdRaw === 'string' ? authorizationIdRaw : '';\n\nconst settlementStatusNode = requestCanonical\n ? canon.at(requestCanonical, '/status')\n : undefined;\nconst settlementStatusRaw = settlementStatusNode\n ? canon.unwrap(settlementStatusNode)\n : '';\nconst settlementStatus =\n typeof settlementStatusRaw === 'string' ? settlementStatusRaw : '';\n\nconst reservedDeltaNode = requestCanonical\n ? canon.at(requestCanonical, '/reservedDeltaMinor')\n : undefined;\nconst reservedDeltaRaw = reservedDeltaNode ? canon.unwrap(reservedDeltaNode) : 0;\nconst reservedDeltaMinor =\n typeof reservedDeltaRaw === 'number' ? reservedDeltaRaw : 0;\n\nconst capturedDeltaNode = requestCanonical\n ? canon.at(requestCanonical, '/capturedDeltaMinor')\n : undefined;\nconst capturedDeltaRaw = capturedDeltaNode ? canon.unwrap(capturedDeltaNode) : 0;\nconst capturedDeltaMinor =\n typeof capturedDeltaRaw === 'number' ? capturedDeltaRaw : 0;\n\nconst amountLimitNode = canon.at(documentCanonical, '/amountLimit');\nconst amountLimitRaw = amountLimitNode ? canon.unwrap(amountLimitNode) : 0;\nconst amountLimit = typeof amountLimitRaw === 'number' ? amountLimitRaw : 0;\n\nconst amountReservedNode = canon.at(documentCanonical, '/amountReserved');\nconst amountReservedRaw = amountReservedNode\n ? canon.unwrap(amountReservedNode)\n : 0;\nconst amountReserved =\n typeof amountReservedRaw === 'number' ? amountReservedRaw : 0;\n\nconst amountCapturedNode = canon.at(documentCanonical, '/amountCaptured');\nconst amountCapturedRaw = amountCapturedNode\n ? canon.unwrap(amountCapturedNode)\n : 0;\nconst amountCaptured =\n typeof amountCapturedRaw === 'number' ? amountCapturedRaw : 0;\n\nconst chargeAttemptsNode = canon.at(documentCanonical, '/chargeAttempts');\nconst chargeAttemptsRaw = chargeAttemptsNode\n ? canon.unwrap(chargeAttemptsNode)\n : {};\nconst chargeAttempts =\n chargeAttemptsRaw &&\n typeof chargeAttemptsRaw === 'object' &&\n !Array.isArray(chargeAttemptsRaw)\n ? chargeAttemptsRaw\n : {};\nconst nextChargeAttempts = { ...chargeAttempts };\n\nconst existingAttemptRaw = authorizationId\n ? chargeAttempts[authorizationId]\n : undefined;\nconst existingAttempt =\n existingAttemptRaw &&\n typeof existingAttemptRaw === 'object' &&\n !Array.isArray(existingAttemptRaw)\n ? existingAttemptRaw\n : null;\n\nconst alreadySettled = !!existingAttempt && existingAttempt.settled === true;\nconst approved =\n !!existingAttempt &&\n typeof existingAttempt.authorizationStatus === 'string' &&\n existingAttempt.authorizationStatus === 'approved';\nconst authorizedAmount =\n existingAttempt && typeof existingAttempt.authorizedAmountMinor === 'number'\n ? existingAttempt.authorizedAmountMinor\n : 0;\n\nconst holdIdNode = requestCanonical\n ? canon.at(requestCanonical, '/holdId')\n : undefined;\nconst holdIdRaw = holdIdNode ? canon.unwrap(holdIdNode) : '';\nconst holdId = typeof holdIdRaw === 'string' ? holdIdRaw : '';\n\nconst transactionIdNode = requestCanonical\n ? canon.at(requestCanonical, '/transactionId')\n : undefined;\nconst transactionIdRaw = transactionIdNode\n ? canon.unwrap(transactionIdNode)\n : '';\nconst transactionId =\n typeof transactionIdRaw === 'string' ? transactionIdRaw : '';\n\nconst settlementIdNode = requestCanonical\n ? canon.at(requestCanonical, '/settlementId')\n : undefined;\nconst settlementIdRaw = settlementIdNode\n ? canon.unwrap(settlementIdNode)\n : '';\nconst settlementId =\n typeof settlementIdRaw === 'string' ? settlementIdRaw : '';\n\nconst requestReasonNode = requestCanonical\n ? canon.at(requestCanonical, '/reason')\n : undefined;\nconst requestReasonRaw = requestReasonNode\n ? canon.unwrap(requestReasonNode)\n : '';\nconst requestReason =\n typeof requestReasonRaw === 'string' ? requestReasonRaw : '';\n\nlet status = 'rejected';\nlet reason = '';\nlet nextAmountReserved = amountReserved;\nlet nextAmountCaptured = amountCaptured;\nlet nextAttempt = existingAttempt ? { ...existingAttempt } : null;\n\nif (!authorizationId) {\n reason = 'Missing authorizationId.';\n} else if (alreadySettled) {\n status = 'accepted';\n reason = 'Authorization already settled.';\n} else if (!approved) {\n reason = 'Authorization is not approved.';\n} else if (\n settlementStatus !== 'succeeded' &&\n settlementStatus !== 'failed'\n) {\n reason = 'Unsupported settlement status.';\n} else if (capturedDeltaMinor < 0) {\n reason = 'capturedDeltaMinor cannot be negative.';\n} else if (\n settlementStatus === 'failed' &&\n capturedDeltaMinor !== 0\n) {\n reason = 'capturedDeltaMinor must be 0 for failed settlement.';\n} else if (capturedDeltaMinor > authorizedAmount) {\n reason = 'capturedDeltaMinor exceeds authorized amount.';\n} else {\n const candidateAmountReserved = amountReserved + reservedDeltaMinor;\n const candidateAmountCaptured = amountCaptured + capturedDeltaMinor;\n const candidateUsed = candidateAmountReserved + candidateAmountCaptured;\n\n if (candidateAmountReserved < 0) {\n reason = 'Settlement would make amountReserved negative.';\n } else if (candidateAmountCaptured < 0) {\n reason = 'Settlement would make amountCaptured negative.';\n } else if (candidateUsed > amountLimit) {\n reason = 'Settlement would exceed amountLimit.';\n } else {\n status = 'accepted';\n nextAmountReserved = candidateAmountReserved;\n nextAmountCaptured = candidateAmountCaptured;\n nextAttempt = { ...existingAttempt };\n nextAttempt.settled = true;\n nextAttempt.lastSettlementRequestStatus = settlementStatus;\n nextAttempt.lastSettlementProcessingStatus = 'accepted';\n nextAttempt.settlementReason = requestReason;\n nextAttempt.settlementRespondedAt = nowIso;\n nextAttempt.reservedDeltaMinor = reservedDeltaMinor;\n nextAttempt.capturedDeltaMinor = capturedDeltaMinor;\n nextAttempt.holdId = holdId;\n nextAttempt.transactionId = transactionId;\n nextAttempt.lastSettlementId = settlementId;\n nextChargeAttempts[authorizationId] = nextAttempt;\n }\n}\n\nif (nextAttempt && status === 'rejected') {\n nextAttempt = { ...nextAttempt };\n nextAttempt.lastSettlementRequestStatus = settlementStatus;\n nextAttempt.lastSettlementProcessingStatus = 'rejected';\n nextAttempt.settlementReason = reason;\n nextAttempt.settlementRespondedAt = nowIso;\n nextAttempt.lastSettlementId = settlementId;\n nextChargeAttempts[authorizationId] = nextAttempt;\n}\n\nconst responseEvent = {\n type: 'PayNote/Payment Mandate Spend Settlement Responded',\n authorizationId,\n settlementId,\n status,\n amountReserved: nextAmountReserved,\n amountCaptured: nextAmountCaptured,\n respondedAt: nowIso\n};\n\nif (reason) {\n responseEvent.reason = reason;\n}\n\nreturn {\n nextChargeAttempts: nextChargeAttempts,\n nextAmountReserved: nextAmountReserved,\n nextAmountCaptured: nextAmountCaptured,\n events: [responseEvent]\n};\n";
671
975
  };
672
- readonly name: "Classify Identification Result";
976
+ readonly name: "Validate and Apply Settlement";
673
977
  readonly type: {
674
978
  readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
675
979
  };
@@ -686,13 +990,13 @@ export declare const contents: {
686
990
  readonly type: {
687
991
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
688
992
  };
689
- readonly value: "/transactionIdentificationStatus";
993
+ readonly value: "/chargeAttempts";
690
994
  };
691
995
  readonly val: {
692
996
  readonly type: {
693
997
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
694
998
  };
695
- readonly value: "${steps['Classify Identification Result'].identificationStatus}";
999
+ readonly value: "${steps['Validate and Apply Settlement'].nextChargeAttempts}";
696
1000
  };
697
1001
  }, {
698
1002
  readonly op: {
@@ -705,13 +1009,13 @@ export declare const contents: {
705
1009
  readonly type: {
706
1010
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
707
1011
  };
708
- readonly value: "/deliveryStatus";
1012
+ readonly value: "/amountReserved";
709
1013
  };
710
1014
  readonly val: {
711
1015
  readonly type: {
712
1016
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
713
1017
  };
714
- readonly value: "${steps['Classify Identification Result'].deliveryStatus}";
1018
+ readonly value: "${steps['Validate and Apply Settlement'].nextAmountReserved}";
715
1019
  };
716
1020
  }, {
717
1021
  readonly op: {
@@ -724,17 +1028,17 @@ export declare const contents: {
724
1028
  readonly type: {
725
1029
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
726
1030
  };
727
- readonly value: "/deliveryError";
1031
+ readonly value: "/amountCaptured";
728
1032
  };
729
1033
  readonly val: {
730
1034
  readonly type: {
731
1035
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
732
1036
  };
733
- readonly value: "${steps['Classify Identification Result'].deliveryError}";
1037
+ readonly value: "${steps['Validate and Apply Settlement'].nextAmountCaptured}";
734
1038
  };
735
1039
  }];
736
1040
  };
737
- readonly name: "Apply Identification Update";
1041
+ readonly name: "Persist Settlement";
738
1042
  readonly type: {
739
1043
  readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
740
1044
  };
@@ -742,322 +1046,158 @@ export declare const contents: {
742
1046
  };
743
1047
  readonly type: {
744
1048
  readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
745
- };
746
- };
747
- };
748
- readonly deliveryError: {
749
- readonly description: "Error message when delivery fails.";
750
- readonly type: {
751
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
752
- };
753
- };
754
- readonly deliveryStatus: {
755
- readonly description: "High-level delivery status.";
756
- readonly type: {
757
- readonly blueId: "58B8orsFkxxy7bWqjLXJmtBs2b5rwnNQNbeoAbGhPkJc";
758
- };
759
- };
760
- readonly description: "Tracks delivery of a PayNote through a deliverer (e.g., bank) to a receiver (payer - client).";
761
- readonly name: "PayNote Delivery";
762
- readonly paymentMandateBootstrapRequest: {
763
- readonly description: "Optional Payment Mandate bootstrap request details for Delivery flows that require mandate attachment before proposal exposure.";
764
- readonly document: {
765
- readonly type: {
766
- readonly blueId: "Cb8EjAE531e9RVa9RgFJzKmN9h6z8Xp3tAYaBFgqfHoP";
767
- };
768
- };
769
- readonly type: {
770
- readonly blueId: "7JqBn4KcmZbHBBiQf3CAfpHBNaTKS1qhtkATsF7f6Sxg";
771
- };
772
- };
773
- readonly payNoteBootstrapRequest: {
774
- readonly description: "PayNote bootstrap request details.";
775
- readonly document: {
776
- readonly type: {
777
- readonly blueId: "Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F";
778
- };
779
- };
780
- readonly type: {
781
- readonly blueId: "7JqBn4KcmZbHBBiQf3CAfpHBNaTKS1qhtkATsF7f6Sxg";
782
- };
783
- };
784
- readonly transactionIdentificationStatus: {
785
- readonly description: "Identification state (pending, identified, failed).";
786
- readonly type: {
787
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
788
- };
789
- };
790
- };
791
- readonly '2wqxtvdRHf7Z3qNNKnycnu3SBVqw4BenK8et9xeT7n86': {
792
- readonly cardTransactionDetails: {
793
- readonly type: {
794
- readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
1049
+ };
795
1050
  };
796
1051
  };
797
- readonly description: "PayNote tied to a specific card transaction via ISO scheme identifiers.";
798
- readonly name: "Card Transaction PayNote";
799
- readonly type: {
800
- readonly blueId: "Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F";
801
- };
802
- };
803
- readonly '3b3ePGPg5GzS6KYfqoDfgjWbjccXVnGzytbpFS53x4HM': {
804
- readonly description: "The Guarantor rejects the proposed settlement amount.";
805
- readonly name: "Settlement Amount Rejected";
806
- readonly reason: {
1052
+ readonly currency: {
1053
+ readonly description: "Currency code used for amountLimit validation.";
807
1054
  readonly type: {
808
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1055
+ readonly blueId: "CBnZ7aaNetj9KEqXpUWj5jvjKbmviLivP98T2EiyxiYc";
809
1056
  };
810
1057
  };
811
- readonly type: {
812
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
813
- };
814
- };
815
- readonly '3TW3tRAQdYoMTFeeqmnWLR9JFibTVaJuiRJfJ3ggeVTJ': {
816
- readonly capturedDeltaMinor: {
817
- readonly description: "Net change to amountCaptured in minor units. Positive for successful capture.\n";
1058
+ readonly description: "Payment mandate authorizing a grantee to execute payment requests on behalf of a granter, under explicit limits, with deterministic spend tracking and optional linked PayNote bootstrap rules.\n";
1059
+ readonly expiresAt: {
1060
+ readonly description: "Optional mandate expiry timestamp.";
818
1061
  readonly type: {
819
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1062
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
820
1063
  };
821
1064
  };
822
- readonly chargeAttemptId: {
823
- readonly description: "Correlation key copied from Payment Mandate Spend Authorization Requested.";
1065
+ readonly granteeId: {
1066
+ readonly description: "Identifier interpreted according to granteeType.";
824
1067
  readonly type: {
825
1068
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
826
1069
  };
827
1070
  };
828
- readonly description: "Settlement update sent by bank to Payment Mandate after charge execution, used to apply deterministic reserved/captured deltas in mandate state. For approved authorizations, mandate may already reserve capacity at authorize step. Deltas should express net post-execution adjustment from current mandate state.\n";
829
- readonly holdId: {
830
- readonly description: "Optional hold id produced by banking execution.";
1071
+ readonly granteeType: {
1072
+ readonly description: "Party allowed to invoke this mandate:\n- documentId\n- merchantId\n- customerId\n";
831
1073
  readonly type: {
832
1074
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
833
1075
  };
834
1076
  };
835
- readonly name: "Payment Mandate Spend Settled";
836
- readonly reason: {
837
- readonly description: "Optional failure reason.";
1077
+ readonly granterId: {
1078
+ readonly description: "Identifier of the granting party:\n- merchantId when granterType is merchant\n- customerId (bank user id) when granterType is customer\n";
838
1079
  readonly type: {
839
1080
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
840
1081
  };
841
1082
  };
842
- readonly reservedDeltaMinor: {
843
- readonly description: "Net change to amountReserved in minor units. Positive for new reserve, negative for release/capture settlement. For authorize-only success this is typically 0 when authorization already reserved capacity.\n";
1083
+ readonly granterType: {
1084
+ readonly description: "Party granting authority to use funds:\n- merchant\n- customer\n";
844
1085
  readonly type: {
845
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1086
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
846
1087
  };
847
1088
  };
848
- readonly settledAt: {
849
- readonly description: "Timestamp when settlement result was emitted.";
1089
+ readonly name: "Payment Mandate";
1090
+ readonly revokedAt: {
1091
+ readonly description: "Optional revocation timestamp. When set, mandate is inactive.";
850
1092
  readonly type: {
851
1093
  readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
852
1094
  };
853
1095
  };
854
- readonly status: {
855
- readonly description: "Settlement status (\"succeeded\" | \"failed\").";
856
- readonly type: {
857
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
858
- };
859
- };
860
- readonly transactionId: {
861
- readonly description: "Optional transaction id produced by banking execution.";
1096
+ readonly sourceAccount: {
1097
+ readonly description: "Funds source to use when this mandate executes: - root (uses root account context; for merchant this maps to active credit line) - specific account number\n";
862
1098
  readonly type: {
863
1099
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
864
1100
  };
865
1101
  };
866
- readonly type: {
867
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
868
- };
869
- };
870
- readonly '3XstDYFkqsUP5PdM6Z6mwspPzgdQMFtUpNyMsKPK2o6N': {
871
- readonly amount: {
872
- readonly type: {
873
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
874
- };
875
- };
876
- readonly description: "Equivalent of Reserve Funds Requested + Capture Funds Requested";
877
- readonly name: "Reserve Funds and Capture Immediately Requested";
878
- readonly type: {
879
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
880
- };
881
1102
  };
882
- readonly '3Y3TYmSfZMmPYKmF5i3eR8YcVPNP5Sic2bZN8xRnvMWm': {
883
- readonly amount: {
1103
+ readonly BQioEtRPYv2fWVryRsSYQc1Vnp9eyX3CYDrNY1hEy1Ye: {
1104
+ readonly description: "Decision response for starting a linked PayNote after successful charge.";
1105
+ readonly name: "Linked PayNote Start Responded";
1106
+ readonly reason: {
1107
+ readonly description: "Optional rejection reason.";
884
1108
  readonly type: {
885
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1109
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
886
1110
  };
887
1111
  };
888
- readonly description: "A participant requests the Guarantor to reserve (hold) a specific amount.";
889
- readonly name: "Reserve Funds Requested";
890
- readonly type: {
891
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
892
- };
893
- };
894
- readonly '49TYrHpnk2gepJiGduJP3afrnT2DJ6kDxqF4Y9M4C4t7': {
895
- readonly description: "Payment Mandate was successfully attached to the PayNote context.";
896
- readonly name: "Payment Mandate Attached";
897
- readonly paymentMandateDocumentId: {
898
- readonly description: "Document id of the attached Payment Mandate.";
1112
+ readonly status: {
1113
+ readonly description: "Decision status (\"accepted\" | \"rejected\").";
899
1114
  readonly type: {
900
1115
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
901
1116
  };
902
1117
  };
903
1118
  readonly type: {
904
- readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1119
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
905
1120
  };
906
1121
  };
907
- readonly '4pVAdZo93FHRRkAkshqCZW4pUvvV1ccczJZ2Lu4jkD1D': {
908
- readonly description: "The Guarantor confirms the final settlement amount, which may differ from the initial total.";
909
- readonly finalAmount: {
1122
+ readonly BVLMcTzag3D2rvg8LoKQ3Htgoqsh77EAoiTLTxH5aVBE: {
1123
+ readonly description: "The Payer requests to assign or change the Payee.";
1124
+ readonly name: "Payee Assignment Requested";
1125
+ readonly payeeEmail: {
910
1126
  readonly type: {
911
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1127
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
912
1128
  };
913
1129
  };
914
- readonly name: "Settlement Amount Specified";
915
1130
  readonly type: {
916
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1131
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
917
1132
  };
918
1133
  };
919
- readonly '4STBHLJjxjCZVgeW2ScFfmsx8Vm16FenEbaNMyL8ZJUT': {
920
- readonly amountMinor: {
921
- readonly description: "Requested amount in minor currency units.";
922
- readonly type: {
923
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
924
- };
925
- };
926
- readonly chargeAttemptId: {
927
- readonly description: "Correlation and idempotency key for a single charge attempt. Must be stable across retries of the same attempt.\n";
928
- readonly type: {
929
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
930
- };
931
- };
932
- readonly chargeMode: {
933
- readonly description: "Requested charge execution mode (\"authorize_only\" | \"authorize_and_capture\").";
934
- readonly type: {
1134
+ readonly BYdTyyLphWQNKo1GBcnE1jQuaPyXexNnfzkXhMiRqmUr: {
1135
+ readonly events: {
1136
+ readonly itemType: {
935
1137
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
936
1138
  };
937
- };
938
- readonly counterpartyId: {
939
- readonly description: "Counterparty identifier interpreted according to counterpartyType.";
940
1139
  readonly type: {
941
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1140
+ readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
942
1141
  };
943
1142
  };
944
- readonly counterpartyType: {
945
- readonly description: "Counterparty identifier type (\"merchantId\" | \"customerId\" | \"accountNumber\").";
1143
+ readonly name: "Card Transaction Monitoring Stopped";
1144
+ readonly reason: {
946
1145
  readonly type: {
947
1146
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
948
1147
  };
949
1148
  };
950
- readonly currency: {
951
- readonly description: "Currency used to validate amountMinor against mandate limits.";
952
- readonly type: {
953
- readonly blueId: "CBnZ7aaNetj9KEqXpUWj5jvjKbmviLivP98T2EiyxiYc";
954
- };
955
- };
956
- readonly description: "Bank asks a Payment Mandate document to authorize a single charge attempt before reserve/capture execution.\n";
957
- readonly name: "Payment Mandate Spend Authorization Requested";
958
- readonly requestedAt: {
959
- readonly description: "Timestamp when the authorization request was created.";
960
- readonly type: {
961
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
962
- };
963
- };
964
- readonly requestingDocumentId: {
965
- readonly description: "Document id that requested the charge.";
1149
+ readonly stoppedAt: {
966
1150
  readonly type: {
967
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1151
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
968
1152
  };
969
1153
  };
970
- readonly requestingSessionId: {
971
- readonly description: "Session id that requested the charge.";
1154
+ readonly targetMerchantId: {
972
1155
  readonly type: {
973
1156
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
974
1157
  };
975
1158
  };
976
1159
  readonly type: {
977
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1160
+ readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
978
1161
  };
979
1162
  };
980
- readonly '4xS8bmZQBGPENmaPfsrtYguYfq4hTtaZAXrefdyFNkKq': {
981
- readonly description: "The Guarantor could not reserve the requested funds.";
982
- readonly name: "Reservation Declined";
983
- readonly reason: {
1163
+ readonly CFoaaYn29o7Mg7VaN7bkM87KrfE8fvnVYWkGXd6YnQ7S: {
1164
+ readonly description: "Decision response for a card charge request.";
1165
+ readonly name: "Card Charge Responded";
1166
+ readonly paymentMandateDocumentId: {
1167
+ readonly description: "Payment Mandate document id used for this charge decision when available.";
984
1168
  readonly type: {
985
1169
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
986
1170
  };
987
1171
  };
988
- readonly type: {
989
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
990
- };
991
- };
992
- readonly '531sxtH5rD9ter3EzwBTcn9GMdA7RAYFwmSQRzxCru8z': {
993
- readonly cardTransactionDetails: {
1172
+ readonly reason: {
1173
+ readonly description: "Optional explanation for rejected or pending decisions.";
994
1174
  readonly type: {
995
- readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
996
- };
997
- };
998
- readonly description: "Request to the card issuer to process any following card transaction capture requests.";
999
- readonly name: "Card Transaction Capture Unlock Requested";
1000
- readonly type: {
1001
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1002
- };
1003
- };
1004
- readonly '53Dir2sGy1NHuCQXF6suGoDMxYacNhbcy23AKD89SghD': {
1005
- readonly childPayNote: {
1006
- readonly description: "Complete PayNote";
1007
- };
1008
- readonly description: "The Payer requests to issue a new PayNote.\nThe requested PayNote must have amount/total specified and in the same currency as this PayNote.\nIf approved by Guarator, amount/total of this PayNote will be deducted by this value.\nIf child PayNote is later cancelled, or captured value is smaller than the total, the funds will be added back to amount/total.\n";
1009
- readonly name: "Issue Child PayNote Requested";
1010
- readonly type: {
1011
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1012
- };
1013
- };
1014
- readonly '649PKUqAakwi2JwDwHyypfWb4VmrrBAeEqzSU6FDWfgm': {
1015
- readonly description: "Request to start monitoring card events for a target merchant.";
1016
- readonly events: {
1017
- readonly description: "Requested card event categories.\nFor now:\n- transaction\n";
1018
- readonly itemType: {
1019
1175
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1020
1176
  };
1021
- readonly type: {
1022
- readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
1023
- };
1024
- };
1025
- readonly name: "Start Card Transaction Monitoring Requested";
1026
- readonly requestedAt: {
1027
- readonly description: "Timestamp (microseconds since epoch).";
1028
- readonly type: {
1029
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1030
- };
1031
1177
  };
1032
- readonly targetMerchantId: {
1178
+ readonly status: {
1179
+ readonly description: "Request decision status (\"accepted\" | \"rejected\" | \"pending\").";
1033
1180
  readonly type: {
1034
1181
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1035
1182
  };
1036
1183
  };
1037
1184
  readonly type: {
1038
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1185
+ readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1039
1186
  };
1040
1187
  };
1041
- readonly '653sCbbRH3RiKhGjmVxh6wFVs4rn54wJRKDXRMKBZtjA': {
1042
- readonly description: "The Guarantor failed to release the reserved funds.";
1043
- readonly name: "Reservation Release Declined";
1044
- readonly reason: {
1188
+ readonly CFqiZigjKE5JatANkaAkWw2NbgvEmb2BVEVPf3ckUrWg: {
1189
+ readonly amountReleased: {
1045
1190
  readonly type: {
1046
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1191
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1047
1192
  };
1048
1193
  };
1194
+ readonly description: "The Guarantor confirms that previously reserved funds have been released.";
1195
+ readonly name: "Reservation Released";
1049
1196
  readonly type: {
1050
1197
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1051
1198
  };
1052
1199
  };
1053
- readonly '6gQWKeJHZEbBo13Vvyf2nsdg7TA9kLSYdzMaJgySPG7V': {
1054
- readonly description: "The deliverer identified the card transaction.";
1055
- readonly name: "Transaction Identified";
1056
- readonly type: {
1057
- readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1058
- };
1059
- };
1060
- readonly '6P1iVKFwG9jgWV7Ye3Co6pWByuu5QpR4tpqu9oVVvawY': {
1200
+ readonly CoGAMipt8rhmnkMgKsyZ5aendkHvFc4muC6pVgrUT1rJ: {
1061
1201
  readonly amountCaptured: {
1062
1202
  readonly description: "Current mandate amountCaptured after applying (or rejecting) settlement.";
1063
1203
  readonly type: {
@@ -1070,7 +1210,7 @@ export declare const contents: {
1070
1210
  readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1071
1211
  };
1072
1212
  };
1073
- readonly chargeAttemptId: {
1213
+ readonly authorizationId: {
1074
1214
  readonly description: "Correlation key copied from Payment Mandate Spend Settled.";
1075
1215
  readonly type: {
1076
1216
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
@@ -1090,6 +1230,12 @@ export declare const contents: {
1090
1230
  readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1091
1231
  };
1092
1232
  };
1233
+ readonly settlementId: {
1234
+ readonly description: "Optional settlement correlation id copied from settlement request.";
1235
+ readonly type: {
1236
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1237
+ };
1238
+ };
1093
1239
  readonly status: {
1094
1240
  readonly description: "Settlement processing status (\"accepted\" | \"rejected\").";
1095
1241
  readonly type: {
@@ -1100,43 +1246,35 @@ export declare const contents: {
1100
1246
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1101
1247
  };
1102
1248
  };
1103
- readonly '6vnMMWuq6qJ1hxLqL1P2ckCqC9JtJF3QNW8s7rMTgZ4Q': {
1104
- readonly description: "Confirmation that linked PayNote startup was requested successfully.";
1105
- readonly name: "Linked PayNote Started";
1106
- readonly payNoteDocumentId: {
1107
- readonly description: "Document id of the bootstrapped linked PayNote when available.";
1108
- readonly type: {
1109
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1110
- };
1111
- };
1112
- readonly payNoteSessionId: {
1113
- readonly description: "Session id of the bootstrapped linked PayNote document.";
1249
+ readonly Da7ZSyWgvMyTfwDVhAgCkGf3H8dwHhouHsHgNzg3DZ2j: {
1250
+ readonly decision: {
1251
+ readonly description: "Attempted decision (accepted or rejected).";
1114
1252
  readonly type: {
1115
1253
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1116
1254
  };
1117
1255
  };
1118
- readonly type: {
1119
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1120
- };
1121
- };
1122
- readonly '6VQC585V4SdpyA5hCeQQGM178bbeW3D2WcKt8ZCWK9s3': {
1123
- readonly acceptedAt: {
1124
- readonly description: "Timestamp when the client accepted.";
1256
+ readonly decisionAt: {
1257
+ readonly description: "Timestamp provided with the decision, if any.";
1125
1258
  readonly type: {
1126
1259
  readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1127
1260
  };
1128
1261
  };
1129
- readonly description: "The client accepted the PayNote.";
1130
- readonly name: "PayNote Accepted By Client";
1262
+ readonly description: "The client's decision was discarded because it could not be applied in the current delivery state.";
1263
+ readonly name: "PayNote Client Decision Discarded";
1264
+ readonly reason: {
1265
+ readonly description: "Validation reason for discarding the decision.";
1266
+ readonly type: {
1267
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1268
+ };
1269
+ };
1131
1270
  readonly type: {
1132
1271
  readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1133
1272
  };
1134
1273
  };
1135
- readonly '8dggwonfALwrTSRhg8g8ncXFXierke2mogtEZQXHab64': {
1136
- readonly description: "Linked PayNote startup failed after charge processing.";
1137
- readonly name: "Linked PayNote Start Failed";
1274
+ readonly DFKVw43E36kimqj64FyiiVxE9yNuB22SETFx5M4WAi9m: {
1275
+ readonly description: "The Guarantor declined the request to issue a Child PayNote.";
1276
+ readonly name: "Child PayNote Issuance Declined";
1138
1277
  readonly reason: {
1139
- readonly description: "Failure reason.";
1140
1278
  readonly type: {
1141
1279
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1142
1280
  };
@@ -1145,309 +1283,555 @@ export declare const contents: {
1145
1283
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1146
1284
  };
1147
1285
  };
1148
- readonly '8qdhLemMQ5MFtu9Aebpd9gKfKuLuRBEnT6yTTzr9F78E': {
1149
- readonly chargeAttemptId: {
1150
- readonly description: "Correlation key copied from Payment Mandate Spend Authorization Requested.";
1151
- readonly type: {
1152
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1286
+ readonly Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F: {
1287
+ readonly amount: {
1288
+ readonly captured: {
1289
+ readonly description: "The amount that has been successfully captured.";
1290
+ readonly type: {
1291
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1292
+ };
1293
+ };
1294
+ readonly description: "The amounts associated with this PayNote.";
1295
+ readonly reserved: {
1296
+ readonly description: "The amount currently reserved by the Guarantor.";
1297
+ readonly type: {
1298
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1299
+ };
1300
+ };
1301
+ readonly total: {
1302
+ readonly description: "The maximum total value of this PayNote.";
1303
+ readonly type: {
1304
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1305
+ };
1153
1306
  };
1154
1307
  };
1155
- readonly description: "Decision from Payment Mandate for a spend authorization request.";
1156
- readonly name: "Payment Mandate Spend Authorization Responded";
1157
- readonly reason: {
1158
- readonly description: "Optional rejection reason.";
1159
- readonly type: {
1160
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1308
+ readonly contracts: {
1309
+ readonly guarantorChannel: {
1310
+ readonly type: {
1311
+ readonly blueId: "EvuCWsG1E6WJQg8QXmk6rwMANYTZjoLWVZ1vYQWUwdTH";
1312
+ };
1313
+ };
1314
+ readonly guarantorUpdate: {
1315
+ readonly channel: {
1316
+ readonly type: {
1317
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1318
+ };
1319
+ readonly value: "guarantorChannel";
1320
+ };
1321
+ readonly description: "Standard operation used by the guarantor (bank) to deliver events into the document.";
1322
+ readonly type: {
1323
+ readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
1324
+ };
1325
+ };
1326
+ readonly guarantorUpdateImpl: {
1327
+ readonly description: "Re-emits provided events (MyOS-admin style).";
1328
+ readonly operation: {
1329
+ readonly type: {
1330
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1331
+ };
1332
+ readonly value: "guarantorUpdate";
1333
+ };
1334
+ readonly steps: {
1335
+ readonly items: readonly [{
1336
+ readonly code: {
1337
+ readonly type: {
1338
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1339
+ };
1340
+ readonly value: "return { events: event.message.request };\n";
1341
+ };
1342
+ readonly name: "EmitGuarantorEvents";
1343
+ readonly type: {
1344
+ readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
1345
+ };
1346
+ }];
1347
+ };
1348
+ readonly type: {
1349
+ readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1350
+ };
1351
+ };
1352
+ readonly payeeChannel: {
1353
+ readonly type: {
1354
+ readonly blueId: "EvuCWsG1E6WJQg8QXmk6rwMANYTZjoLWVZ1vYQWUwdTH";
1355
+ };
1356
+ };
1357
+ readonly payerChannel: {
1358
+ readonly type: {
1359
+ readonly blueId: "EvuCWsG1E6WJQg8QXmk6rwMANYTZjoLWVZ1vYQWUwdTH";
1360
+ };
1161
1361
  };
1162
1362
  };
1163
- readonly remainingAmountMinor: {
1164
- readonly description: "Optional remaining mandate capacity in minor currency units after decision.";
1363
+ readonly currency: {
1364
+ readonly description: "The ISO 4217 currency code for the transaction.";
1165
1365
  readonly type: {
1166
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1366
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1167
1367
  };
1168
1368
  };
1169
- readonly respondedAt: {
1170
- readonly description: "Timestamp when the decision was emitted.";
1171
- readonly type: {
1172
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1369
+ readonly description: "A verifiable instrument for managing a commitment of value between a Payer, Payee, and Guarantor.";
1370
+ readonly name: "PayNote";
1371
+ readonly payNoteInitialStateDescription: {
1372
+ readonly details: {
1373
+ readonly description: "Complete text description of the PayNote, with everything significant explained.\nMarkdown format suggested.\n";
1374
+ readonly type: {
1375
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1376
+ };
1377
+ };
1378
+ readonly summary: {
1379
+ readonly description: "General information about the PayNote. It should capture the most important\ninformation, most critical or non-standard elements should be covered here.\nMarkdown format suggested.\n";
1380
+ readonly type: {
1381
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1382
+ };
1173
1383
  };
1174
1384
  };
1175
1385
  readonly status: {
1176
- readonly description: "Decision status (\"approved\" | \"rejected\").";
1386
+ readonly description: "The current state of the PayNote (e.g., Pending, Approved, Reserved, Captured, Released, Rejected).";
1177
1387
  readonly type: {
1178
1388
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1179
1389
  };
1180
1390
  };
1181
- readonly type: {
1182
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1391
+ readonly transactionStatus: {
1392
+ readonly description: "Optional status snapshot. If present in proposal, bank validates it; if missing bank sets it at bootstrap.";
1393
+ readonly type: {
1394
+ readonly blueId: "FutWoAEUEb3wkmEm4YP4JGFPtu3B3PQ3m71BmnRFFnsQ";
1395
+ };
1183
1396
  };
1184
1397
  };
1185
- readonly '96buyUXwhkak8xKoCR5nAW9tMuwzkevJFdELVvwKxR6Y': {
1186
- readonly description: "The Guarantor confirms PayNote cancellation requested by Payer.";
1187
- readonly name: "PayNote Cancelled";
1188
- readonly type: {
1189
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1398
+ readonly DhxGBjA6Gow9E6ZKZ49SdziihHZ4PeXxFNatSqmesKZu: {
1399
+ readonly cardTransactionDetails: {
1400
+ readonly type: {
1401
+ readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
1402
+ };
1190
1403
  };
1191
- };
1192
- readonly '9dJ3W19EJ8MqtTJR8oidX8eRrkeB8xNQyqeTZeqBHZjo': {
1193
- readonly description: "Base PayNote where payer is merchant and payee is customer. Bank sets/validates payer channel bindings.";
1194
- readonly name: "Merchant To Customer PayNote";
1404
+ readonly description: "Request to the card issuer to deny any following card transaction capture requests.";
1405
+ readonly name: "Card Transaction Capture Lock Requested";
1195
1406
  readonly type: {
1196
- readonly blueId: "Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F";
1407
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1197
1408
  };
1198
1409
  };
1199
- readonly AdKfkwRfzRUxUKSzhRfYANsaUBNnz4u6JFWR66qhzyZe: {
1200
- readonly description: "The Guarantor denies the creation of the PayNote.";
1201
- readonly name: "PayNote Rejected";
1202
- readonly reason: {
1203
- readonly type: {
1204
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1205
- };
1206
- };
1410
+ readonly DiowRXdCBw83YCn5Pwcg2YABaVQZ1p4Wk1L9DJfajqp5: {
1411
+ readonly description: "Card transaction capture was unlocked. Any following card transaction capture requests will be processed.";
1412
+ readonly name: "Card Transaction Capture Unlocked";
1207
1413
  readonly type: {
1208
1414
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1209
1415
  };
1210
- };
1211
- readonly AopfdGqnwcxsw4mJzXbmjDMnASRtkce9BZB1n6QSRNXX: {
1212
- readonly amountReserved: {
1416
+ readonly unlockedAt: {
1417
+ readonly description: "Timestamp of when the card transaction capture was unlocked.";
1213
1418
  readonly type: {
1214
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1419
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1215
1420
  };
1216
1421
  };
1217
- readonly description: "The Guarantor confirms that funds have been successfully reserved (held).";
1218
- readonly name: "Funds Reserved";
1422
+ };
1423
+ readonly DqiwzsNLbHCh6PaDF6wy6ZqBSF5JV5nAQSKFKTPRTbGB: {
1424
+ readonly childPayNote: {
1425
+ readonly description: "Complete PayNote";
1426
+ };
1427
+ readonly description: "The Payer requests to cancel PayNote that is Approved but not yet\nReserved or Captured.\n";
1428
+ readonly name: "PayNote Cancellation Requested";
1219
1429
  readonly type: {
1220
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1430
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1221
1431
  };
1222
1432
  };
1223
- readonly Aq4dNFtLHLWYfCS7aqAgWwGi48MgbQmp2EZJtDBN7FSg: {
1433
+ readonly DvxKVEFsDmgA1hcBDfh7t42NgTRLaxXjCrB48DufP3i3: {
1224
1434
  readonly amount: {
1225
- readonly description: "Charge amount in minor currency units.";
1226
1435
  readonly type: {
1227
1436
  readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1228
1437
  };
1229
1438
  };
1230
- readonly description: "Request to create a new card charge linked to the root card transaction context.";
1231
- readonly name: "Linked Card Charge Requested";
1232
- readonly paymentMandateDocumentId: {
1233
- readonly description: "Optional Payment Mandate document id used to authorize charge execution.";
1234
- readonly type: {
1235
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1236
- };
1237
- };
1238
- readonly paynote: {
1239
- readonly description: "Optional PayNote document to bootstrap for the created charge context.";
1240
- };
1439
+ readonly description: "A participant (usually the Payee) requests the final transfer of funds.";
1440
+ readonly name: "Capture Funds Requested";
1241
1441
  readonly type: {
1242
1442
  readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1243
1443
  };
1244
1444
  };
1245
- readonly B2iherBskP5f4x7x31GahNmsJtyzian6ZN92b8kE1E5q: {
1246
- readonly description: "Notification that card transaction monitoring was rejected.";
1247
- readonly events: {
1248
- readonly itemType: {
1249
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1250
- };
1251
- readonly type: {
1252
- readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
1253
- };
1254
- };
1255
- readonly name: "Card Transaction Monitoring Request Rejected";
1445
+ readonly EGRRGwNnReqfQQhKnML28DWz9MvvC3B5JgbBrCUxrZ3G: {
1446
+ readonly description: "The client rejected the PayNote.";
1447
+ readonly name: "PayNote Rejected By Client";
1256
1448
  readonly reason: {
1257
- readonly description: "Reason monitoring was rejected.";
1449
+ readonly description: "Optional rejection reason.";
1258
1450
  readonly type: {
1259
1451
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1260
1452
  };
1261
1453
  };
1262
1454
  readonly rejectedAt: {
1263
- readonly description: "Timestamp (microseconds since epoch) when monitoring was rejected.";
1264
- readonly type: {
1265
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1266
- };
1267
- };
1268
- readonly targetMerchantId: {
1269
- readonly description: "External merchant identifier requested for monitoring.";
1455
+ readonly description: "Timestamp when the client rejected.";
1270
1456
  readonly type: {
1271
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1457
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1272
1458
  };
1273
1459
  };
1274
1460
  readonly type: {
1275
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1461
+ readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1276
1462
  };
1277
1463
  };
1278
- readonly BJvjorbC5ed5KTV7SxoV3CvrJXjrFPcFxY9QT4jHBbXi: {
1279
- readonly amountCaptured: {
1464
+ readonly EXoQHkYEDQdhGd3AeXBryzxmCTXsvTjXTfZmjwuqqbHt: {
1465
+ readonly description: "Card transaction capture was locked. Any following card transaction capture requests will be rejected.";
1466
+ readonly lockedAt: {
1467
+ readonly description: "Timestamp of when the card transaction capture was locked.";
1280
1468
  readonly type: {
1281
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1469
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1282
1470
  };
1283
1471
  };
1284
- readonly description: "The Guarantor confirms that funds have been successfully transferred to the Payee.";
1285
- readonly name: "Funds Captured";
1472
+ readonly name: "Card Transaction Capture Locked";
1286
1473
  readonly type: {
1287
1474
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1288
1475
  };
1289
1476
  };
1290
- readonly BQioEtRPYv2fWVryRsSYQc1Vnp9eyX3CYDrNY1hEy1Ye: {
1291
- readonly description: "Decision response for starting a linked PayNote after successful charge.";
1292
- readonly name: "Linked PayNote Start Responded";
1293
- readonly reason: {
1294
- readonly description: "Optional rejection reason.";
1477
+ readonly F4gfZeY8P8dkfwNSbEfq7xQ8axiHdfqgzGQQr3HLDyzC: {
1478
+ readonly amount: {
1479
+ readonly description: "Charge amount in minor currency units.";
1295
1480
  readonly type: {
1296
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1481
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1297
1482
  };
1298
1483
  };
1299
- readonly status: {
1300
- readonly description: "Decision status (\"accepted\" | \"rejected\").";
1484
+ readonly description: "Request to create a reverse-direction card charge and capture it immediately.";
1485
+ readonly name: "Reverse Card Charge and Capture Immediately Requested";
1486
+ readonly paymentMandateDocumentId: {
1487
+ readonly description: "Optional Payment Mandate document id used to authorize charge execution.";
1301
1488
  readonly type: {
1302
1489
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1303
1490
  };
1304
1491
  };
1492
+ readonly paynote: {
1493
+ readonly description: "Optional PayNote document to bootstrap for the created charge context.";
1494
+ };
1495
+ readonly type: {
1496
+ readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1497
+ };
1498
+ };
1499
+ readonly FAZCx2s5eq9zPV64LdHNFYbjjxD3ci1ZqyTcQk5WhXAs: {
1500
+ readonly childPayNote: {
1501
+ readonly description: "Content of the issued PayNote";
1502
+ };
1503
+ readonly description: "The Guarantor confirms that a new Child PayNote has been issued against this parent.";
1504
+ readonly name: "Child PayNote Issued";
1305
1505
  readonly type: {
1306
1506
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1307
1507
  };
1308
1508
  };
1309
- readonly BVLMcTzag3D2rvg8LoKQ3Htgoqsh77EAoiTLTxH5aVBE: {
1310
- readonly description: "The Payer requests to assign or change the Payee.";
1311
- readonly name: "Payee Assignment Requested";
1312
- readonly payeeEmail: {
1509
+ readonly Fg5CEPi8Dbr1vBwGjzf8PbQNfuWfPP7HcLFChYwpRJq5: {
1510
+ readonly amount: {
1511
+ readonly description: "Charge amount in minor currency units.";
1512
+ readonly type: {
1513
+ readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1514
+ };
1515
+ };
1516
+ readonly description: "Request to create a reverse-direction card charge (merchant to card owner) in root context.";
1517
+ readonly name: "Reverse Card Charge Requested";
1518
+ readonly paymentMandateDocumentId: {
1519
+ readonly description: "Optional Payment Mandate document id used to authorize charge execution.";
1313
1520
  readonly type: {
1314
1521
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1315
1522
  };
1316
1523
  };
1524
+ readonly paynote: {
1525
+ readonly description: "Optional PayNote document to bootstrap for the created charge context.";
1526
+ };
1317
1527
  readonly type: {
1318
1528
  readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1319
1529
  };
1320
1530
  };
1321
- readonly BYdTyyLphWQNKo1GBcnE1jQuaPyXexNnfzkXhMiRqmUr: {
1322
- readonly events: {
1323
- readonly itemType: {
1324
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1325
- };
1531
+ readonly FLTwmZbvgDuFodwUAqh16PBu3a8aU7Pu4cssCGqVCRh2: {
1532
+ readonly cardTransactionDetails: {
1533
+ readonly description: "Card network identifiers used to match processor and issuer records.";
1326
1534
  readonly type: {
1327
- readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
1535
+ readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
1328
1536
  };
1329
1537
  };
1330
- readonly name: "Card Transaction Monitoring Stopped";
1331
- readonly reason: {
1538
+ readonly clientAcceptedAt: {
1539
+ readonly description: "Timestamp when the client accepted.";
1332
1540
  readonly type: {
1333
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1541
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1334
1542
  };
1335
1543
  };
1336
- readonly stoppedAt: {
1544
+ readonly clientDecisionStatus: {
1545
+ readonly description: "Client decision (pending, accepted, rejected).";
1337
1546
  readonly type: {
1338
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1547
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1339
1548
  };
1340
1549
  };
1341
- readonly targetMerchantId: {
1550
+ readonly clientRejectedAt: {
1551
+ readonly description: "Timestamp when the client rejected.";
1342
1552
  readonly type: {
1343
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1553
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1344
1554
  };
1345
1555
  };
1346
- readonly type: {
1347
- readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1348
- };
1349
- };
1350
- readonly Cb8EjAE531e9RVa9RgFJzKmN9h6z8Xp3tAYaBFgqfHoP: {
1351
- readonly allowedPaymentCounterparties: {
1352
- readonly description: "Optional payment counterparty allowlist. Missing list means wildcard (any counterparty is allowed).\n";
1353
- readonly itemType: {
1354
- readonly counterpartyId: {
1355
- readonly description: "Counterparty identifier interpreted according to counterpartyType.";
1556
+ readonly contracts: {
1557
+ readonly acceptPayNote: {
1558
+ readonly channel: {
1559
+ readonly type: {
1560
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1561
+ };
1562
+ readonly value: "payNoteDeliverer";
1563
+ };
1564
+ readonly request: {
1565
+ readonly acceptedAt: {
1566
+ readonly description: "Timestamp when the client accepted.";
1567
+ readonly type: {
1568
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1569
+ };
1570
+ };
1571
+ };
1572
+ readonly type: {
1573
+ readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
1574
+ };
1575
+ };
1576
+ readonly acceptPayNoteImpl: {
1577
+ readonly operation: {
1578
+ readonly type: {
1579
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1580
+ };
1581
+ readonly value: "acceptPayNote";
1582
+ };
1583
+ readonly steps: {
1584
+ readonly items: readonly [{
1585
+ readonly code: {
1586
+ readonly type: {
1587
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1588
+ };
1589
+ readonly value: "const request =\n event && event.message ? event.message.request : null;\nconst acceptedAt =\n request && typeof request.acceptedAt === \"string\"\n ? request.acceptedAt\n : \"\";\nconst currentDecisionStatus = document('/clientDecisionStatus');\nconst alreadyAccepted = currentDecisionStatus === \"accepted\";\nconst alreadyRejected = currentDecisionStatus === \"rejected\";\nconst alreadyDecided = alreadyAccepted || alreadyRejected;\nconst transactionStatus = document('/transactionIdentificationStatus');\nconst canAccept =\n transactionStatus === \"identified\" &&\n currentDecisionStatus === \"pending\";\nconst discardReason = canAccept\n ? \"\"\n : alreadyDecided\n ? `PayNote already ${currentDecisionStatus}`\n : transactionStatus === \"failed\"\n ? \"Transaction identification failed\"\n : \"Transaction not identified\";\nconst currentAcceptedAt = document('/clientAcceptedAt');\nconst currentDeliveryStatus =\n document.canonical('/deliveryStatus') || {\n type: \"Conversation/Status Pending\"\n };\nconst currentDeliveryError = document('/deliveryError');\nconst payNoteBootstrapRequest = document('/payNoteBootstrapRequest');\n\nconst nextDecisionStatus = canAccept\n ? \"accepted\"\n : typeof currentDecisionStatus === \"string\"\n ? currentDecisionStatus\n : \"pending\";\nconst nextAcceptedAt = canAccept\n ? acceptedAt\n : typeof currentAcceptedAt === \"string\"\n ? currentAcceptedAt\n : \"\";\nconst nextDeliveryStatus = canAccept\n ? { type: \"Conversation/Status Completed\" }\n : currentDeliveryStatus;\nconst nextDeliveryError = canAccept\n ? \"\"\n : typeof currentDeliveryError === \"string\"\n ? currentDeliveryError\n : \"\";\n\nreturn {\n acceptedAt,\n nextDecisionStatus,\n nextAcceptedAt,\n nextDeliveryStatus,\n nextDeliveryError,\n events: canAccept\n ? [\n {\n type: \"PayNote/PayNote Accepted By Client\",\n acceptedAt\n },\n payNoteBootstrapRequest\n ]\n : [\n {\n type: \"PayNote/PayNote Client Decision Discarded\",\n decision: \"accepted\",\n reason: discardReason,\n decisionAt: acceptedAt\n }\n ]\n};\n";
1590
+ };
1591
+ readonly name: "Capture Acceptance Timestamp";
1592
+ readonly type: {
1593
+ readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
1594
+ };
1595
+ }, {
1596
+ readonly changeset: {
1597
+ readonly items: readonly [{
1598
+ readonly op: {
1599
+ readonly type: {
1600
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1601
+ };
1602
+ readonly value: "replace";
1603
+ };
1604
+ readonly path: {
1605
+ readonly type: {
1606
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1607
+ };
1608
+ readonly value: "/clientDecisionStatus";
1609
+ };
1610
+ readonly val: {
1611
+ readonly type: {
1612
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1613
+ };
1614
+ readonly value: "${steps['Capture Acceptance Timestamp'].nextDecisionStatus}";
1615
+ };
1616
+ }, {
1617
+ readonly op: {
1618
+ readonly type: {
1619
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1620
+ };
1621
+ readonly value: "replace";
1622
+ };
1623
+ readonly path: {
1624
+ readonly type: {
1625
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1626
+ };
1627
+ readonly value: "/clientAcceptedAt";
1628
+ };
1629
+ readonly val: {
1630
+ readonly type: {
1631
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1632
+ };
1633
+ readonly value: "${steps['Capture Acceptance Timestamp'].nextAcceptedAt}";
1634
+ };
1635
+ }, {
1636
+ readonly op: {
1637
+ readonly type: {
1638
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1639
+ };
1640
+ readonly value: "replace";
1641
+ };
1642
+ readonly path: {
1643
+ readonly type: {
1644
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1645
+ };
1646
+ readonly value: "/deliveryStatus";
1647
+ };
1648
+ readonly val: {
1649
+ readonly type: {
1650
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1651
+ };
1652
+ readonly value: "${steps['Capture Acceptance Timestamp'].nextDeliveryStatus}";
1653
+ };
1654
+ }, {
1655
+ readonly op: {
1656
+ readonly type: {
1657
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1658
+ };
1659
+ readonly value: "replace";
1660
+ };
1661
+ readonly path: {
1662
+ readonly type: {
1663
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1664
+ };
1665
+ readonly value: "/deliveryError";
1666
+ };
1667
+ readonly val: {
1668
+ readonly type: {
1669
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1670
+ };
1671
+ readonly value: "${steps['Capture Acceptance Timestamp'].nextDeliveryError}";
1672
+ };
1673
+ }];
1674
+ };
1675
+ readonly name: "Apply Acceptance Update";
1676
+ readonly type: {
1677
+ readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
1678
+ };
1679
+ }];
1680
+ };
1681
+ readonly type: {
1682
+ readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1683
+ };
1684
+ };
1685
+ readonly initialize: {
1686
+ readonly channel: {
1356
1687
  readonly type: {
1357
1688
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1358
1689
  };
1690
+ readonly value: "initLifecycleChannel";
1691
+ };
1692
+ readonly steps: {
1693
+ readonly items: readonly [{
1694
+ readonly changeset: {
1695
+ readonly items: readonly [{
1696
+ readonly op: {
1697
+ readonly type: {
1698
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1699
+ };
1700
+ readonly value: "replace";
1701
+ };
1702
+ readonly path: {
1703
+ readonly type: {
1704
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1705
+ };
1706
+ readonly value: "/deliveryStatus";
1707
+ };
1708
+ readonly val: {
1709
+ readonly type: {
1710
+ readonly blueId: "ETAPjwZVyYEfPUWvXkCWAuybBhYUayg4hKC2V7mLXmsv";
1711
+ };
1712
+ };
1713
+ }, {
1714
+ readonly op: {
1715
+ readonly type: {
1716
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1717
+ };
1718
+ readonly value: "replace";
1719
+ };
1720
+ readonly path: {
1721
+ readonly type: {
1722
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1723
+ };
1724
+ readonly value: "/transactionIdentificationStatus";
1725
+ };
1726
+ readonly val: {
1727
+ readonly type: {
1728
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1729
+ };
1730
+ readonly value: "pending";
1731
+ };
1732
+ }, {
1733
+ readonly op: {
1734
+ readonly type: {
1735
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1736
+ };
1737
+ readonly value: "replace";
1738
+ };
1739
+ readonly path: {
1740
+ readonly type: {
1741
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1742
+ };
1743
+ readonly value: "/clientDecisionStatus";
1744
+ };
1745
+ readonly val: {
1746
+ readonly type: {
1747
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1748
+ };
1749
+ readonly value: "pending";
1750
+ };
1751
+ }, {
1752
+ readonly op: {
1753
+ readonly type: {
1754
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1755
+ };
1756
+ readonly value: "replace";
1757
+ };
1758
+ readonly path: {
1759
+ readonly type: {
1760
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1761
+ };
1762
+ readonly value: "/deliveryError";
1763
+ };
1764
+ readonly val: {
1765
+ readonly type: {
1766
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1767
+ };
1768
+ readonly value: "";
1769
+ };
1770
+ }];
1771
+ };
1772
+ readonly name: "Initialize Delivery State";
1773
+ readonly type: {
1774
+ readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
1775
+ };
1776
+ }];
1359
1777
  };
1360
- readonly counterpartyType: {
1361
- readonly description: "Allowed payment counterparty identifier type:\n- merchantId\n- customerId\n- accountNumber\n";
1362
- readonly type: {
1363
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1364
- };
1778
+ readonly type: {
1779
+ readonly blueId: "7X3LkN54Yp88JgZbppPhP6hM3Jqiqv8Z2i4kS7phXtQe";
1365
1780
  };
1366
1781
  };
1367
- readonly type: {
1368
- readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
1369
- };
1370
- };
1371
- readonly allowedPayNotes: {
1372
- readonly description: "Optional linked PayNote allowlist. Used only when allowLinkedPayNote is true. Missing list means wildcard (any linked PayNote is allowed). Each entry must set exactly one selector: typeBlueId or documentBlueId.\n";
1373
- readonly itemType: {
1374
- readonly documentBlueId: {
1375
- readonly description: "Optional blue-id of an allowed concrete PayNote document. Mutually exclusive with typeBlueId.\n";
1782
+ readonly initLifecycleChannel: {
1783
+ readonly event: {
1376
1784
  readonly type: {
1377
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1785
+ readonly blueId: "BrpmpNt5JkapeUvPqYcxgXZrHNZX3R757dRwuXXdfNM2";
1378
1786
  };
1379
1787
  };
1380
- readonly typeBlueId: {
1381
- readonly description: "Optional blue-id of an allowed PayNote type. Mutually exclusive with documentBlueId.\n";
1382
- readonly type: {
1383
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1384
- };
1788
+ readonly type: {
1789
+ readonly blueId: "H2aCCTUcLMTJozWkn7HPUjyFBFxamraw1q8DyWk87zxr";
1385
1790
  };
1386
1791
  };
1387
- readonly type: {
1388
- readonly blueId: "6aehfNAxHLC1PHHoDr3tYtFH3RWNbiWdFancJ1bypXEY";
1389
- };
1390
- };
1391
- readonly allowLinkedPayNote: {
1392
- readonly description: "Whether this mandate allows linked PayNote startup after charge execution.";
1393
- readonly type: {
1394
- readonly blueId: "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u";
1395
- };
1396
- };
1397
- readonly amountCaptured: {
1398
- readonly description: "Running captured amount in minor currency units. Increased after successful capture.\n";
1399
- readonly type: {
1400
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1401
- };
1402
- };
1403
- readonly amountLimit: {
1404
- readonly description: "Maximum amount in minor currency units allowed by this mandate.";
1405
- readonly type: {
1406
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1407
- };
1408
- };
1409
- readonly amountReserved: {
1410
- readonly description: "Running reserved amount in minor currency units. Increased after successful reserve/authorize, decreased after release/capture.\n";
1411
- readonly type: {
1412
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1413
- };
1414
- };
1415
- readonly chargeAttempts: {
1416
- readonly description: "Stateful map of chargeAttemptId -> attempt state (authorization + settlement).";
1417
- readonly keyType: {
1418
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1419
- };
1420
- readonly type: {
1421
- readonly blueId: "G7fBT9PSod1RfHLHkpafAGBDVAJMrMhAMY51ERcyXNrj";
1792
+ readonly payNoteDeliverer: {
1793
+ readonly description: "Participant delivering and reporting status (e.g., bank).";
1794
+ readonly type: {
1795
+ readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
1796
+ };
1422
1797
  };
1423
- readonly valueType: {
1424
- readonly blueId: "JADRqXZ7UWNDqPt9Zhnn6831Nz2X5yeSuyew4hu6ciVq";
1798
+ readonly payNoteSender: {
1799
+ readonly description: "Participant submitting the PayNote delivery (merchant or processor).";
1800
+ readonly type: {
1801
+ readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
1802
+ };
1425
1803
  };
1426
- };
1427
- readonly contracts: {
1428
- readonly authorizeSpend: {
1804
+ readonly rejectPayNote: {
1429
1805
  readonly channel: {
1430
1806
  readonly type: {
1431
1807
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1432
1808
  };
1433
- readonly value: "guarantorChannel";
1809
+ readonly value: "payNoteDeliverer";
1434
1810
  };
1435
- readonly description: "Validate a charge attempt against mandate policy and reserve capacity.";
1436
1811
  readonly request: {
1437
- readonly type: {
1438
- readonly blueId: "4STBHLJjxjCZVgeW2ScFfmsx8Vm16FenEbaNMyL8ZJUT";
1812
+ readonly reason: {
1813
+ readonly description: "Optional rejection reason.";
1814
+ readonly type: {
1815
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1816
+ };
1817
+ };
1818
+ readonly rejectedAt: {
1819
+ readonly description: "Timestamp when the client rejected.";
1820
+ readonly type: {
1821
+ readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1822
+ };
1439
1823
  };
1440
1824
  };
1441
1825
  readonly type: {
1442
1826
  readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
1443
1827
  };
1444
1828
  };
1445
- readonly authorizeSpendImpl: {
1829
+ readonly rejectPayNoteImpl: {
1446
1830
  readonly operation: {
1447
1831
  readonly type: {
1448
1832
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1449
1833
  };
1450
- readonly value: "authorizeSpend";
1834
+ readonly value: "rejectPayNote";
1451
1835
  };
1452
1836
  readonly steps: {
1453
1837
  readonly items: readonly [{
@@ -1455,9 +1839,9 @@ export declare const contents: {
1455
1839
  readonly type: {
1456
1840
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1457
1841
  };
1458
- readonly value: "const request =\n event && event.message && event.message.request\n ? event.message.request\n : {};\n\nconst unwrapNodeValue = function (value) {\n if (\n value &&\n typeof value === 'object' &&\n Object.prototype.hasOwnProperty.call(value, 'value')\n ) {\n return value.value;\n }\n return value;\n};\n\nconst toText = function (value) {\n const unwrapped = unwrapNodeValue(value);\n return typeof unwrapped === 'string' ? unwrapped : '';\n};\n\nconst toTimestampText = function (value) {\n const unwrapped = unwrapNodeValue(value);\n if (typeof unwrapped === 'string') {\n return unwrapped;\n }\n if (typeof unwrapped === 'number') {\n return String(unwrapped);\n }\n return '';\n};\n\nconst nowIso =\n toText(request.requestedAt) ||\n toTimestampText(event && event.timestamp ? event.timestamp : '');\n\nconst normalizeTimestamp = function (value) {\n if (typeof value !== 'string' || !value) {\n return '';\n }\n let digits = '';\n let index = 0;\n while (index < value.length) {\n const code = value.charCodeAt(index);\n if (code >= 48 && code <= 57) {\n digits += value.charAt(index);\n }\n index += 1;\n }\n if (digits.length < 14) {\n return '';\n }\n return digits.slice(0, 14);\n};\n\nconst toInteger = function (value, fallback) {\n const safeFallback =\n typeof fallback === 'number' && Number.isFinite(fallback)\n ? Math.trunc(fallback)\n : 0;\n const unwrapped = unwrapNodeValue(value);\n if (typeof unwrapped === 'number' && Number.isFinite(unwrapped)) {\n return Math.trunc(unwrapped);\n }\n if (typeof unwrapped !== 'string' || !unwrapped) {\n return safeFallback;\n }\n const parsed = Number(unwrapped);\n return Number.isFinite(parsed) ? Math.trunc(parsed) : safeFallback;\n};\n\nconst cloneObject = function (value) {\n const source = value && typeof value === 'object' ? value : {};\n const clone = {};\n Object.keys(source).forEach(function (key) {\n clone[key] = source[key];\n });\n return clone;\n};\n\nconst chargeAttemptId = toText(request.chargeAttemptId);\nconst amountMinor = toInteger(request.amountMinor, 0);\nconst counterpartyType = toText(request.counterpartyType);\nconst counterpartyId = toText(request.counterpartyId);\nconst requestedCurrency = toText(request.currency);\n\nconst chargeAttempts = document.canonical('/chargeAttempts') || {};\nconst nextChargeAttempts = cloneObject(chargeAttempts);\n\nconst existingAttempt =\n chargeAttemptId &&\n chargeAttempts[chargeAttemptId] &&\n typeof chargeAttempts[chargeAttemptId] === 'object'\n ? chargeAttempts[chargeAttemptId]\n : null;\nconst existingDecision =\n existingAttempt ? toText(existingAttempt.authorizationStatus) : '';\nconst existingReason =\n existingAttempt ? toText(existingAttempt.authorizationReason) : '';\n\nconst amountLimit = toInteger(document('/amountLimit'), 0);\nconst amountReserved = toInteger(document('/amountReserved'), 0);\nconst amountCaptured = toInteger(document('/amountCaptured'), 0);\nconst mandateCurrency = toText(document('/currency'));\nconst expiresAt = toText(document('/expiresAt'));\nconst revokedAt = toText(document('/revokedAt'));\nconst nowComparable = normalizeTimestamp(nowIso);\n\nconst allowedCounterparties = document.canonical('/allowedPaymentCounterparties');\nconst isCounterpartyAllowed =\n !Array.isArray(allowedCounterparties) ||\n allowedCounterparties.length === 0 ||\n allowedCounterparties.some(function (item) {\n return (\n item &&\n toText(item.counterpartyType) === counterpartyType &&\n toText(item.counterpartyId) === counterpartyId\n );\n });\n\nlet status = 'rejected';\nlet reason = '';\nlet nextAmountReserved = amountReserved;\n\nif (existingDecision === 'approved' || existingDecision === 'rejected') {\n status = existingDecision;\n reason = existingDecision === 'rejected' ? existingReason : '';\n} else if (!chargeAttemptId) {\n reason = 'Missing chargeAttemptId.';\n} else if (amountMinor <= 0) {\n reason = 'Amount must be greater than zero.';\n} else if (!requestedCurrency || requestedCurrency !== mandateCurrency) {\n reason = 'Currency does not match mandate currency.';\n} else if (revokedAt) {\n reason = 'Mandate is revoked.';\n} else if (\n expiresAt &&\n normalizeTimestamp(expiresAt) &&\n nowComparable &&\n normalizeTimestamp(expiresAt) < nowComparable\n) {\n reason = 'Mandate is expired.';\n} else if (!isCounterpartyAllowed) {\n reason = 'Counterparty is not allowed by mandate.';\n} else if (amountReserved + amountCaptured + amountMinor > amountLimit) {\n reason = 'Mandate amount limit exceeded.';\n} else {\n status = 'approved';\n nextAmountReserved = amountReserved + amountMinor;\n}\n\nif (chargeAttemptId && !existingDecision) {\n nextChargeAttempts[chargeAttemptId] = {\n amountMinor,\n currency: requestedCurrency,\n counterpartyType,\n counterpartyId,\n chargeMode:\n toText(request.chargeMode),\n authorizationStatus: status,\n authorizationReason: reason,\n authorizationRespondedAt: nowIso,\n authorizedAmountMinor: status === 'approved' ? amountMinor : 0,\n settled: false,\n lastSettlementRequestStatus: '',\n lastSettlementProcessingStatus: '',\n settlementReason: '',\n settlementRespondedAt: '',\n reservedDeltaMinor: 0,\n capturedDeltaMinor: 0,\n holdId: '',\n transactionId: ''\n };\n}\n\nconst remainingAmountMinor = Math.max(\n 0,\n amountLimit - (nextAmountReserved + amountCaptured)\n);\n\nconst responseEvent = {\n type: 'PayNote/Payment Mandate Spend Authorization Responded',\n chargeAttemptId,\n status,\n remainingAmountMinor,\n respondedAt: nowIso\n};\n\nif (reason) {\n responseEvent.reason = reason;\n}\n\nreturn {\n nextChargeAttempts: nextChargeAttempts,\n nextAmountReserved: nextAmountReserved,\n events: [responseEvent]\n};\n";
1842
+ readonly value: "const request =\n event && event.message ? event.message.request : null;\nconst safeReason =\n typeof request === \"string\"\n ? request\n : request && typeof request.reason === \"string\"\n ? request.reason\n : \"\";\nconst rejectedAt =\n request && typeof request.rejectedAt === \"string\"\n ? request.rejectedAt\n : \"\";\nconst currentDecisionStatus = document('/clientDecisionStatus');\nconst alreadyAccepted = currentDecisionStatus === \"accepted\";\nconst alreadyRejected = currentDecisionStatus === \"rejected\";\nconst alreadyDecided = alreadyAccepted || alreadyRejected;\nconst transactionStatus = document('/transactionIdentificationStatus');\nconst canReject =\n transactionStatus === \"identified\" &&\n currentDecisionStatus === \"pending\";\nconst discardReason = canReject\n ? \"\"\n : alreadyDecided\n ? `PayNote already ${currentDecisionStatus}`\n : transactionStatus === \"failed\"\n ? \"Transaction identification failed\"\n : \"Transaction not identified\";\n\nconst currentRejectedAt = document('/clientRejectedAt');\nconst currentDeliveryStatus =\n document.canonical('/deliveryStatus') || {\n type: \"Conversation/Status Pending\"\n };\nconst currentDeliveryError = document('/deliveryError');\n\nconst nextDecisionStatus = canReject\n ? \"rejected\"\n : typeof currentDecisionStatus === \"string\"\n ? currentDecisionStatus\n : \"pending\";\nconst nextRejectedAt = canReject\n ? rejectedAt\n : typeof currentRejectedAt === \"string\"\n ? currentRejectedAt\n : \"\";\nconst nextDeliveryStatus = canReject\n ? { type: \"Conversation/Status Failed\" }\n : currentDeliveryStatus;\nconst nextDeliveryError = canReject\n ? safeReason\n : typeof currentDeliveryError === \"string\"\n ? currentDeliveryError\n : \"\";\n\nreturn {\n reason: safeReason,\n rejectedAt,\n nextDecisionStatus,\n nextRejectedAt,\n nextDeliveryStatus,\n nextDeliveryError,\n events: canReject\n ? [\n {\n type: \"PayNote/PayNote Rejected By Client\",\n reason: safeReason,\n rejectedAt\n }\n ]\n : [\n {\n type: \"PayNote/PayNote Client Decision Discarded\",\n decision: \"rejected\",\n reason: discardReason,\n decisionAt: rejectedAt\n }\n ]\n};\n";
1459
1843
  };
1460
- readonly name: "Decide Spend Authorization";
1844
+ readonly name: "Capture Rejection Reason";
1461
1845
  readonly type: {
1462
1846
  readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
1463
1847
  };
@@ -1474,13 +1858,13 @@ export declare const contents: {
1474
1858
  readonly type: {
1475
1859
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1476
1860
  };
1477
- readonly value: "/chargeAttempts";
1861
+ readonly value: "/clientDecisionStatus";
1478
1862
  };
1479
1863
  readonly val: {
1480
1864
  readonly type: {
1481
1865
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1482
1866
  };
1483
- readonly value: "${steps['Decide Spend Authorization'].nextChargeAttempts}";
1867
+ readonly value: "${steps['Capture Rejection Reason'].nextDecisionStatus}";
1484
1868
  };
1485
1869
  }, {
1486
1870
  readonly op: {
@@ -1493,17 +1877,55 @@ export declare const contents: {
1493
1877
  readonly type: {
1494
1878
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1495
1879
  };
1496
- readonly value: "/amountReserved";
1880
+ readonly value: "/clientRejectedAt";
1497
1881
  };
1498
1882
  readonly val: {
1499
1883
  readonly type: {
1500
1884
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1501
1885
  };
1502
- readonly value: "${steps['Decide Spend Authorization'].nextAmountReserved}";
1886
+ readonly value: "${steps['Capture Rejection Reason'].nextRejectedAt}";
1887
+ };
1888
+ }, {
1889
+ readonly op: {
1890
+ readonly type: {
1891
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1892
+ };
1893
+ readonly value: "replace";
1894
+ };
1895
+ readonly path: {
1896
+ readonly type: {
1897
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1898
+ };
1899
+ readonly value: "/deliveryStatus";
1900
+ };
1901
+ readonly val: {
1902
+ readonly type: {
1903
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1904
+ };
1905
+ readonly value: "${steps['Capture Rejection Reason'].nextDeliveryStatus}";
1906
+ };
1907
+ }, {
1908
+ readonly op: {
1909
+ readonly type: {
1910
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1911
+ };
1912
+ readonly value: "replace";
1913
+ };
1914
+ readonly path: {
1915
+ readonly type: {
1916
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1917
+ };
1918
+ readonly value: "/deliveryError";
1919
+ };
1920
+ readonly val: {
1921
+ readonly type: {
1922
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1923
+ };
1924
+ readonly value: "${steps['Capture Rejection Reason'].nextDeliveryError}";
1503
1925
  };
1504
1926
  }];
1505
1927
  };
1506
- readonly name: "Persist Authorization Decision";
1928
+ readonly name: "Apply Rejection Update";
1507
1929
  readonly type: {
1508
1930
  readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
1509
1931
  };
@@ -1513,33 +1935,43 @@ export declare const contents: {
1513
1935
  readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1514
1936
  };
1515
1937
  };
1516
- readonly granteeChannel: {
1517
- readonly description: "Grantee timeline channel (party allowed to use the mandate).";
1518
- readonly type: {
1519
- readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
1938
+ readonly reportDeliveryError: {
1939
+ readonly channel: {
1940
+ readonly type: {
1941
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1942
+ };
1943
+ readonly value: "payNoteDeliverer";
1520
1944
  };
1521
- };
1522
- readonly granterChannel: {
1523
- readonly description: "Granting party timeline channel.";
1524
- readonly type: {
1525
- readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
1945
+ readonly request: {
1946
+ readonly description: "Delivery error reason.";
1947
+ readonly type: {
1948
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1949
+ };
1526
1950
  };
1527
- };
1528
- readonly guarantorChannel: {
1529
- readonly description: "Bank/admin channel executing mandate checks and settlement updates.";
1530
1951
  readonly type: {
1531
- readonly blueId: "HCF8mXnX3dFjQ8osjxb4Wzm2Nm1DoXnTYuA5sPnV7NTs";
1952
+ readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
1532
1953
  };
1533
1954
  };
1534
- readonly initialize: {
1535
- readonly channel: {
1955
+ readonly reportDeliveryErrorImpl: {
1956
+ readonly operation: {
1536
1957
  readonly type: {
1537
1958
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1538
1959
  };
1539
- readonly value: "initLifecycleChannel";
1960
+ readonly value: "reportDeliveryError";
1540
1961
  };
1541
1962
  readonly steps: {
1542
1963
  readonly items: readonly [{
1964
+ readonly code: {
1965
+ readonly type: {
1966
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1967
+ };
1968
+ readonly value: "const reason =\n event && event.message ? event.message.request : \"\";\nconst safeReason = typeof reason === \"string\" ? reason : \"\";\n\nreturn {\n reason: safeReason,\n events: [\n {\n type: \"PayNote/PayNote Delivery Failed\",\n reason: safeReason\n }\n ]\n};\n";
1969
+ };
1970
+ readonly name: "Capture Delivery Failure Reason";
1971
+ readonly type: {
1972
+ readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
1973
+ };
1974
+ }, {
1543
1975
  readonly changeset: {
1544
1976
  readonly items: readonly [{
1545
1977
  readonly op: {
@@ -1552,54 +1984,67 @@ export declare const contents: {
1552
1984
  readonly type: {
1553
1985
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1554
1986
  };
1555
- readonly value: "/chargeAttempts";
1987
+ readonly value: "/deliveryStatus";
1988
+ };
1989
+ readonly val: {
1990
+ readonly type: {
1991
+ readonly blueId: "Guus3kHbivXvy5G93yhiKs3Pc8sxCc4XVvSo7CqLsQEc";
1992
+ };
1993
+ };
1994
+ }, {
1995
+ readonly op: {
1996
+ readonly type: {
1997
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1998
+ };
1999
+ readonly value: "replace";
2000
+ };
2001
+ readonly path: {
2002
+ readonly type: {
2003
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2004
+ };
2005
+ readonly value: "/deliveryError";
2006
+ };
2007
+ readonly val: {
2008
+ readonly type: {
2009
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2010
+ };
2011
+ readonly value: "${steps['Capture Delivery Failure Reason'].reason}";
1556
2012
  };
1557
- readonly val: {};
1558
2013
  }];
1559
2014
  };
1560
- readonly name: "Initialize mandate runtime state";
2015
+ readonly name: "Apply Delivery Failure";
1561
2016
  readonly type: {
1562
2017
  readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
1563
2018
  };
1564
2019
  }];
1565
2020
  };
1566
2021
  readonly type: {
1567
- readonly blueId: "7X3LkN54Yp88JgZbppPhP6hM3Jqiqv8Z2i4kS7phXtQe";
1568
- };
1569
- };
1570
- readonly initLifecycleChannel: {
1571
- readonly event: {
1572
- readonly type: {
1573
- readonly blueId: "BrpmpNt5JkapeUvPqYcxgXZrHNZX3R757dRwuXXdfNM2";
1574
- };
1575
- };
1576
- readonly type: {
1577
- readonly blueId: "H2aCCTUcLMTJozWkn7HPUjyFBFxamraw1q8DyWk87zxr";
2022
+ readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1578
2023
  };
1579
2024
  };
1580
- readonly settleSpend: {
2025
+ readonly updateTransactionIdentificationStatus: {
1581
2026
  readonly channel: {
1582
2027
  readonly type: {
1583
2028
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1584
2029
  };
1585
- readonly value: "guarantorChannel";
2030
+ readonly value: "payNoteDeliverer";
1586
2031
  };
1587
- readonly description: "Apply final reserve/capture deltas for a previously authorized charge attempt.";
1588
2032
  readonly request: {
2033
+ readonly description: "True when the transaction is identified.";
1589
2034
  readonly type: {
1590
- readonly blueId: "3TW3tRAQdYoMTFeeqmnWLR9JFibTVaJuiRJfJ3ggeVTJ";
2035
+ readonly blueId: "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u";
1591
2036
  };
1592
2037
  };
1593
2038
  readonly type: {
1594
2039
  readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
1595
2040
  };
1596
2041
  };
1597
- readonly settleSpendImpl: {
2042
+ readonly updateTransactionIdentificationStatusImpl: {
1598
2043
  readonly operation: {
1599
2044
  readonly type: {
1600
2045
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1601
2046
  };
1602
- readonly value: "settleSpend";
2047
+ readonly value: "updateTransactionIdentificationStatus";
1603
2048
  };
1604
2049
  readonly steps: {
1605
2050
  readonly items: readonly [{
@@ -1607,9 +2052,9 @@ export declare const contents: {
1607
2052
  readonly type: {
1608
2053
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1609
2054
  };
1610
- readonly value: "const request =\n event && event.message && event.message.request\n ? event.message.request\n : {};\n\nconst unwrapNodeValue = function (value) {\n if (\n value &&\n typeof value === 'object' &&\n Object.prototype.hasOwnProperty.call(value, 'value')\n ) {\n return value.value;\n }\n return value;\n};\n\nconst toText = function (value) {\n const unwrapped = unwrapNodeValue(value);\n return typeof unwrapped === 'string' ? unwrapped : '';\n};\n\nconst toTimestampText = function (value) {\n const unwrapped = unwrapNodeValue(value);\n if (typeof unwrapped === 'string') {\n return unwrapped;\n }\n if (typeof unwrapped === 'number') {\n return String(unwrapped);\n }\n return '';\n};\n\nconst nowIso =\n toText(request.settledAt) ||\n toTimestampText(event && event.timestamp ? event.timestamp : '');\n\nconst toInteger = function (value, fallback) {\n const safeFallback =\n typeof fallback === 'number' && Number.isFinite(fallback)\n ? Math.trunc(fallback)\n : 0;\n const unwrapped = unwrapNodeValue(value);\n if (typeof unwrapped === 'number' && Number.isFinite(unwrapped)) {\n return Math.trunc(unwrapped);\n }\n if (typeof unwrapped !== 'string' || !unwrapped) {\n return safeFallback;\n }\n const parsed = Number(unwrapped);\n return Number.isFinite(parsed) ? Math.trunc(parsed) : safeFallback;\n};\n\nconst cloneObject = function (value) {\n const source = value && typeof value === 'object' ? value : {};\n const clone = {};\n Object.keys(source).forEach(function (key) {\n clone[key] = source[key];\n });\n return clone;\n};\n\nconst chargeAttemptId = toText(request.chargeAttemptId);\nconst settlementStatus = toText(request.status);\nconst reservedDeltaMinor = toInteger(request.reservedDeltaMinor, 0);\nconst capturedDeltaMinor = toInteger(request.capturedDeltaMinor, 0);\n\nconst amountLimit = toInteger(document('/amountLimit'), 0);\nconst amountReserved = toInteger(document('/amountReserved'), 0);\nconst amountCaptured = toInteger(document('/amountCaptured'), 0);\n\nconst chargeAttempts = document.canonical('/chargeAttempts') || {};\nconst nextChargeAttempts = cloneObject(chargeAttempts);\nconst existingAttempt =\n chargeAttemptId &&\n chargeAttempts[chargeAttemptId] &&\n typeof chargeAttempts[chargeAttemptId] === 'object'\n ? chargeAttempts[chargeAttemptId]\n : null;\n\nconst alreadySettled = !!existingAttempt && existingAttempt.settled === true;\nconst approved =\n !!existingAttempt && toText(existingAttempt.authorizationStatus) === 'approved';\nconst authorizedAmount = toInteger(\n existingAttempt ? existingAttempt.authorizedAmountMinor : 0,\n 0\n);\n\nconst holdId = toText(request.holdId);\nconst transactionId = toText(request.transactionId);\nconst requestReason = toText(request.reason);\n\nlet status = 'rejected';\nlet reason = '';\nlet nextAmountReserved = amountReserved;\nlet nextAmountCaptured = amountCaptured;\nlet nextAttempt = existingAttempt ? cloneObject(existingAttempt) : null;\n\nif (!chargeAttemptId) {\n reason = 'Missing chargeAttemptId.';\n} else if (alreadySettled) {\n status = 'accepted';\n reason = 'Charge attempt already settled.';\n} else if (!approved) {\n reason = 'Charge attempt is not approved.';\n} else if (\n settlementStatus !== 'succeeded' &&\n settlementStatus !== 'failed'\n) {\n reason = 'Unsupported settlement status.';\n} else if (capturedDeltaMinor < 0) {\n reason = 'capturedDeltaMinor cannot be negative.';\n} else if (\n settlementStatus === 'failed' &&\n capturedDeltaMinor !== 0\n) {\n reason = 'capturedDeltaMinor must be 0 for failed settlement.';\n} else if (capturedDeltaMinor > authorizedAmount) {\n reason = 'capturedDeltaMinor exceeds authorized amount.';\n} else {\n const candidateAmountReserved = amountReserved + reservedDeltaMinor;\n const candidateAmountCaptured = amountCaptured + capturedDeltaMinor;\n const candidateUsed = candidateAmountReserved + candidateAmountCaptured;\n\n if (candidateAmountReserved < 0) {\n reason = 'Settlement would make amountReserved negative.';\n } else if (candidateAmountCaptured < 0) {\n reason = 'Settlement would make amountCaptured negative.';\n } else if (candidateUsed > amountLimit) {\n reason = 'Settlement would exceed amountLimit.';\n } else {\n status = 'accepted';\n nextAmountReserved = candidateAmountReserved;\n nextAmountCaptured = candidateAmountCaptured;\n nextAttempt = cloneObject(existingAttempt);\n nextAttempt.settled = true;\n nextAttempt.lastSettlementRequestStatus = settlementStatus;\n nextAttempt.lastSettlementProcessingStatus = 'accepted';\n nextAttempt.settlementReason = requestReason;\n nextAttempt.settlementRespondedAt = nowIso;\n nextAttempt.reservedDeltaMinor = reservedDeltaMinor;\n nextAttempt.capturedDeltaMinor = capturedDeltaMinor;\n nextAttempt.holdId = holdId;\n nextAttempt.transactionId = transactionId;\n nextChargeAttempts[chargeAttemptId] = nextAttempt;\n }\n}\n\nif (nextAttempt && status === 'rejected') {\n nextAttempt = cloneObject(nextAttempt);\n nextAttempt.lastSettlementRequestStatus = settlementStatus;\n nextAttempt.lastSettlementProcessingStatus = 'rejected';\n nextAttempt.settlementReason = reason;\n nextAttempt.settlementRespondedAt = nowIso;\n nextChargeAttempts[chargeAttemptId] = nextAttempt;\n}\n\nconst responseEvent = {\n type: 'PayNote/Payment Mandate Spend Settlement Responded',\n chargeAttemptId,\n status,\n amountReserved: nextAmountReserved,\n amountCaptured: nextAmountCaptured,\n respondedAt: nowIso\n};\n\nif (reason) {\n responseEvent.reason = reason;\n}\n\nreturn {\n nextChargeAttempts: nextChargeAttempts,\n nextAmountReserved: nextAmountReserved,\n nextAmountCaptured: nextAmountCaptured,\n events: [responseEvent]\n};\n";
2055
+ readonly value: "const request =\n event && event.message ? event.message.request : null;\nconst identified = request === true;\nconst currentStatus = document('/transactionIdentificationStatus');\nconst canUpdate =\n currentStatus !== \"identified\" && currentStatus !== \"failed\";\nconst identificationStatus = canUpdate\n ? identified\n ? \"identified\"\n : \"failed\"\n : currentStatus;\nconst currentDeliveryStatus =\n document.canonical('/deliveryStatus') || {\n type: \"Conversation/Status Pending\"\n };\nconst deliveryStatus = canUpdate\n ? identified\n ? { type: \"Conversation/Status In Progress\" }\n : { type: \"Conversation/Status Failed\" }\n : currentDeliveryStatus;\nconst currentDeliveryError = document('/deliveryError');\nconst deliveryError = canUpdate\n ? identified\n ? \"\"\n : \"Transaction identification failed\"\n : typeof currentDeliveryError === \"string\"\n ? currentDeliveryError\n : \"\";\nconst eventType = identified\n ? \"PayNote/Transaction Identified\"\n : \"PayNote/Transaction Identification Failed\";\n\nreturn {\n identificationStatus,\n deliveryStatus,\n deliveryError,\n events: canUpdate ? [{ type: eventType }] : []\n};\n";
1611
2056
  };
1612
- readonly name: "Validate and Apply Settlement";
2057
+ readonly name: "Classify Identification Result";
1613
2058
  readonly type: {
1614
2059
  readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
1615
2060
  };
@@ -1626,13 +2071,13 @@ export declare const contents: {
1626
2071
  readonly type: {
1627
2072
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1628
2073
  };
1629
- readonly value: "/chargeAttempts";
2074
+ readonly value: "/transactionIdentificationStatus";
1630
2075
  };
1631
2076
  readonly val: {
1632
2077
  readonly type: {
1633
2078
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1634
2079
  };
1635
- readonly value: "${steps['Validate and Apply Settlement'].nextChargeAttempts}";
2080
+ readonly value: "${steps['Classify Identification Result'].identificationStatus}";
1636
2081
  };
1637
2082
  }, {
1638
2083
  readonly op: {
@@ -1645,13 +2090,13 @@ export declare const contents: {
1645
2090
  readonly type: {
1646
2091
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1647
2092
  };
1648
- readonly value: "/amountReserved";
2093
+ readonly value: "/deliveryStatus";
1649
2094
  };
1650
2095
  readonly val: {
1651
2096
  readonly type: {
1652
2097
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1653
2098
  };
1654
- readonly value: "${steps['Validate and Apply Settlement'].nextAmountReserved}";
2099
+ readonly value: "${steps['Classify Identification Result'].deliveryStatus}";
1655
2100
  };
1656
2101
  }, {
1657
2102
  readonly op: {
@@ -1661,399 +2106,72 @@ export declare const contents: {
1661
2106
  readonly value: "replace";
1662
2107
  };
1663
2108
  readonly path: {
1664
- readonly type: {
1665
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1666
- };
1667
- readonly value: "/amountCaptured";
1668
- };
1669
- readonly val: {
1670
- readonly type: {
1671
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1672
- };
1673
- readonly value: "${steps['Validate and Apply Settlement'].nextAmountCaptured}";
1674
- };
1675
- }];
1676
- };
1677
- readonly name: "Persist Settlement";
1678
- readonly type: {
1679
- readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
1680
- };
1681
- }];
1682
- };
1683
- readonly type: {
1684
- readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1685
- };
1686
- };
1687
- };
1688
- readonly currency: {
1689
- readonly description: "Currency code used for amountLimit validation.";
1690
- readonly type: {
1691
- readonly blueId: "CBnZ7aaNetj9KEqXpUWj5jvjKbmviLivP98T2EiyxiYc";
1692
- };
1693
- };
1694
- readonly description: "Payment mandate authorizing a grantee to execute payment requests on behalf of a granter, under explicit limits, with deterministic spend tracking and optional linked PayNote bootstrap rules.\n";
1695
- readonly expiresAt: {
1696
- readonly description: "Optional mandate expiry timestamp.";
1697
- readonly type: {
1698
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1699
- };
1700
- };
1701
- readonly granteeId: {
1702
- readonly description: "Identifier interpreted according to granteeType.";
1703
- readonly type: {
1704
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1705
- };
1706
- };
1707
- readonly granteeType: {
1708
- readonly description: "Party allowed to invoke this mandate:\n- documentId\n- merchantId\n- customerId\n";
1709
- readonly type: {
1710
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1711
- };
1712
- };
1713
- readonly granterId: {
1714
- readonly description: "Identifier of the granting party:\n- merchantId when granterType is merchant\n- customerId (bank user id) when granterType is customer\n";
1715
- readonly type: {
1716
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1717
- };
1718
- };
1719
- readonly granterType: {
1720
- readonly description: "Party granting authority to use funds:\n- merchant\n- customer\n";
1721
- readonly type: {
1722
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1723
- };
1724
- };
1725
- readonly name: "Payment Mandate";
1726
- readonly revokedAt: {
1727
- readonly description: "Optional revocation timestamp. When set, mandate is inactive.";
1728
- readonly type: {
1729
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1730
- };
1731
- };
1732
- readonly sourceAccount: {
1733
- readonly description: "Funds source to use when this mandate executes: - root (uses root account context; for merchant this maps to active credit line) - specific account number\n";
1734
- readonly type: {
1735
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1736
- };
1737
- };
1738
- };
1739
- readonly CFoaaYn29o7Mg7VaN7bkM87KrfE8fvnVYWkGXd6YnQ7S: {
1740
- readonly description: "Decision response for a card charge request.";
1741
- readonly name: "Card Charge Responded";
1742
- readonly paymentMandateDocumentId: {
1743
- readonly description: "Payment Mandate document id used for this charge decision when available.";
1744
- readonly type: {
1745
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1746
- };
1747
- };
1748
- readonly reason: {
1749
- readonly description: "Optional explanation for rejected or pending decisions.";
1750
- readonly type: {
1751
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1752
- };
1753
- };
1754
- readonly status: {
1755
- readonly description: "Request decision status (\"accepted\" | \"rejected\" | \"pending\").";
1756
- readonly type: {
1757
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1758
- };
1759
- };
1760
- readonly type: {
1761
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1762
- };
1763
- };
1764
- readonly CFqiZigjKE5JatANkaAkWw2NbgvEmb2BVEVPf3ckUrWg: {
1765
- readonly amountReleased: {
1766
- readonly type: {
1767
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1768
- };
1769
- };
1770
- readonly description: "The Guarantor confirms that previously reserved funds have been released.";
1771
- readonly name: "Reservation Released";
1772
- readonly type: {
1773
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1774
- };
1775
- };
1776
- readonly Da7ZSyWgvMyTfwDVhAgCkGf3H8dwHhouHsHgNzg3DZ2j: {
1777
- readonly decision: {
1778
- readonly description: "Attempted decision (accepted or rejected).";
1779
- readonly type: {
1780
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1781
- };
1782
- };
1783
- readonly decisionAt: {
1784
- readonly description: "Timestamp provided with the decision, if any.";
1785
- readonly type: {
1786
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1787
- };
1788
- };
1789
- readonly description: "The client's decision was discarded because it could not be applied in the current delivery state.";
1790
- readonly name: "PayNote Client Decision Discarded";
1791
- readonly reason: {
1792
- readonly description: "Validation reason for discarding the decision.";
1793
- readonly type: {
1794
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1795
- };
1796
- };
1797
- readonly type: {
1798
- readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1799
- };
1800
- };
1801
- readonly DFKVw43E36kimqj64FyiiVxE9yNuB22SETFx5M4WAi9m: {
1802
- readonly description: "The Guarantor declined the request to issue a Child PayNote.";
1803
- readonly name: "Child PayNote Issuance Declined";
1804
- readonly reason: {
1805
- readonly type: {
1806
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1807
- };
1808
- };
1809
- readonly type: {
1810
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1811
- };
1812
- };
1813
- readonly Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F: {
1814
- readonly amount: {
1815
- readonly captured: {
1816
- readonly description: "The amount that has been successfully captured.";
1817
- readonly type: {
1818
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1819
- };
1820
- };
1821
- readonly description: "The amounts associated with this PayNote.";
1822
- readonly reserved: {
1823
- readonly description: "The amount currently reserved by the Guarantor.";
1824
- readonly type: {
1825
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1826
- };
1827
- };
1828
- readonly total: {
1829
- readonly description: "The maximum total value of this PayNote.";
1830
- readonly type: {
1831
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1832
- };
1833
- };
1834
- };
1835
- readonly contracts: {
1836
- readonly guarantorChannel: {
1837
- readonly type: {
1838
- readonly blueId: "EvuCWsG1E6WJQg8QXmk6rwMANYTZjoLWVZ1vYQWUwdTH";
1839
- };
1840
- };
1841
- readonly guarantorUpdate: {
1842
- readonly channel: {
1843
- readonly type: {
1844
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1845
- };
1846
- readonly value: "guarantorChannel";
1847
- };
1848
- readonly description: "Standard operation used by the guarantor (bank) to deliver events into the document.";
1849
- readonly type: {
1850
- readonly blueId: "BoAiqVUZv9Fum3wFqaX2JnQMBHJLxJSo2V9U2UBmCfsC";
1851
- };
1852
- };
1853
- readonly guarantorUpdateImpl: {
1854
- readonly description: "Re-emits provided events (MyOS-admin style).";
1855
- readonly operation: {
1856
- readonly type: {
1857
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1858
- };
1859
- readonly value: "guarantorUpdate";
1860
- };
1861
- readonly steps: {
1862
- readonly items: readonly [{
1863
- readonly code: {
1864
- readonly type: {
1865
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1866
- };
1867
- readonly value: "return { events: event.message.request };\n";
1868
- };
1869
- readonly name: "EmitGuarantorEvents";
1870
- readonly type: {
1871
- readonly blueId: "ExZxT61PSpWHpEAtP2WKMXXqxEYN7Z13j7Zv36Dp99kS";
1872
- };
1873
- }];
1874
- };
1875
- readonly type: {
1876
- readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1877
- };
1878
- };
1879
- readonly payeeChannel: {
1880
- readonly type: {
1881
- readonly blueId: "EvuCWsG1E6WJQg8QXmk6rwMANYTZjoLWVZ1vYQWUwdTH";
1882
- };
1883
- };
1884
- readonly payerChannel: {
1885
- readonly type: {
1886
- readonly blueId: "EvuCWsG1E6WJQg8QXmk6rwMANYTZjoLWVZ1vYQWUwdTH";
1887
- };
1888
- };
1889
- };
1890
- readonly currency: {
1891
- readonly description: "The ISO 4217 currency code for the transaction.";
1892
- readonly type: {
1893
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1894
- };
1895
- };
1896
- readonly description: "A verifiable instrument for managing a commitment of value between a Payer, Payee, and Guarantor.";
1897
- readonly name: "PayNote";
1898
- readonly payNoteInitialStateDescription: {
1899
- readonly details: {
1900
- readonly description: "Complete text description of the PayNote, with everything significant explained.\nMarkdown format suggested.\n";
1901
- readonly type: {
1902
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2109
+ readonly type: {
2110
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2111
+ };
2112
+ readonly value: "/deliveryError";
2113
+ };
2114
+ readonly val: {
2115
+ readonly type: {
2116
+ readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2117
+ };
2118
+ readonly value: "${steps['Classify Identification Result'].deliveryError}";
2119
+ };
2120
+ }];
2121
+ };
2122
+ readonly name: "Apply Identification Update";
2123
+ readonly type: {
2124
+ readonly blueId: "FtHZJzH4hqAoGxFBjsmy1svfT4BwEBB4aHpFSZycZLLa";
2125
+ };
2126
+ }];
1903
2127
  };
1904
- };
1905
- readonly summary: {
1906
- readonly description: "General information about the PayNote. It should capture the most important\ninformation, most critical or non-standard elements should be covered here.\nMarkdown format suggested.\n";
1907
2128
  readonly type: {
1908
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2129
+ readonly blueId: "CGdxkNjPcsdescqLPz6SNLsMyak6demQQr7RoKNHbCyv";
1909
2130
  };
1910
2131
  };
1911
2132
  };
1912
- readonly status: {
1913
- readonly description: "The current state of the PayNote (e.g., Pending, Approved, Reserved, Captured, Released, Rejected).";
1914
- readonly type: {
1915
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1916
- };
1917
- };
1918
- readonly transactionStatus: {
1919
- readonly description: "Optional status snapshot. If present in proposal, bank validates it; if missing bank sets it at bootstrap.";
1920
- readonly type: {
1921
- readonly blueId: "FutWoAEUEb3wkmEm4YP4JGFPtu3B3PQ3m71BmnRFFnsQ";
1922
- };
1923
- };
1924
- };
1925
- readonly DhxGBjA6Gow9E6ZKZ49SdziihHZ4PeXxFNatSqmesKZu: {
1926
- readonly cardTransactionDetails: {
1927
- readonly type: {
1928
- readonly blueId: "GZLRe2fEsvs1v7dVcg9kEnCrWEdM3cUZYhFH4XqN5jQT";
1929
- };
1930
- };
1931
- readonly description: "Request to the card issuer to deny any following card transaction capture requests.";
1932
- readonly name: "Card Transaction Capture Lock Requested";
1933
- readonly type: {
1934
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1935
- };
1936
- };
1937
- readonly DiowRXdCBw83YCn5Pwcg2YABaVQZ1p4Wk1L9DJfajqp5: {
1938
- readonly description: "Card transaction capture was unlocked. Any following card transaction capture requests will be processed.";
1939
- readonly name: "Card Transaction Capture Unlocked";
1940
- readonly type: {
1941
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
1942
- };
1943
- readonly unlockedAt: {
1944
- readonly description: "Timestamp of when the card transaction capture was unlocked.";
1945
- readonly type: {
1946
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
1947
- };
1948
- };
1949
- };
1950
- readonly DqiwzsNLbHCh6PaDF6wy6ZqBSF5JV5nAQSKFKTPRTbGB: {
1951
- readonly childPayNote: {
1952
- readonly description: "Complete PayNote";
1953
- };
1954
- readonly description: "The Payer requests to cancel PayNote that is Approved but not yet\nReserved or Captured.\n";
1955
- readonly name: "PayNote Cancellation Requested";
1956
- readonly type: {
1957
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1958
- };
1959
- };
1960
- readonly DvxKVEFsDmgA1hcBDfh7t42NgTRLaxXjCrB48DufP3i3: {
1961
- readonly amount: {
1962
- readonly type: {
1963
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
1964
- };
1965
- };
1966
- readonly description: "A participant (usually the Payee) requests the final transfer of funds.";
1967
- readonly name: "Capture Funds Requested";
1968
- readonly type: {
1969
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
1970
- };
1971
- };
1972
- readonly EGRRGwNnReqfQQhKnML28DWz9MvvC3B5JgbBrCUxrZ3G: {
1973
- readonly description: "The client rejected the PayNote.";
1974
- readonly name: "PayNote Rejected By Client";
1975
- readonly reason: {
1976
- readonly description: "Optional rejection reason.";
2133
+ readonly deliveryError: {
2134
+ readonly description: "Error message when delivery fails.";
1977
2135
  readonly type: {
1978
2136
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
1979
2137
  };
1980
2138
  };
1981
- readonly rejectedAt: {
1982
- readonly description: "Timestamp when the client rejected.";
2139
+ readonly deliveryStatus: {
2140
+ readonly description: "High-level delivery status.";
1983
2141
  readonly type: {
1984
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
2142
+ readonly blueId: "58B8orsFkxxy7bWqjLXJmtBs2b5rwnNQNbeoAbGhPkJc";
1985
2143
  };
1986
2144
  };
1987
- readonly type: {
1988
- readonly blueId: "5Wz4G9qcnBJnntYRkz4dgLK5bSuoMpYJZj4j5M59z4we";
1989
- };
1990
- };
1991
- readonly EXoQHkYEDQdhGd3AeXBryzxmCTXsvTjXTfZmjwuqqbHt: {
1992
- readonly description: "Card transaction capture was locked. Any following card transaction capture requests will be rejected.";
1993
- readonly lockedAt: {
1994
- readonly description: "Timestamp of when the card transaction capture was locked.";
1995
- readonly type: {
1996
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
2145
+ readonly description: "Tracks delivery of a PayNote through a deliverer (e.g., bank) to a receiver (payer - client).";
2146
+ readonly name: "PayNote Delivery";
2147
+ readonly paymentMandateBootstrapRequest: {
2148
+ readonly description: "Optional Payment Mandate bootstrap request details for Delivery flows that require mandate attachment before proposal exposure.";
2149
+ readonly document: {
2150
+ readonly type: {
2151
+ readonly blueId: "BKKgKnHFhLmmUxq4WRvhV7HYZNu6ngDEce1LvHjZimJr";
2152
+ };
1997
2153
  };
1998
- };
1999
- readonly name: "Card Transaction Capture Locked";
2000
- readonly type: {
2001
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
2002
- };
2003
- };
2004
- readonly F4gfZeY8P8dkfwNSbEfq7xQ8axiHdfqgzGQQr3HLDyzC: {
2005
- readonly amount: {
2006
- readonly description: "Charge amount in minor currency units.";
2007
2154
  readonly type: {
2008
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
2155
+ readonly blueId: "7JqBn4KcmZbHBBiQf3CAfpHBNaTKS1qhtkATsF7f6Sxg";
2009
2156
  };
2010
2157
  };
2011
- readonly description: "Request to create a reverse-direction card charge and capture it immediately.";
2012
- readonly name: "Reverse Card Charge and Capture Immediately Requested";
2013
- readonly paymentMandateDocumentId: {
2014
- readonly description: "Optional Payment Mandate document id used to authorize charge execution.";
2015
- readonly type: {
2016
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2158
+ readonly payNoteBootstrapRequest: {
2159
+ readonly description: "PayNote bootstrap request details.";
2160
+ readonly document: {
2161
+ readonly type: {
2162
+ readonly blueId: "Dh2LtUN8Umc478kif8VWsNM1FrL5usVEeevv2GKnKP4F";
2163
+ };
2017
2164
  };
2018
- };
2019
- readonly paynote: {
2020
- readonly description: "Optional PayNote document to bootstrap for the created charge context.";
2021
- };
2022
- readonly type: {
2023
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
2024
- };
2025
- };
2026
- readonly FAZCx2s5eq9zPV64LdHNFYbjjxD3ci1ZqyTcQk5WhXAs: {
2027
- readonly childPayNote: {
2028
- readonly description: "Content of the issued PayNote";
2029
- };
2030
- readonly description: "The Guarantor confirms that a new Child PayNote has been issued against this parent.";
2031
- readonly name: "Child PayNote Issued";
2032
- readonly type: {
2033
- readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
2034
- };
2035
- };
2036
- readonly Fg5CEPi8Dbr1vBwGjzf8PbQNfuWfPP7HcLFChYwpRJq5: {
2037
- readonly amount: {
2038
- readonly description: "Charge amount in minor currency units.";
2039
2165
  readonly type: {
2040
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
2166
+ readonly blueId: "7JqBn4KcmZbHBBiQf3CAfpHBNaTKS1qhtkATsF7f6Sxg";
2041
2167
  };
2042
2168
  };
2043
- readonly description: "Request to create a reverse-direction card charge (merchant to card owner) in root context.";
2044
- readonly name: "Reverse Card Charge Requested";
2045
- readonly paymentMandateDocumentId: {
2046
- readonly description: "Optional Payment Mandate document id used to authorize charge execution.";
2169
+ readonly transactionIdentificationStatus: {
2170
+ readonly description: "Identification state (pending, identified, failed).";
2047
2171
  readonly type: {
2048
2172
  readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2049
2173
  };
2050
2174
  };
2051
- readonly paynote: {
2052
- readonly description: "Optional PayNote document to bootstrap for the created charge context.";
2053
- };
2054
- readonly type: {
2055
- readonly blueId: "8f9UhHMbRe62sFgzQVheToaJPYi7t7HPNVvpQTbqfL5n";
2056
- };
2057
2175
  };
2058
2176
  readonly FUh3TARSh4TjnWKAkM5ydjFWLWEmrFByKMBQzcgQfqRW: {
2059
2177
  readonly description: "The Guarantor attempted the transfer, but it failed for a technical reason.";
@@ -2270,117 +2388,5 @@ export declare const contents: {
2270
2388
  readonly blueId: "36epvrpVHZLjapbeZsNodz2NDnm7XZeNZcnkWHgkP1pp";
2271
2389
  };
2272
2390
  };
2273
- readonly JADRqXZ7UWNDqPt9Zhnn6831Nz2X5yeSuyew4hu6ciVq: {
2274
- readonly amountMinor: {
2275
- readonly description: "Requested amount in minor currency units.";
2276
- readonly type: {
2277
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
2278
- };
2279
- };
2280
- readonly authorizationReason: {
2281
- readonly description: "Optional authorization rejection reason.";
2282
- readonly type: {
2283
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2284
- };
2285
- };
2286
- readonly authorizationRespondedAt: {
2287
- readonly description: "Timestamp of authorization decision response.";
2288
- readonly type: {
2289
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
2290
- };
2291
- };
2292
- readonly authorizationStatus: {
2293
- readonly description: "Authorization decision status (\"approved\" | \"rejected\").";
2294
- readonly type: {
2295
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2296
- };
2297
- };
2298
- readonly authorizedAmountMinor: {
2299
- readonly description: "Authorized amount reserved against mandate capacity for this attempt.";
2300
- readonly type: {
2301
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
2302
- };
2303
- };
2304
- readonly capturedDeltaMinor: {
2305
- readonly description: "Captured delta applied for accepted settlement.";
2306
- readonly type: {
2307
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
2308
- };
2309
- };
2310
- readonly chargeMode: {
2311
- readonly description: "Requested charge mode (\"authorize_only\" | \"authorize_and_capture\").";
2312
- readonly type: {
2313
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2314
- };
2315
- };
2316
- readonly counterpartyId: {
2317
- readonly description: "Counterparty identifier interpreted according to counterpartyType.";
2318
- readonly type: {
2319
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2320
- };
2321
- };
2322
- readonly counterpartyType: {
2323
- readonly description: "Counterparty identifier type (\"merchantId\" | \"customerId\" | \"accountNumber\").";
2324
- readonly type: {
2325
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2326
- };
2327
- };
2328
- readonly currency: {
2329
- readonly description: "Requested currency.";
2330
- readonly type: {
2331
- readonly blueId: "CBnZ7aaNetj9KEqXpUWj5jvjKbmviLivP98T2EiyxiYc";
2332
- };
2333
- };
2334
- readonly description: "Stateful record for a single charge attempt tracked by Payment Mandate.";
2335
- readonly holdId: {
2336
- readonly description: "Optional hold id associated with settlement.";
2337
- readonly type: {
2338
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2339
- };
2340
- };
2341
- readonly lastSettlementProcessingStatus: {
2342
- readonly description: "Mandate processing status for last settlement (\"accepted\" | \"rejected\").";
2343
- readonly type: {
2344
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2345
- };
2346
- };
2347
- readonly lastSettlementRequestStatus: {
2348
- readonly description: "Last settlement request status received from bank (\"succeeded\" | \"failed\").";
2349
- readonly type: {
2350
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2351
- };
2352
- };
2353
- readonly name: "Payment Mandate Charge Attempt State";
2354
- readonly reservedDeltaMinor: {
2355
- readonly description: "Reserved delta applied for accepted settlement.";
2356
- readonly type: {
2357
- readonly blueId: "5WNMiV9Knz63B4dVY5JtMyh3FB4FSGqv7ceScvuapdE1";
2358
- };
2359
- };
2360
- readonly settled: {
2361
- readonly description: "Whether mandate accepted settlement for this attempt.";
2362
- readonly type: {
2363
- readonly blueId: "4EzhSubEimSQD3zrYHRtobfPPWntUuhEz8YcdxHsi12u";
2364
- };
2365
- };
2366
- readonly settlementReason: {
2367
- readonly description: "Optional settlement rejection/info reason.";
2368
- readonly type: {
2369
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2370
- };
2371
- };
2372
- readonly settlementRespondedAt: {
2373
- readonly description: "Timestamp of last settlement processing response.";
2374
- readonly type: {
2375
- readonly blueId: "GQaGqFxHDz64L1c9QkCbz52ths6bMVtpHnw4QDngzQYs";
2376
- };
2377
- };
2378
- readonly transactionId: {
2379
- readonly description: "Optional transaction id associated with settlement.";
2380
- readonly type: {
2381
- readonly blueId: "DLRQwz7MQeCrzjy9bohPNwtCxKEBbKaMK65KBrwjfG6K";
2382
- };
2383
- };
2384
- };
2385
2391
  };
2386
2392
  //# sourceMappingURL=index.d.ts.map