@mojaloop/api-snippets 17.0.2-snapshot.1 → 17.0.2

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.
@@ -38,493 +38,19 @@ paths:
38
38
  content:
39
39
  application/json:
40
40
  schema:
41
- description: A request for a bulk quote.
42
- properties: &ref_47
43
- bulkQuoteId:
44
- description: A Mojaloop API bulk quote identifier (UUID).
45
- pattern: >-
46
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
47
- type: string
48
- expiration:
49
- description: An ISO-8601 formatted timestamp.
50
- pattern: >-
51
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
52
- type: string
53
- from:
54
- properties: &ref_1
55
- dateOfBirth:
56
- description: Date of birth in the form YYYY-MM-DD.
57
- pattern: >-
58
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
59
- type: string
60
- displayName:
61
- description: Display name of the sender, if known.
62
- type: string
63
- extensionList:
64
- items: &ref_17
65
- properties: &ref_51
66
- key:
67
- maxLength: 32
68
- minLength: 1
69
- type: string
70
- value:
71
- maxLength: 128
72
- minLength: 1
73
- type: string
74
- type: object
75
- maxItems: 16
76
- minItems: 0
77
- type: array
78
- firstName:
79
- description: Party first name.
80
- type: string
81
- fspId:
82
- description: >-
83
- Mojaloop scheme FSPID of the DFSP which owns the party
84
- account.
85
- type: string
86
- idSubValue:
87
- maxLength: 128
88
- minLength: 1
89
- type: string
90
- idType:
91
- enum: &ref_55
92
- - MSISDN
93
- - ACCOUNT_NO
94
- - EMAIL
95
- - PERSONAL_ID
96
- - BUSINESS
97
- - DEVICE
98
- - ACCOUNT_ID
99
- - IBAN
100
- - ALIAS
101
- type: string
102
- idValue:
103
- description: The identifier string used to identify the sender.
104
- type: string
105
- lastName:
106
- description: Party last name.
107
- type: string
108
- merchantClassificationCode:
109
- description: >-
110
- Up to 4 digits specifying the sender's merchant
111
- classification, if known and applicable.
112
- type: string
113
- middleName:
114
- description: Party middle name.
115
- type: string
116
- type:
117
- enum: &ref_60
118
- - CONSUMER
119
- - AGENT
120
- - BUSINESS
121
- - DEVICE
122
- type: string
123
- required: &ref_2
124
- - idType
125
- - idValue
126
- type: object
127
- geoCode:
128
- description: >-
129
- Indicates the geographic location from where the transaction
130
- was initiated.
131
- properties: &ref_24
132
- latitude:
133
- description: >-
134
- The API data type Latitude is a JSON String in a lexical
135
- format that is restricted by a regular expression for
136
- interoperability reasons.
137
- pattern: >-
138
- ^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$
139
- type: string
140
- longitude:
141
- description: >-
142
- The API data type Longitude is a JSON String in a
143
- lexical format that is restricted by a regular
144
- expression for interoperability reasons.
145
- pattern: >-
146
- ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
147
- type: string
148
- required: &ref_25
149
- - latitude
150
- - longitude
151
- type: object
152
- individualQuotes:
153
- items:
154
- description: Data model for individual quote in a bulk quote request.
155
- properties: &ref_35
156
- amount:
157
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
158
- type: string
159
- amountType:
160
- enum: &ref_13
161
- - SEND
162
- - RECEIVE
163
- type: string
164
- currency:
165
- enum: &ref_0
166
- - AED
167
- - AFN
168
- - ALL
169
- - AMD
170
- - ANG
171
- - AOA
172
- - ARS
173
- - AUD
174
- - AWG
175
- - AZN
176
- - BAM
177
- - BBD
178
- - BDT
179
- - BGN
180
- - BHD
181
- - BIF
182
- - BMD
183
- - BND
184
- - BOB
185
- - BRL
186
- - BSD
187
- - BTN
188
- - BWP
189
- - BYN
190
- - BZD
191
- - CAD
192
- - CDF
193
- - CHF
194
- - CLP
195
- - CNY
196
- - COP
197
- - CRC
198
- - CUC
199
- - CUP
200
- - CVE
201
- - CZK
202
- - DJF
203
- - DKK
204
- - DOP
205
- - DZD
206
- - EGP
207
- - ERN
208
- - ETB
209
- - EUR
210
- - FJD
211
- - FKP
212
- - GBP
213
- - GEL
214
- - GGP
215
- - GHS
216
- - GIP
217
- - GMD
218
- - GNF
219
- - GTQ
220
- - GYD
221
- - HKD
222
- - HNL
223
- - HRK
224
- - HTG
225
- - HUF
226
- - IDR
227
- - ILS
228
- - IMP
229
- - INR
230
- - IQD
231
- - IRR
232
- - ISK
233
- - JEP
234
- - JMD
235
- - JOD
236
- - JPY
237
- - KES
238
- - KGS
239
- - KHR
240
- - KMF
241
- - KPW
242
- - KRW
243
- - KWD
244
- - KYD
245
- - KZT
246
- - LAK
247
- - LBP
248
- - LKR
249
- - LRD
250
- - LSL
251
- - LYD
252
- - MAD
253
- - MDL
254
- - MGA
255
- - MKD
256
- - MMK
257
- - MNT
258
- - MOP
259
- - MRO
260
- - MUR
261
- - MVR
262
- - MWK
263
- - MXN
264
- - MYR
265
- - MZN
266
- - NAD
267
- - NGN
268
- - NIO
269
- - NOK
270
- - NPR
271
- - NZD
272
- - OMR
273
- - PAB
274
- - PEN
275
- - PGK
276
- - PHP
277
- - PKR
278
- - PLN
279
- - PYG
280
- - QAR
281
- - RON
282
- - RSD
283
- - RUB
284
- - RWF
285
- - SAR
286
- - SBD
287
- - SCR
288
- - SDG
289
- - SEK
290
- - SGD
291
- - SHP
292
- - SLL
293
- - SOS
294
- - SPL
295
- - SRD
296
- - STD
297
- - SVC
298
- - SYP
299
- - SZL
300
- - THB
301
- - TJS
302
- - TMT
303
- - TND
304
- - TOP
305
- - TRY
306
- - TTD
307
- - TVD
308
- - TWD
309
- - TZS
310
- - UAH
311
- - UGX
312
- - USD
313
- - UYU
314
- - UZS
315
- - VEF
316
- - VND
317
- - VUV
318
- - WST
319
- - XAF
320
- - XCD
321
- - XDR
322
- - XOF
323
- - XPF
324
- - XTS
325
- - XXX
326
- - YER
327
- - ZAR
328
- - ZMW
329
- - ZWD
330
- maxLength: 3
331
- minLength: 3
332
- type: string
333
- feesAmount:
334
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
335
- type: string
336
- feesCurrency:
337
- enum: *ref_0
338
- maxLength: 3
339
- minLength: 3
340
- type: string
341
- initiator:
342
- enum: &ref_14
343
- - PAYER
344
- - PAYEE
345
- type: string
346
- initiatorType:
347
- enum: &ref_15
348
- - CONSUMER
349
- - AGENT
350
- - BUSINESS
351
- - DEVICE
352
- type: string
353
- note:
354
- description: An optional note associated with the quote.
355
- maxLength: 128
356
- minLength: 1
357
- type: string
358
- quoteId:
359
- description: A Mojaloop API quote identifier (UUID).
360
- pattern: >-
361
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
362
- type: string
363
- subScenario:
364
- description: >-
365
- Possible sub-scenario, defined locally within the
366
- scheme (UndefinedEnum Type). Based on FSPIOP
367
- TransactionSubScenario.
368
- example: LOCALLY_DEFINED_SUBSCENARIO
369
- pattern: ^[A-Z_]{1,32}$
370
- title: transactionSubScenario
371
- type: string
372
- to:
373
- properties: *ref_1
374
- required: *ref_2
375
- type: object
376
- transactionId:
377
- description: >-
378
- ID of the transaction, the ID is decided by the Payer
379
- FSP during the creation of the quote.
380
- pattern: >-
381
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
382
- type: string
383
- transactionType:
384
- enum: &ref_16
385
- - TRANSFER
386
- - DEPOSIT
387
- - PAYMENT
388
- type: string
389
- required: &ref_36
390
- - quoteId
391
- - transactionId
392
- - to
393
- - amountType
394
- - amount
395
- - currency
396
- - transactionType
397
- - initiator
398
- - initiatorType
399
- type: object
400
- maxItems: 1000
401
- minItems: 1
402
- type: array
403
- required: &ref_48
404
- - bulkQuoteId
405
- - from
406
- - individualQuotes
407
- type: object
41
+ $ref: '#/components/schemas/bulkQuoteRequest'
408
42
  description: Incoming request for a bulk quotation.
409
43
  responses:
410
44
  '200':
411
45
  content:
412
46
  application/json:
413
47
  schema:
414
- description: A response to a request for a bulk quote.
415
- properties: &ref_4
416
- bulkQuoteId:
417
- description: A Mojaloop API bulk quote identifier (UUID).
418
- pattern: >-
419
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
420
- type: string
421
- expiration:
422
- description: An ISO-8601 formatted timestamp.
423
- pattern: >-
424
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
425
- type: string
426
- individualQuoteResults:
427
- description: >-
428
- Fees for each individual transaction, if any of them are
429
- charged per transaction.
430
- items:
431
- oneOf:
432
- - description: >-
433
- Data model for successful individual quote in a bulk
434
- quote response.
435
- properties: &ref_39
436
- payeeFspCommissionAmount:
437
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
438
- type: string
439
- payeeFspCommissionAmountCurrency:
440
- enum: *ref_0
441
- maxLength: 3
442
- minLength: 3
443
- type: string
444
- payeeFspFeeAmount:
445
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
446
- type: string
447
- payeeFspFeeAmountCurrency:
448
- enum: *ref_0
449
- maxLength: 3
450
- minLength: 3
451
- type: string
452
- payeeReceiveAmount:
453
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
454
- type: string
455
- payeeReceiveAmountCurrency:
456
- enum: *ref_0
457
- maxLength: 3
458
- minLength: 3
459
- type: string
460
- quoteId:
461
- description: A Mojaloop API quote identifier (UUID).
462
- pattern: >-
463
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
464
- type: string
465
- transferAmount:
466
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
467
- type: string
468
- transferAmountCurrency:
469
- enum: *ref_0
470
- maxLength: 3
471
- minLength: 3
472
- type: string
473
- required: &ref_40
474
- - quoteId
475
- type: object
476
- - description: >-
477
- Data model for failed individual quote in a bulk
478
- quote response.
479
- properties: &ref_37
480
- errorResponse:
481
- properties: &ref_3
482
- message:
483
- description: Error message text
484
- type: string
485
- statusCode:
486
- description: >
487
- Backend error code from FSP. Ideally,
488
- statusCode is FSPIOP conforming. SDK will
489
- use status code to retrieve an FSPIOP error
490
- with the same code.
491
-
492
- Otherwise, a suitable generic FSPIOP will be
493
- used with the errorResponse in the FSPIOP
494
- error message.
495
- type: string
496
- type: object
497
- quoteId:
498
- description: A Mojaloop API quote identifier (UUID).
499
- pattern: >-
500
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
501
- type: string
502
- required: &ref_38
503
- - quoteId
504
- - errorResponse
505
- type: object
506
- maxItems: 1000
507
- minItems: 1
508
- type: array
509
- required: &ref_5
510
- - bulkQuoteId
511
- - individualQuoteResults
512
- type: object
48
+ $ref: '#/components/schemas/bulkQuoteResponse'
513
49
  description: A response to the bulk quote request.
514
50
  '400':
515
- content: &ref_6
516
- application/json:
517
- schema:
518
- properties: *ref_3
519
- type: object
520
- description: Malformed or missing required headers or parameters.
51
+ $ref: '#/components/responses/400'
521
52
  '500':
522
- content: &ref_7
523
- application/json:
524
- schema:
525
- properties: *ref_3
526
- type: object
527
- description: An error occurred processing the request.
53
+ $ref: '#/components/responses/500'
528
54
  summary: Requests a bulk quote.
529
55
  tags:
530
56
  - BulkQuotes
@@ -532,32 +58,20 @@ paths:
532
58
  get:
533
59
  operationId: BackendBulkQuotesGet
534
60
  parameters:
535
- - description: The identifier value.
536
- in: path
537
- name: idValue
538
- required: true
539
- schema: &ref_18
540
- type: string
61
+ - $ref: '#/components/parameters/idValue'
541
62
  responses:
542
63
  '200':
543
64
  content:
544
65
  application/json:
545
66
  schema:
546
- description: A response to a request for a bulk quote.
547
- properties: *ref_4
548
- required: *ref_5
549
- type: object
67
+ $ref: '#/components/schemas/bulkQuoteResponse'
550
68
  description: Response containing details of the requested bulk quote.
551
69
  '400':
552
- content: *ref_6
553
- description: Malformed or missing required headers or parameters.
70
+ $ref: '#/components/responses/400'
554
71
  '404':
555
- description: >-
556
- The party specified by the provided identifier type and value is not
557
- known to the server.
72
+ $ref: '#/components/responses/404'
558
73
  '500':
559
- content: *ref_7
560
- description: An error occurred processing the request.
74
+ $ref: '#/components/responses/500'
561
75
  summary: >-
562
76
  Requests information relating to a bulk quote identified by the
563
77
  specified identifier value.
@@ -574,988 +88,19 @@ paths:
574
88
  `bulkTransactionId` that was used for the creation of the bulk transfer.
575
89
  operationId: BackendBulkTransactionsPut
576
90
  parameters:
577
- - name: bulkTransactionId
578
- in: path
579
- required: true
580
- schema: &ref_34
581
- title: CorrelationId
582
- type: string
583
- pattern: >-
584
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
585
- description: >-
586
- Identifier that correlates all messages of the same sequence. The
587
- API data type UUID (Universally Unique Identifier) is a JSON
588
- String in canonical format, conforming to [RFC
589
- 4122](https://tools.ietf.org/html/rfc4122), that is restricted by
590
- a regular expression for interoperability reasons. A UUID is
591
- always 36 characters long, 32 hexadecimal symbols and 4 dashes
592
- (‘-‘).
593
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
594
- description: >-
595
- Identifier of the bulk transaction to continue as returned in the
596
- response to a `POST /bulkTransaction` request.
91
+ - $ref: '#/components/parameters/bulkTransactionId'
597
92
  requestBody:
598
93
  content:
599
94
  application/json:
600
95
  schema:
601
- title: BulkTransactionResponse
602
- type: object
603
- required: &ref_107
604
- - bulkHomeTransactionID
605
- - bulkTransactionId
606
- - currentState
607
- - individualTransferResults
608
- properties: &ref_108
609
- bulkHomeTransactionID:
610
- type: string
611
- description: >-
612
- Transaction ID from the DFSP backend, used to reconcile
613
- transactions between the Switch and DFSP backend systems.
614
- bulkTransactionId:
615
- title: CorrelationId
616
- type: string
617
- pattern: >-
618
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
619
- description: >-
620
- Identifier that correlates all messages of the same
621
- sequence. The API data type UUID (Universally Unique
622
- Identifier) is a JSON String in canonical format, conforming
623
- to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is
624
- restricted by a regular expression for interoperability
625
- reasons. A UUID is always 36 characters long, 32 hexadecimal
626
- symbols and 4 dashes (‘-‘).
627
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
628
- currentState:
629
- type: string
630
- enum: &ref_78
631
- - ERROR_OCCURRED
632
- - WAITING_FOR_PARTY_ACCEPTANCE
633
- - WAITING_FOR_QUOTE_ACCEPTANCE
634
- - COMPLETED
635
- options:
636
- type: object
637
- required: &ref_85
638
- - autoAcceptParty
639
- - autoAcceptQuote
640
- - bulkExpiration
641
- properties: &ref_86
642
- onlyValidateParty:
643
- description: >-
644
- Set to true if only party validation is required. This
645
- means the quotes and transfers will not run. This is
646
- useful for only party resolution.
647
- type: boolean
648
- autoAcceptParty:
649
- type: object
650
- required: &ref_79
651
- - enabled
652
- properties: &ref_80
653
- enabled:
654
- type: boolean
655
- enum:
656
- - false
657
- - true
658
- autoAcceptQuote:
659
- description: >-
660
- Set to true if the quote response is accepted without
661
- confirmation from the payer. The fees applied by the
662
- payee will be acceptable to the payer abiding by the
663
- limits set by optional 'perTransferFeeLimits' array.
664
- type: object
665
- oneOf:
666
- - type: object
667
- required: &ref_83
668
- - enabled
669
- properties: &ref_84
670
- enabled:
671
- type: boolean
672
- enum:
673
- - true
674
- - false
675
- perTransferFeeLimits:
676
- type: array
677
- minItems: 0
678
- items:
679
- type: object
680
- required: &ref_81
681
- - currency
682
- - amount
683
- properties: &ref_82
684
- currency:
685
- title: Currency
686
- description: >-
687
- The currency codes defined in [ISO
688
- 4217](https://www.iso.org/iso-4217-currency-codes.html)
689
- as three-letter alphabetic codes are used
690
- as the standard naming representation for
691
- currencies.
692
- type: string
693
- minLength: 3
694
- maxLength: 3
695
- enum: &ref_8
696
- - AED
697
- - AFN
698
- - ALL
699
- - AMD
700
- - ANG
701
- - AOA
702
- - ARS
703
- - AUD
704
- - AWG
705
- - AZN
706
- - BAM
707
- - BBD
708
- - BDT
709
- - BGN
710
- - BHD
711
- - BIF
712
- - BMD
713
- - BND
714
- - BOB
715
- - BRL
716
- - BSD
717
- - BTN
718
- - BWP
719
- - BYN
720
- - BZD
721
- - CAD
722
- - CDF
723
- - CHF
724
- - CLP
725
- - CNY
726
- - COP
727
- - CRC
728
- - CUC
729
- - CUP
730
- - CVE
731
- - CZK
732
- - DJF
733
- - DKK
734
- - DOP
735
- - DZD
736
- - EGP
737
- - ERN
738
- - ETB
739
- - EUR
740
- - FJD
741
- - FKP
742
- - GBP
743
- - GEL
744
- - GGP
745
- - GHS
746
- - GIP
747
- - GMD
748
- - GNF
749
- - GTQ
750
- - GYD
751
- - HKD
752
- - HNL
753
- - HRK
754
- - HTG
755
- - HUF
756
- - IDR
757
- - ILS
758
- - IMP
759
- - INR
760
- - IQD
761
- - IRR
762
- - ISK
763
- - JEP
764
- - JMD
765
- - JOD
766
- - JPY
767
- - KES
768
- - KGS
769
- - KHR
770
- - KMF
771
- - KPW
772
- - KRW
773
- - KWD
774
- - KYD
775
- - KZT
776
- - LAK
777
- - LBP
778
- - LKR
779
- - LRD
780
- - LSL
781
- - LYD
782
- - MAD
783
- - MDL
784
- - MGA
785
- - MKD
786
- - MMK
787
- - MNT
788
- - MOP
789
- - MRO
790
- - MUR
791
- - MVR
792
- - MWK
793
- - MXN
794
- - MYR
795
- - MZN
796
- - NAD
797
- - NGN
798
- - NIO
799
- - NOK
800
- - NPR
801
- - NZD
802
- - OMR
803
- - PAB
804
- - PEN
805
- - PGK
806
- - PHP
807
- - PKR
808
- - PLN
809
- - PYG
810
- - QAR
811
- - RON
812
- - RSD
813
- - RUB
814
- - RWF
815
- - SAR
816
- - SBD
817
- - SCR
818
- - SDG
819
- - SEK
820
- - SGD
821
- - SHP
822
- - SLL
823
- - SOS
824
- - SPL
825
- - SRD
826
- - STD
827
- - SVC
828
- - SYP
829
- - SZL
830
- - THB
831
- - TJS
832
- - TMT
833
- - TND
834
- - TOP
835
- - TRY
836
- - TTD
837
- - TVD
838
- - TWD
839
- - TZS
840
- - UAH
841
- - UGX
842
- - USD
843
- - UYU
844
- - UZS
845
- - VEF
846
- - VND
847
- - VUV
848
- - WST
849
- - XAF
850
- - XCD
851
- - XDR
852
- - XOF
853
- - XPF
854
- - XTS
855
- - XXX
856
- - YER
857
- - ZAR
858
- - ZMW
859
- - ZWD
860
- amount:
861
- title: Amount
862
- type: string
863
- pattern: >-
864
- ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
865
- description: >-
866
- The API data type Amount is a JSON String
867
- in a canonical format that is restricted
868
- by a regular expression for
869
- interoperability reasons. This pattern
870
- does not allow any trailing zeroes at all,
871
- but allows an amount without a minor
872
- currency unit. It also only allows four
873
- digits in the minor currency unit; a
874
- negative value is not allowed. Using more
875
- than 18 digits in the major currency unit
876
- is not allowed.
877
- example: '123.45'
878
- skipPartyLookup:
879
- description: >-
880
- Set to true if supplying an FSPID for the payee party
881
- and no party resolution is needed. This may be useful if
882
- a previous party resolution has been performed.
883
- type: boolean
884
- synchronous:
885
- description: >-
886
- Set to true if the bulkTransfer requests need be handled
887
- synchronous. Otherwise the requests will be handled
888
- asynchronously, meaning there will be callbacks
889
- whenever the processing is done
890
- type: boolean
891
- bulkExpiration:
892
- title: DateTime
893
- type: string
894
- pattern: >-
895
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
896
- description: >-
897
- The API data type DateTime is a JSON String in a lexical
898
- format that is restricted by a regular expression for
899
- interoperability reasons. The format is according to
900
- [ISO
901
- 8601](https://www.iso.org/iso-8601-date-and-time-format.html),
902
- expressed in a combined date, time and time zone format.
903
- A more readable version of the format is
904
- yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are
905
- "2016-05-24T08:38:08.699-04:00",
906
- "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time
907
- zone, same as UTC).
908
- example: '2016-05-24T08:38:08.699-04:00'
909
- individualTransferResults:
910
- description: >-
911
- List of individual transfer result in a bulk transfer
912
- response.
913
- type: array
914
- minItems: 1
915
- items:
916
- type: object
917
- required: &ref_105
918
- - homeTransactionId
919
- - transferId
920
- - to
921
- - amountType
922
- - currency
923
- - amount
924
- properties: &ref_106
925
- transferId:
926
- title: CorrelationId
927
- type: string
928
- pattern: >-
929
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
930
- description: >-
931
- Identifier that correlates all messages of the same
932
- sequence. The API data type UUID (Universally Unique
933
- Identifier) is a JSON String in canonical format,
934
- conforming to [RFC
935
- 4122](https://tools.ietf.org/html/rfc4122), that is
936
- restricted by a regular expression for
937
- interoperability reasons. A UUID is always 36
938
- characters long, 32 hexadecimal symbols and 4 dashes
939
- (‘-‘).
940
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
941
- homeTransactionId:
942
- type: string
943
- description: >-
944
- Transaction ID from the DFSP backend, used to
945
- reconcile transactions between the Switch and DFSP
946
- backend systems.
947
- transactionId:
948
- title: CorrelationId
949
- type: string
950
- pattern: >-
951
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
952
- description: >-
953
- Identifier that correlates all messages of the same
954
- sequence. The API data type UUID (Universally Unique
955
- Identifier) is a JSON String in canonical format,
956
- conforming to [RFC
957
- 4122](https://tools.ietf.org/html/rfc4122), that is
958
- restricted by a regular expression for
959
- interoperability reasons. A UUID is always 36
960
- characters long, 32 hexadecimal symbols and 4 dashes
961
- (‘-‘).
962
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
963
- to:
964
- title: Party
965
- type: object
966
- description: Data model for the complex type Party.
967
- properties: &ref_26
968
- partyIdInfo:
969
- title: PartyIdInfo
970
- type: object
971
- description: >-
972
- Data model for the complex type PartyIdInfo. An
973
- ExtensionList element has been added to this
974
- reqeust in version v1.1
975
- properties: &ref_90
976
- partyIdType:
977
- title: PartyIdType
978
- type: string
979
- enum: &ref_87
980
- - MSISDN
981
- - EMAIL
982
- - PERSONAL_ID
983
- - BUSINESS
984
- - DEVICE
985
- - ACCOUNT_ID
986
- - IBAN
987
- - ALIAS
988
- description: >-
989
- Below are the allowed values for the
990
- enumeration.
991
-
992
- - MSISDN - An MSISDN (Mobile Station
993
- International Subscriber Directory Number,
994
- that is, the phone number) is used as
995
- reference to a participant. The MSISDN
996
- identifier should be in international format
997
- according to the [ITU-T E.164
998
- standard](https://www.itu.int/rec/T-REC-E.164/en).
999
- Optionally, the MSISDN may be prefixed by a
1000
- single plus sign, indicating the international
1001
- prefix.
1002
-
1003
- - EMAIL - An email is used as reference to a
1004
- participant. The format of the email should be
1005
- according to the informational [RFC
1006
- 3696](https://tools.ietf.org/html/rfc3696).
1007
-
1008
- - PERSONAL_ID - A personal identifier is used
1009
- as reference to a participant. Examples of
1010
- personal identification are passport number,
1011
- birth certificate number, and national
1012
- registration number. The identifier number is
1013
- added in the PartyIdentifier element. The
1014
- personal identifier type is added in the
1015
- PartySubIdOrType element.
1016
-
1017
- - BUSINESS - A specific Business (for example,
1018
- an organization or a company) is used as
1019
- reference to a participant. The BUSINESS
1020
- identifier can be in any format. To make a
1021
- transaction connected to a specific username
1022
- or bill number in a Business, the
1023
- PartySubIdOrType element should be used.
1024
-
1025
- - DEVICE - A specific device (for example, a
1026
- POS or ATM) ID connected to a specific
1027
- business or organization is used as reference
1028
- to a Party. For referencing a specific device
1029
- under a specific business or organization, use
1030
- the PartySubIdOrType element.
1031
-
1032
- - ACCOUNT_ID - A bank account number or FSP
1033
- account ID should be used as reference to a
1034
- participant. The ACCOUNT_ID identifier can be
1035
- in any format, as formats can greatly differ
1036
- depending on country and FSP.
1037
-
1038
- - IBAN - A bank account number or FSP account
1039
- ID is used as reference to a participant. The
1040
- IBAN identifier can consist of up to 34
1041
- alphanumeric characters and should be entered
1042
- without whitespace.
1043
-
1044
- - ALIAS An alias is used as reference to a
1045
- participant. The alias should be created in
1046
- the FSP as an alternative reference to an
1047
- account owner. Another example of an alias is
1048
- a username in the FSP system. The ALIAS
1049
- identifier can be in any format. It is also
1050
- possible to use the PartySubIdOrType element
1051
- for identifying an account under an Alias
1052
- defined by the PartyIdentifier.
1053
- partyIdentifier:
1054
- title: PartyIdentifier
1055
- type: string
1056
- minLength: 1
1057
- maxLength: 128
1058
- description: Identifier of the Party.
1059
- example: '16135551212'
1060
- partySubIdOrType:
1061
- title: PartySubIdOrType
1062
- type: string
1063
- minLength: 1
1064
- maxLength: 128
1065
- description: >-
1066
- Either a sub-identifier of a PartyIdentifier,
1067
- or a sub-type of the PartyIdType, normally a
1068
- PersonalIdentifierType.
1069
- fspId:
1070
- title: FspId
1071
- type: string
1072
- minLength: 1
1073
- maxLength: 32
1074
- description: FSP identifier.
1075
- extensionList:
1076
- title: ExtensionList
1077
- type: object
1078
- description: >-
1079
- Data model for the complex type ExtensionList.
1080
- An optional list of extensions, specific to
1081
- deployment.
1082
- properties: &ref_11
1083
- extension:
1084
- type: array
1085
- items:
1086
- title: Extension
1087
- type: object
1088
- description: >-
1089
- Data model for the complex type
1090
- Extension.
1091
- properties: &ref_88
1092
- key:
1093
- title: ExtensionKey
1094
- type: string
1095
- minLength: 1
1096
- maxLength: 32
1097
- description: Extension key.
1098
- value:
1099
- title: ExtensionValue
1100
- type: string
1101
- minLength: 1
1102
- maxLength: 128
1103
- description: Extension value.
1104
- required: &ref_89
1105
- - key
1106
- - value
1107
- minItems: 1
1108
- maxItems: 16
1109
- description: Number of Extension elements.
1110
- required: &ref_12
1111
- - extension
1112
- required: &ref_91
1113
- - partyIdType
1114
- - partyIdentifier
1115
- merchantClassificationCode:
1116
- title: MerchantClassificationCode
1117
- type: string
1118
- pattern: ^[\d]{1,4}$
1119
- description: >-
1120
- A limited set of pre-defined numbers. This list
1121
- would be a limited set of numbers identifying a
1122
- set of popular merchant types like School Fees,
1123
- Pubs and Restaurants, Groceries, etc.
1124
- name:
1125
- title: PartyName
1126
- type: string
1127
- minLength: 1
1128
- maxLength: 128
1129
- description: >-
1130
- Name of the Party. Could be a real name or a
1131
- nickname.
1132
- personalInfo:
1133
- title: PartyPersonalInfo
1134
- type: object
1135
- description: Data model for the complex type PartyPersonalInfo.
1136
- properties: &ref_93
1137
- complexName:
1138
- title: PartyComplexName
1139
- type: object
1140
- description: >-
1141
- Data model for the complex type
1142
- PartyComplexName.
1143
- properties: &ref_92
1144
- firstName:
1145
- title: FirstName
1146
- type: string
1147
- minLength: 1
1148
- maxLength: 128
1149
- pattern: >-
1150
- ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
1151
- .,''-]{1,128}$
1152
- description: First name of the Party (Name Type).
1153
- example: Henrik
1154
- middleName:
1155
- title: MiddleName
1156
- type: string
1157
- minLength: 1
1158
- maxLength: 128
1159
- pattern: >-
1160
- ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
1161
- .,''-]{1,128}$
1162
- description: Middle name of the Party (Name Type).
1163
- example: Johannes
1164
- lastName:
1165
- title: LastName
1166
- type: string
1167
- minLength: 1
1168
- maxLength: 128
1169
- pattern: >-
1170
- ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
1171
- .,''-]{1,128}$
1172
- description: Last name of the Party (Name Type).
1173
- example: Karlsson
1174
- dateOfBirth:
1175
- title: DateofBirth (type Date)
1176
- type: string
1177
- pattern: >-
1178
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
1179
- description: Date of Birth of the Party.
1180
- example: '1966-06-16'
1181
- required: &ref_27
1182
- - partyIdInfo
1183
- reference:
1184
- description: Payer Loan reference
1185
- type: string
1186
- amountType:
1187
- title: AmountType
1188
- type: string
1189
- enum: &ref_94
1190
- - SEND
1191
- - RECEIVE
1192
- description: >-
1193
- Below are the allowed values for the enumeration
1194
- AmountType.
1195
-
1196
- - SEND - Amount the Payer would like to send, that is,
1197
- the amount that should be withdrawn from the Payer
1198
- account including any fees.
1199
-
1200
- - RECEIVE - Amount the Payer would like the Payee to
1201
- receive, that is, the amount that should be sent to
1202
- the receiver exclusive of any fees.
1203
- example: RECEIVE
1204
- currency:
1205
- title: Currency
1206
- description: >-
1207
- The currency codes defined in [ISO
1208
- 4217](https://www.iso.org/iso-4217-currency-codes.html)
1209
- as three-letter alphabetic codes are used as the
1210
- standard naming representation for currencies.
1211
- type: string
1212
- minLength: 3
1213
- maxLength: 3
1214
- enum: *ref_8
1215
- amount:
1216
- title: Amount
1217
- type: string
1218
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1219
- description: >-
1220
- The API data type Amount is a JSON String in a
1221
- canonical format that is restricted by a regular
1222
- expression for interoperability reasons. This pattern
1223
- does not allow any trailing zeroes at all, but allows
1224
- an amount without a minor currency unit. It also only
1225
- allows four digits in the minor currency unit; a
1226
- negative value is not allowed. Using more than 18
1227
- digits in the major currency unit is not allowed.
1228
- example: '123.45'
1229
- note:
1230
- title: Note
1231
- type: string
1232
- minLength: 1
1233
- maxLength: 128
1234
- description: Memo assigned to transaction.
1235
- example: Note sent to Payee.
1236
- quoteId:
1237
- title: CorrelationId
1238
- type: string
1239
- pattern: >-
1240
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1241
- description: >-
1242
- Identifier that correlates all messages of the same
1243
- sequence. The API data type UUID (Universally Unique
1244
- Identifier) is a JSON String in canonical format,
1245
- conforming to [RFC
1246
- 4122](https://tools.ietf.org/html/rfc4122), that is
1247
- restricted by a regular expression for
1248
- interoperability reasons. A UUID is always 36
1249
- characters long, 32 hexadecimal symbols and 4 dashes
1250
- (‘-‘).
1251
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
1252
- quoteResponse:
1253
- title: QuotesIDPutResponse
1254
- type: object
1255
- description: The object sent in the PUT /quotes/{ID} callback.
1256
- properties: &ref_97
1257
- transferAmount:
1258
- title: Money
1259
- type: object
1260
- description: Data model for the complex type Money.
1261
- properties: &ref_9
1262
- currency:
1263
- title: Currency
1264
- description: >-
1265
- The currency codes defined in [ISO
1266
- 4217](https://www.iso.org/iso-4217-currency-codes.html)
1267
- as three-letter alphabetic codes are used as
1268
- the standard naming representation for
1269
- currencies.
1270
- type: string
1271
- minLength: 3
1272
- maxLength: 3
1273
- enum: *ref_8
1274
- amount:
1275
- title: Amount
1276
- type: string
1277
- pattern: >-
1278
- ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1279
- description: >-
1280
- The API data type Amount is a JSON String in a
1281
- canonical format that is restricted by a
1282
- regular expression for interoperability
1283
- reasons. This pattern does not allow any
1284
- trailing zeroes at all, but allows an amount
1285
- without a minor currency unit. It also only
1286
- allows four digits in the minor currency unit;
1287
- a negative value is not allowed. Using more
1288
- than 18 digits in the major currency unit is
1289
- not allowed.
1290
- example: '123.45'
1291
- required: &ref_10
1292
- - currency
1293
- - amount
1294
- payeeReceiveAmount:
1295
- title: Money
1296
- type: object
1297
- description: Data model for the complex type Money.
1298
- properties: *ref_9
1299
- required: *ref_10
1300
- payeeFspFee:
1301
- title: Money
1302
- type: object
1303
- description: Data model for the complex type Money.
1304
- properties: *ref_9
1305
- required: *ref_10
1306
- payeeFspCommission:
1307
- title: Money
1308
- type: object
1309
- description: Data model for the complex type Money.
1310
- properties: *ref_9
1311
- required: *ref_10
1312
- expiration:
1313
- title: DateTime
1314
- type: string
1315
- pattern: >-
1316
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
1317
- description: >-
1318
- The API data type DateTime is a JSON String in a
1319
- lexical format that is restricted by a regular
1320
- expression for interoperability reasons. The
1321
- format is according to [ISO
1322
- 8601](https://www.iso.org/iso-8601-date-and-time-format.html),
1323
- expressed in a combined date, time and time zone
1324
- format. A more readable version of the format is
1325
- yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are
1326
- "2016-05-24T08:38:08.699-04:00",
1327
- "2016-05-24T08:38:08.699Z" (where Z indicates Zulu
1328
- time zone, same as UTC).
1329
- example: '2016-05-24T08:38:08.699-04:00'
1330
- geoCode:
1331
- title: GeoCode
1332
- type: object
1333
- description: >-
1334
- Data model for the complex type GeoCode. Indicates
1335
- the geographic location from where the transaction
1336
- was initiated.
1337
- properties: &ref_95
1338
- latitude:
1339
- title: Latitude
1340
- type: string
1341
- pattern: >-
1342
- ^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$
1343
- description: >-
1344
- The API data type Latitude is a JSON String in
1345
- a lexical format that is restricted by a
1346
- regular expression for interoperability
1347
- reasons.
1348
- example: '+45.4215'
1349
- longitude:
1350
- title: Longitude
1351
- type: string
1352
- pattern: >-
1353
- ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
1354
- description: >-
1355
- The API data type Longitude is a JSON String
1356
- in a lexical format that is restricted by a
1357
- regular expression for interoperability
1358
- reasons.
1359
- example: '+75.6972'
1360
- required: &ref_96
1361
- - latitude
1362
- - longitude
1363
- ilpPacket:
1364
- title: IlpPacket
1365
- type: string
1366
- pattern: ^[A-Za-z0-9-_]+[=]{0,2}$
1367
- minLength: 1
1368
- maxLength: 32768
1369
- description: >-
1370
- Information for recipient (transport layer
1371
- information).
1372
- example: >-
1373
- AYIBgQAAAAAAAASwNGxldmVsb25lLmRmc3AxLm1lci45T2RTOF81MDdqUUZERmZlakgyOVc4bXFmNEpLMHlGTFGCAUBQU0svMS4wCk5vbmNlOiB1SXlweUYzY3pYSXBFdzVVc05TYWh3CkVuY3J5cHRpb246IG5vbmUKUGF5bWVudC1JZDogMTMyMzZhM2ItOGZhOC00MTYzLTg0NDctNGMzZWQzZGE5OGE3CgpDb250ZW50LUxlbmd0aDogMTM1CkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbgpTZW5kZXItSWRlbnRpZmllcjogOTI4MDYzOTEKCiJ7XCJmZWVcIjowLFwidHJhbnNmZXJDb2RlXCI6XCJpbnZvaWNlXCIsXCJkZWJpdE5hbWVcIjpcImFsaWNlIGNvb3BlclwiLFwiY3JlZGl0TmFtZVwiOlwibWVyIGNoYW50XCIsXCJkZWJpdElkZW50aWZpZXJcIjpcIjkyODA2MzkxXCJ9IgA
1374
- condition:
1375
- title: IlpCondition
1376
- type: string
1377
- pattern: ^[A-Za-z0-9-_]{43}$
1378
- maxLength: 48
1379
- description: >-
1380
- Condition that must be attached to the transfer by
1381
- the Payer.
1382
- extensionList:
1383
- title: ExtensionList
1384
- type: object
1385
- description: >-
1386
- Data model for the complex type ExtensionList. An
1387
- optional list of extensions, specific to
1388
- deployment.
1389
- properties: *ref_11
1390
- required: *ref_12
1391
- required: &ref_98
1392
- - transferAmount
1393
- - expiration
1394
- - ilpPacket
1395
- - condition
1396
- fulfil:
1397
- title: TransfersIDPutResponse
1398
- type: object
1399
- description: The object sent in the PUT /transfers/{ID} callback.
1400
- properties: &ref_100
1401
- fulfilment:
1402
- title: IlpFulfilment
1403
- type: string
1404
- pattern: ^[A-Za-z0-9-_]{43}$
1405
- maxLength: 48
1406
- description: >-
1407
- Fulfilment that must be attached to the transfer
1408
- by the Payee.
1409
- example: WLctttbu2HvTsa1XWvUoGRcQozHsqeu9Ahl2JW9Bsu8
1410
- completedTimestamp:
1411
- title: DateTime
1412
- type: string
1413
- pattern: >-
1414
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
1415
- description: >-
1416
- The API data type DateTime is a JSON String in a
1417
- lexical format that is restricted by a regular
1418
- expression for interoperability reasons. The
1419
- format is according to [ISO
1420
- 8601](https://www.iso.org/iso-8601-date-and-time-format.html),
1421
- expressed in a combined date, time and time zone
1422
- format. A more readable version of the format is
1423
- yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are
1424
- "2016-05-24T08:38:08.699-04:00",
1425
- "2016-05-24T08:38:08.699Z" (where Z indicates Zulu
1426
- time zone, same as UTC).
1427
- example: '2016-05-24T08:38:08.699-04:00'
1428
- transferState:
1429
- title: TransferState
1430
- type: string
1431
- enum: &ref_99
1432
- - RECEIVED
1433
- - RESERVED
1434
- - COMMITTED
1435
- - ABORTED
1436
- description: >-
1437
- Below are the allowed values for the enumeration.
1438
-
1439
- - RECEIVED - Next ledger has received the
1440
- transfer.
1441
-
1442
- - RESERVED - Next ledger has reserved the
1443
- transfer.
1444
-
1445
- - COMMITTED - Next ledger has successfully
1446
- performed the transfer.
1447
-
1448
- - ABORTED - Next ledger has aborted the transfer
1449
- due to a rejection or failure to perform the
1450
- transfer.
1451
- example: RESERVED
1452
- extensionList:
1453
- title: ExtensionList
1454
- type: object
1455
- description: >-
1456
- Data model for the complex type ExtensionList. An
1457
- optional list of extensions, specific to
1458
- deployment.
1459
- properties: *ref_11
1460
- required: *ref_12
1461
- required: &ref_101
1462
- - transferState
1463
- quoteExtensions:
1464
- title: ExtensionList
1465
- type: object
1466
- description: >-
1467
- Data model for the complex type ExtensionList. An
1468
- optional list of extensions, specific to deployment.
1469
- properties: *ref_11
1470
- required: *ref_12
1471
- transferExtensions:
1472
- title: ExtensionList
1473
- type: object
1474
- description: >-
1475
- Data model for the complex type ExtensionList. An
1476
- optional list of extensions, specific to deployment.
1477
- properties: *ref_11
1478
- required: *ref_12
1479
- lastError:
1480
- type: object
1481
- description: >-
1482
- This object represents a Mojaloop API error received
1483
- at any time during the transfer process
1484
- properties: &ref_32
1485
- httpStatusCode:
1486
- type: integer
1487
- description: >-
1488
- The HTTP status code returned to the caller. This
1489
- is the same as the actual HTTP status code
1490
- returned with the response.
1491
- mojaloopError:
1492
- description: >-
1493
- If a transfer process results in an error callback
1494
- during the asynchronous Mojaloop API exchange,
1495
- this property will contain the underlying Mojaloop
1496
- API error object.
1497
- type: object
1498
- properties: &ref_104
1499
- errorInformation:
1500
- title: ErrorInformation
1501
- type: object
1502
- description: >-
1503
- Data model for the complex type
1504
- ErrorInformation.
1505
- properties: &ref_102
1506
- errorCode:
1507
- title: ErrorCode
1508
- type: string
1509
- pattern: ^[1-9]\d{3}$
1510
- description: >-
1511
- The API data type ErrorCode is a JSON
1512
- String of four characters, consisting of
1513
- digits only. Negative numbers are not
1514
- allowed. A leading zero is not allowed.
1515
- Each error code in the API is a four-digit
1516
- number, for example, 1234, where the first
1517
- number (1 in the example) represents the
1518
- high-level error category, the second
1519
- number (2 in the example) represents the
1520
- low-level error category, and the last two
1521
- numbers (34 in the example) represent the
1522
- specific error.
1523
- example: '5100'
1524
- errorDescription:
1525
- title: ErrorDescription
1526
- type: string
1527
- minLength: 1
1528
- maxLength: 128
1529
- description: Error description string.
1530
- extensionList:
1531
- title: ExtensionList
1532
- type: object
1533
- description: >-
1534
- Data model for the complex type
1535
- ExtensionList. An optional list of
1536
- extensions, specific to deployment.
1537
- properties: *ref_11
1538
- required: *ref_12
1539
- required: &ref_103
1540
- - errorCode
1541
- - errorDescription
1542
- extensions:
1543
- title: ExtensionList
1544
- type: object
1545
- description: >-
1546
- Data model for the complex type ExtensionList. An optional
1547
- list of extensions, specific to deployment.
1548
- properties: *ref_11
1549
- required: *ref_12
96
+ $ref: '#/components/schemas/bulkTransactionResponse'
1550
97
  responses:
1551
98
  '202':
1552
99
  description: Bulk transaction information successfully amended.
1553
100
  '400':
1554
- content: *ref_6
1555
- description: Malformed or missing required headers or parameters.
101
+ $ref: '#/components/responses/400'
1556
102
  '500':
1557
- content: *ref_7
1558
- description: An error occurred processing the request.
103
+ $ref: '#/components/responses/500'
1559
104
  summary: Callbacks for the bulk transaction request.
1560
105
  tags:
1561
106
  - BulkTransactionsPut
@@ -1566,142 +111,19 @@ paths:
1566
111
  content:
1567
112
  application/json:
1568
113
  schema:
1569
- properties: &ref_49
1570
- bulkQuote:
1571
- description: A response to a request for a bulk quote.
1572
- properties: *ref_4
1573
- required: *ref_5
1574
- type: object
1575
- bulkTransferId:
1576
- description: A Mojaloop API transfer identifier (UUID).
1577
- pattern: >-
1578
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1579
- type: string
1580
- from:
1581
- properties: *ref_1
1582
- required: *ref_2
1583
- type: object
1584
- individualTransfers:
1585
- items:
1586
- description: >-
1587
- Data model for individual transfer in a bulk transfer
1588
- request.
1589
- properties: &ref_41
1590
- amount:
1591
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1592
- type: string
1593
- amountType:
1594
- enum: *ref_13
1595
- type: string
1596
- currency:
1597
- enum: *ref_0
1598
- maxLength: 3
1599
- minLength: 3
1600
- type: string
1601
- feesAmount:
1602
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1603
- type: string
1604
- feesCurrency:
1605
- enum: *ref_0
1606
- maxLength: 3
1607
- minLength: 3
1608
- type: string
1609
- initiator:
1610
- enum: *ref_14
1611
- type: string
1612
- initiatorType:
1613
- enum: *ref_15
1614
- type: string
1615
- note:
1616
- description: An optional note associated with the quote.
1617
- maxLength: 128
1618
- minLength: 1
1619
- type: string
1620
- subScenario:
1621
- description: >-
1622
- Possible sub-scenario, defined locally within the
1623
- scheme (UndefinedEnum Type). Based on FSPIOP
1624
- TransactionSubScenario.
1625
- example: LOCALLY_DEFINED_SUBSCENARIO
1626
- pattern: ^[A-Z_]{1,32}$
1627
- title: transactionSubScenario
1628
- type: string
1629
- to:
1630
- properties: *ref_1
1631
- required: *ref_2
1632
- type: object
1633
- transactionType:
1634
- enum: *ref_16
1635
- type: string
1636
- transferId:
1637
- description: A Mojaloop API transfer identifier (UUID).
1638
- pattern: >-
1639
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1640
- type: string
1641
- required: &ref_42
1642
- - transferId
1643
- - amount
1644
- - currency
1645
- type: object
1646
- maxItems: 1000
1647
- minItems: 1
1648
- type: array
1649
- required: &ref_50
1650
- - bulkTransferId
1651
- - individualTransfers
1652
- type: object
114
+ $ref: '#/components/schemas/bulkTransferRequest'
1653
115
  description: An incoming bulk transfer request.
1654
116
  responses:
1655
117
  '200':
1656
118
  content:
1657
119
  application/json:
1658
120
  schema:
1659
- properties: &ref_19
1660
- bulkTransferId:
1661
- description: A Mojaloop API transfer identifier (UUID).
1662
- pattern: >-
1663
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1664
- type: string
1665
- homeTransactionId:
1666
- description: >-
1667
- Transaction ID from the DFSP backend, used to reconcile
1668
- transactions between the switch and DFSP backend systems.
1669
- type: string
1670
- individualTransferResults:
1671
- items:
1672
- description: >-
1673
- Data model for individual transfer in a bulk transfer
1674
- response.
1675
- properties: &ref_43
1676
- errorResponse:
1677
- properties: *ref_3
1678
- type: object
1679
- extensionList:
1680
- items: *ref_17
1681
- maxItems: 16
1682
- minItems: 0
1683
- type: array
1684
- transferId:
1685
- description: A Mojaloop API transfer identifier (UUID).
1686
- pattern: >-
1687
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1688
- type: string
1689
- required: &ref_44
1690
- - transferId
1691
- type: object
1692
- maxItems: 1000
1693
- minItems: 1
1694
- type: array
1695
- required: &ref_20
1696
- - homeTransactionId
1697
- type: object
121
+ $ref: '#/components/schemas/bulkTransferResponse'
1698
122
  description: The bulk transfer was accepted.
1699
123
  '400':
1700
- content: *ref_6
1701
- description: Malformed or missing required headers or parameters.
124
+ $ref: '#/components/responses/400'
1702
125
  '500':
1703
- content: *ref_7
1704
- description: An error occurred processing the request.
126
+ $ref: '#/components/responses/500'
1705
127
  summary: >-
1706
128
  Execute bulk transfer of funds from an external account to internal
1707
129
  accounts.
@@ -1711,30 +133,20 @@ paths:
1711
133
  get:
1712
134
  operationId: BackendBulkTransfersGet
1713
135
  parameters:
1714
- - description: The identifier value.
1715
- in: path
1716
- name: idValue
1717
- required: true
1718
- schema: *ref_18
136
+ - $ref: '#/components/parameters/idValue'
1719
137
  responses:
1720
138
  '200':
1721
139
  content:
1722
140
  application/json:
1723
141
  schema:
1724
- properties: *ref_19
1725
- required: *ref_20
1726
- type: object
142
+ $ref: '#/components/schemas/bulkTransferResponse'
1727
143
  description: Response containing details of the requested bulk transfer.
1728
144
  '400':
1729
- content: *ref_6
1730
- description: Malformed or missing required headers or parameters.
145
+ $ref: '#/components/responses/400'
1731
146
  '404':
1732
- description: >-
1733
- The party specified by the provided identifier type and value is not
1734
- known to the server.
147
+ $ref: '#/components/responses/404'
1735
148
  '500':
1736
- content: *ref_7
1737
- description: An error occurred processing the request.
149
+ $ref: '#/components/responses/500'
1738
150
  summary: >-
1739
151
  Requests information relating to a bulk transfer identified by the
1740
152
  specified identifier value.
@@ -1744,36 +156,20 @@ paths:
1744
156
  get:
1745
157
  operationId: BackendOtpGet
1746
158
  parameters:
1747
- - in: path
1748
- name: requestToPayId
1749
- required: true
1750
- schema: &ref_33
1751
- maxLength: 128
1752
- minLength: 1
1753
- type: string
159
+ - $ref: '#/components/parameters/requestToPayId'
1754
160
  responses:
1755
161
  '200':
1756
162
  content:
1757
163
  application/json:
1758
164
  schema:
1759
- properties: &ref_58
1760
- otpValue:
1761
- description: OTP value.
1762
- type: string
1763
- required: &ref_59
1764
- - otpValue
1765
- type: object
165
+ $ref: '#/components/schemas/otpDetails'
1766
166
  description: Response containing details of the OTP.
1767
167
  '400':
1768
- content: *ref_6
1769
- description: Malformed or missing required headers or parameters.
168
+ $ref: '#/components/responses/400'
1770
169
  '404':
1771
- description: >-
1772
- The party specified by the provided identifier type and value is not
1773
- known to the server.
170
+ $ref: '#/components/responses/404'
1774
171
  '500':
1775
- content: *ref_7
1776
- description: An error occurred processing the request.
172
+ $ref: '#/components/responses/500'
1777
173
  summary: Requests OTP.
1778
174
  tags:
1779
175
  - OTP
@@ -1785,42 +181,21 @@ paths:
1785
181
  `{idValue}`, is located.
1786
182
  operationId: BackendParticipantsGetByTypeAndID
1787
183
  parameters:
1788
- - description: >-
1789
- The type of the party identifier. For example, `MSISDN`,
1790
- `PERSONAL_ID`.
1791
- in: path
1792
- name: idType
1793
- required: true
1794
- schema: &ref_21
1795
- type: string
1796
- - description: The identifier value.
1797
- in: path
1798
- name: idValue
1799
- required: true
1800
- schema: *ref_18
184
+ - $ref: '#/components/parameters/idType'
185
+ - $ref: '#/components/parameters/idValue'
1801
186
  responses:
1802
187
  '200':
1803
188
  content:
1804
189
  application/json:
1805
190
  schema:
1806
- properties: &ref_22
1807
- fspId:
1808
- description: FSP identifier.
1809
- maxLength: 32
1810
- minLength: 1
1811
- type: string
1812
- type: object
191
+ $ref: '#/components/schemas/participantsResponse'
1813
192
  description: Response containing details of the requested party.
1814
193
  '400':
1815
- content: *ref_6
1816
- description: Malformed or missing required headers or parameters.
194
+ $ref: '#/components/responses/400'
1817
195
  '404':
1818
- description: >-
1819
- The party specified by the provided identifier type and value is not
1820
- known to the server.
196
+ $ref: '#/components/responses/404'
1821
197
  '500':
1822
- content: *ref_7
1823
- description: An error occurred processing the request.
198
+ $ref: '#/components/responses/500'
1824
199
  summary: >-
1825
200
  Asks for the identifier (fspId) of the scheme participant (FSP) that can
1826
201
  handle transfers for the specified identifier type and value.
@@ -1834,44 +209,22 @@ paths:
1834
209
  `{idType}`, `{idValue}` and `{idSubValue}` is located.
1835
210
  operationId: BackendParticipantsGetByTypeIDAndSubId
1836
211
  parameters:
1837
- - description: >-
1838
- The type of the party identifier. For example, `MSISDN`,
1839
- `PERSONAL_ID`.
1840
- in: path
1841
- name: idType
1842
- required: true
1843
- schema: *ref_21
1844
- - description: The identifier value.
1845
- in: path
1846
- name: idValue
1847
- required: true
1848
- schema: *ref_18
1849
- - description: >-
1850
- A sub-identifier of the party identifier, or a sub-type of the party
1851
- identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
1852
- in: path
1853
- name: idSubValue
1854
- required: true
1855
- schema: &ref_23
1856
- type: string
212
+ - $ref: '#/components/parameters/idType'
213
+ - $ref: '#/components/parameters/idValue'
214
+ - $ref: '#/components/parameters/idSubValue'
1857
215
  responses:
1858
216
  '200':
1859
217
  content:
1860
218
  application/json:
1861
219
  schema:
1862
- properties: *ref_22
1863
- type: object
220
+ $ref: '#/components/schemas/participantsResponse'
1864
221
  description: Response containing details of the requested party.
1865
222
  '400':
1866
- content: *ref_6
1867
- description: Malformed or missing required headers or parameters.
223
+ $ref: '#/components/responses/400'
1868
224
  '404':
1869
- description: >-
1870
- The party specified by the provided identifier type and value is not
1871
- known to the server.
225
+ $ref: '#/components/responses/404'
1872
226
  '500':
1873
- content: *ref_7
1874
- description: An error occurred processing the request.
227
+ $ref: '#/components/responses/500'
1875
228
  summary: >-
1876
229
  Asks for the identifier (fspId) of the scheme participant (FSP) that can
1877
230
  handle transfers for the specified identifier type and value.
@@ -1885,37 +238,21 @@ paths:
1885
238
  `{idType}` and `{idValue}`.
1886
239
  operationId: BackendPartiesGetByTypeAndID
1887
240
  parameters:
1888
- - description: >-
1889
- The type of the party identifier. For example, `MSISDN`,
1890
- `PERSONAL_ID`.
1891
- in: path
1892
- name: idType
1893
- required: true
1894
- schema: *ref_21
1895
- - description: The identifier value.
1896
- in: path
1897
- name: idValue
1898
- required: true
1899
- schema: *ref_18
241
+ - $ref: '#/components/parameters/idType'
242
+ - $ref: '#/components/parameters/idValue'
1900
243
  responses:
1901
244
  '200':
1902
245
  content:
1903
246
  application/json:
1904
247
  schema:
1905
- properties: *ref_1
1906
- required: *ref_2
1907
- type: object
248
+ $ref: '#/components/schemas/transferParty'
1908
249
  description: Response containing details of the requested party.
1909
250
  '400':
1910
- content: *ref_6
1911
- description: Malformed or missing required headers or parameters.
251
+ $ref: '#/components/responses/400'
1912
252
  '404':
1913
- description: >-
1914
- The party specified by the provided identifier type and value is not
1915
- known to the server.
253
+ $ref: '#/components/responses/404'
1916
254
  '500':
1917
- content: *ref_7
1918
- description: An error occurred processing the request.
255
+ $ref: '#/components/responses/500'
1919
256
  summary: >-
1920
257
  Requests information relating to a transfer party identified by the
1921
258
  specified identifier type and value.
@@ -1929,44 +266,22 @@ paths:
1929
266
  identified by `{idType}`, `{idValue}` and `{idSubValue}`.
1930
267
  operationId: BackendPartiesGetByTypeIdAndSubId
1931
268
  parameters:
1932
- - description: >-
1933
- The type of the party identifier. For example, `MSISDN`,
1934
- `PERSONAL_ID`.
1935
- in: path
1936
- name: idType
1937
- required: true
1938
- schema: *ref_21
1939
- - description: The identifier value.
1940
- in: path
1941
- name: idValue
1942
- required: true
1943
- schema: *ref_18
1944
- - description: >-
1945
- A sub-identifier of the party identifier, or a sub-type of the party
1946
- identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
1947
- in: path
1948
- name: idSubValue
1949
- required: true
1950
- schema: *ref_23
269
+ - $ref: '#/components/parameters/idType'
270
+ - $ref: '#/components/parameters/idValue'
271
+ - $ref: '#/components/parameters/idSubValue'
1951
272
  responses:
1952
273
  '200':
1953
274
  content:
1954
275
  application/json:
1955
276
  schema:
1956
- properties: *ref_1
1957
- required: *ref_2
1958
- type: object
277
+ $ref: '#/components/schemas/transferParty'
1959
278
  description: Response containing details of the requested party.
1960
279
  '400':
1961
- content: *ref_6
1962
- description: Malformed or missing required headers or parameters.
280
+ $ref: '#/components/responses/400'
1963
281
  '404':
1964
- description: >-
1965
- The party specified by the provided identifier type and value is not
1966
- known to the server.
282
+ $ref: '#/components/responses/404'
1967
283
  '500':
1968
- content: *ref_7
1969
- description: An error occurred processing the request.
284
+ $ref: '#/components/responses/500'
1970
285
  summary: >-
1971
286
  Requests information relating to a transfer party identified by the
1972
287
  specified identifier type, value and subId value.
@@ -1982,219 +297,19 @@ paths:
1982
297
  content:
1983
298
  application/json:
1984
299
  schema:
1985
- description: A request for a quote for transfer from the DFSP backend.
1986
- properties: &ref_61
1987
- amount:
1988
- description: >-
1989
- Depending on `amountType`. If SEND - The amount the Payer
1990
- would like to send, that is, the amount that should be
1991
- withdrawn from the Payer account including any fees. The
1992
- amount is updated by each participating entity in the
1993
- transaction. If RECEIVE - The amount the Payee should
1994
- receive, that is, the amount that should be sent to the
1995
- receiver exclusive any fees. The amount is not updated by
1996
- any of the participating entities.
1997
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1998
- type: string
1999
- amountType:
2000
- description: SEND for send amount, RECEIVE for receive amount.
2001
- enum: *ref_13
2002
- type: string
2003
- currency:
2004
- enum: *ref_0
2005
- maxLength: 3
2006
- minLength: 3
2007
- type: string
2008
- expiration:
2009
- description: An ISO-8601 formatted timestamp.
2010
- pattern: >-
2011
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2012
- type: string
2013
- extensionList:
2014
- items: *ref_17
2015
- maxItems: 16
2016
- minItems: 0
2017
- type: array
2018
- feesAmount:
2019
- description: >-
2020
- The fees in the transaction. The fees element should be
2021
- empty if fees should be non-disclosed. The fees element
2022
- should be non-empty if fees should be disclosed.
2023
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2024
- type: string
2025
- feesCurrency:
2026
- enum: *ref_0
2027
- maxLength: 3
2028
- minLength: 3
2029
- type: string
2030
- from:
2031
- description: >-
2032
- Information about the Payer in the proposed financial
2033
- transaction.
2034
- properties: *ref_1
2035
- required: *ref_2
2036
- type: object
2037
- geoCode:
2038
- description: >-
2039
- Indicates the geographic location from where the transaction
2040
- was initiated.
2041
- properties: *ref_24
2042
- required: *ref_25
2043
- type: object
2044
- initiator:
2045
- description: >-
2046
- Specifies if the initiator of the transfer is the Payer or
2047
- Payee.
2048
- enum: *ref_14
2049
- type: string
2050
- initiatorType:
2051
- description: Specifies the type of the transaction initiator.
2052
- enum: *ref_15
2053
- type: string
2054
- note:
2055
- description: An optional note associated with the requested transfer.
2056
- maxLength: 128
2057
- minLength: 1
2058
- type: string
2059
- quoteId:
2060
- description: A Mojaloop API quote identifier (UUID).
2061
- pattern: >-
2062
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2063
- type: string
2064
- subScenario:
2065
- description: >-
2066
- Possible sub-scenario, defined locally within the scheme
2067
- (UndefinedEnum Type). Based on FSPIOP
2068
- TransactionSubScenario.
2069
- example: LOCALLY_DEFINED_SUBSCENARIO
2070
- pattern: ^[A-Z_]{1,32}$
2071
- title: transactionSubScenario
2072
- type: string
2073
- to:
2074
- description: >-
2075
- Information about the Payee in the proposed financial
2076
- transaction.
2077
- properties: *ref_1
2078
- required: *ref_2
2079
- type: object
2080
- transactionId:
2081
- description: >-
2082
- ID of the transaction, the ID is decided by the Payer FSP
2083
- during the creation of the quote.
2084
- pattern: >-
2085
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2086
- type: string
2087
- transactionType:
2088
- description: Type of transaction for which the quote is requested.
2089
- enum: *ref_16
2090
- type: string
2091
- required: &ref_62
2092
- - quoteId
2093
- - transactionId
2094
- - to
2095
- - from
2096
- - amountType
2097
- - amount
2098
- - currency
2099
- - transactionType
2100
- - initiator
2101
- - initiatorType
2102
- type: object
300
+ $ref: '#/components/schemas/quoteRequest'
2103
301
  description: Request for a transfer quotation.
2104
302
  responses:
2105
303
  '200':
2106
304
  content:
2107
305
  application/json:
2108
306
  schema:
2109
- description: A response to a request for a quote.
2110
- properties: &ref_28
2111
- expiration:
2112
- description: An ISO-8601 formatted timestamp.
2113
- pattern: >-
2114
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2115
- type: string
2116
- extensionList:
2117
- items: *ref_17
2118
- maxItems: 16
2119
- minItems: 0
2120
- type: array
2121
- geoCode:
2122
- description: >-
2123
- Indicates the geographic location from where the
2124
- transaction was initiated.
2125
- properties: *ref_24
2126
- required: *ref_25
2127
- type: object
2128
- payeeFspCommissionAmount:
2129
- description: Transaction commission from the Payee FSP.
2130
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2131
- type: string
2132
- payeeFspCommissionAmountCurrency:
2133
- description: Currency of the `payeeFspCommissionAmount`.
2134
- enum: *ref_0
2135
- maxLength: 3
2136
- minLength: 3
2137
- type: string
2138
- payeeFspFeeAmount:
2139
- description: Payee FSP’s part of the transaction fee.
2140
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2141
- type: string
2142
- payeeFspFeeAmountCurrency:
2143
- description: The currency of the `payeeFspFeeAmount`.
2144
- enum: *ref_0
2145
- maxLength: 3
2146
- minLength: 3
2147
- type: string
2148
- payeeReceiveAmount:
2149
- description: >-
2150
- The amount that the Payee should receive in the end-to-end
2151
- transaction. Optional as the Payee FSP might not want to
2152
- disclose any optional Payee fees.
2153
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2154
- type: string
2155
- payeeReceiveAmountCurrency:
2156
- description: The currency of the `payeeReceiveAmount`.
2157
- enum: *ref_0
2158
- maxLength: 3
2159
- minLength: 3
2160
- type: string
2161
- quoteId:
2162
- description: A Mojaloop API quote identifier (UUID).
2163
- pattern: >-
2164
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2165
- type: string
2166
- transactionId:
2167
- description: >-
2168
- ID of the transaction, the ID is decided by the Payer FSP
2169
- during the creation of the quote.
2170
- pattern: >-
2171
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2172
- type: string
2173
- transferAmount:
2174
- description: >-
2175
- The amount of money that the Payer FSP should transfer to
2176
- the Payee FSP.
2177
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2178
- type: string
2179
- transferAmountCurrency:
2180
- description: The currency of the `transferAmount`.
2181
- enum: *ref_0
2182
- maxLength: 3
2183
- minLength: 3
2184
- type: string
2185
- required: &ref_29
2186
- - quoteId
2187
- - transactionId
2188
- - transferAmount
2189
- - transferAmountCurrency
2190
- type: object
307
+ $ref: '#/components/schemas/quoteResponse'
2191
308
  description: A response to the transfer quotation request.
2192
309
  '400':
2193
- content: *ref_6
2194
- description: Malformed or missing required headers or parameters.
310
+ $ref: '#/components/responses/400'
2195
311
  '500':
2196
- content: *ref_7
2197
- description: An error occurred processing the request.
312
+ $ref: '#/components/responses/500'
2198
313
  summary: Requests a quote for the specified transfer.
2199
314
  tags:
2200
315
  - Quotes
@@ -2205,107 +320,19 @@ paths:
2205
320
  content:
2206
321
  application/json:
2207
322
  schema:
2208
- description: A request for a pull based transfer.
2209
- properties: &ref_64
2210
- amount:
2211
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2212
- type: string
2213
- currency:
2214
- enum: *ref_0
2215
- maxLength: 3
2216
- minLength: 3
2217
- type: string
2218
- expiration:
2219
- description: An ISO-8601 formatted timestamp.
2220
- pattern: >-
2221
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2222
- type: string
2223
- from:
2224
- properties: *ref_1
2225
- required: *ref_2
2226
- type: object
2227
- geoCode:
2228
- description: >-
2229
- Indicates the geographic location from where the transaction
2230
- was initiated.
2231
- properties: *ref_24
2232
- required: *ref_25
2233
- type: object
2234
- initiator:
2235
- enum: *ref_14
2236
- type: string
2237
- initiatorType:
2238
- enum: *ref_15
2239
- type: string
2240
- note:
2241
- description: An optional note associated with the requested transfer.
2242
- maxLength: 128
2243
- minLength: 1
2244
- type: string
2245
- to:
2246
- properties: *ref_1
2247
- required: *ref_2
2248
- type: object
2249
- transactionRequestId:
2250
- description: A Mojaloop API transaction request identifier (UUID).
2251
- pattern: >-
2252
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2253
- type: string
2254
- transactionType:
2255
- enum: *ref_16
2256
- type: string
2257
- subScenario:
2258
- description: >-
2259
- Possible sub-scenario, defined locally within the scheme
2260
- (UndefinedEnum Type). Based on FSPIOP
2261
- TransactionSubScenario.
2262
- example: LOCALLY_DEFINED_SUBSCENARIO
2263
- pattern: ^[A-Z_]{1,32}$
2264
- title: transactionSubScenario
2265
- type: string
2266
- required: &ref_65
2267
- - transactionRequestId
2268
- - to
2269
- - from
2270
- - amount
2271
- - currency
2272
- - transactionType
2273
- - initiator
2274
- - initiatorType
2275
- type: object
323
+ $ref: '#/components/schemas/transactionRequest'
2276
324
  description: Request for Transaction Request.
2277
325
  responses:
2278
326
  '200':
2279
327
  content:
2280
328
  application/json:
2281
329
  schema:
2282
- description: A response to a request for a quote.
2283
- properties: &ref_66
2284
- transactionId:
2285
- description: >-
2286
- ID of the transaction, the ID is decided by the Payer FSP
2287
- during the creation of the quote.
2288
- pattern: >-
2289
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2290
- type: string
2291
- transferAmount:
2292
- enum: &ref_68
2293
- - RECEIVED
2294
- - PENDING
2295
- - ACCEPTED
2296
- - REJECTED
2297
- type: string
2298
- required: &ref_67
2299
- - transactionId
2300
- - transactionRequestState
2301
- type: object
330
+ $ref: '#/components/schemas/transactionRequestResponse'
2302
331
  description: A response to the transfer transaction request.
2303
332
  '400':
2304
- content: *ref_6
2305
- description: Malformed or missing required headers or parameters.
333
+ $ref: '#/components/responses/400'
2306
334
  '500':
2307
- content: *ref_7
2308
- description: An error occurred processing the request.
335
+ $ref: '#/components/responses/500'
2309
336
  summary: Transaction request that supports pull based transfers.
2310
337
  tags:
2311
338
  - TransactionRequest
@@ -2319,204 +346,19 @@ paths:
2319
346
  content:
2320
347
  application/json:
2321
348
  schema:
2322
- properties: &ref_73
2323
- amount:
2324
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2325
- type: string
2326
- amountType:
2327
- enum: *ref_13
2328
- type: string
2329
- currency:
2330
- enum: *ref_0
2331
- maxLength: 3
2332
- minLength: 3
2333
- type: string
2334
- from:
2335
- properties: *ref_1
2336
- required: *ref_2
2337
- type: object
2338
- ilpPacket:
2339
- properties:
2340
- data:
2341
- description: Object containing transfer object.
2342
- properties: &ref_56
2343
- amount:
2344
- description: >-
2345
- Object containing Amount and Currency of the
2346
- transfer.
2347
- properties: &ref_45
2348
- amount:
2349
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2350
- type: string
2351
- currency:
2352
- enum: *ref_0
2353
- maxLength: 3
2354
- minLength: 3
2355
- type: string
2356
- required: &ref_46
2357
- - amount
2358
- - currency
2359
- type: object
2360
- payee:
2361
- description: Data model for the complex type Party.
2362
- title: Party
2363
- type: object
2364
- properties: *ref_26
2365
- required: *ref_27
2366
- payer:
2367
- description: Data model for the complex type Party.
2368
- title: Party
2369
- type: object
2370
- properties: *ref_26
2371
- required: *ref_27
2372
- quoteId:
2373
- description: A Mojaloop API quote identifier (UUID).
2374
- pattern: >-
2375
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2376
- type: string
2377
- transactionId:
2378
- description: >-
2379
- ID of the transaction, the ID is decided by the
2380
- Payer FSP during the creation of the quote.
2381
- pattern: >-
2382
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2383
- type: string
2384
- transactionType:
2385
- description: Object containing transfer object.
2386
- properties: &ref_69
2387
- initiator:
2388
- enum: *ref_14
2389
- type: string
2390
- initiatorType:
2391
- description: Specifies the type of the transaction initiator.
2392
- enum: *ref_15
2393
- type: string
2394
- scenario:
2395
- enum: &ref_63
2396
- - TRANSFER
2397
- type: string
2398
- subScenario:
2399
- description: >-
2400
- Possible sub-scenario, defined locally within
2401
- the scheme (UndefinedEnum Type). Based on FSPIOP
2402
- TransactionSubScenario.
2403
- example: LOCALLY_DEFINED_SUBSCENARIO
2404
- pattern: ^[A-Z_]{1,32}$
2405
- title: transactionSubScenario
2406
- type: string
2407
- required: &ref_70
2408
- - scenario
2409
- - initiator
2410
- - initiatorType
2411
- type: object
2412
- required: &ref_57
2413
- - quoteId
2414
- - transactionId
2415
- - payer
2416
- - payee
2417
- - amount
2418
- - transactionType
2419
- type: object
2420
- required:
2421
- - data
2422
- type: object
2423
- note:
2424
- maxLength: 128
2425
- type: string
2426
- quote:
2427
- description: A response to a request for a quote.
2428
- properties: *ref_28
2429
- required: *ref_29
2430
- type: object
2431
- quoteRequestExtensions:
2432
- items: *ref_17
2433
- maxItems: 16
2434
- minItems: 0
2435
- type: array
2436
- subScenario:
2437
- description: >-
2438
- Possible sub-scenario, defined locally within the scheme
2439
- (UndefinedEnum Type). Based on FSPIOP
2440
- TransactionSubScenario.
2441
- example: LOCALLY_DEFINED_SUBSCENARIO
2442
- pattern: ^[A-Z_]{1,32}$
2443
- title: transactionSubScenario
2444
- type: string
2445
- to:
2446
- properties: *ref_1
2447
- required: *ref_2
2448
- type: object
2449
- transactionType:
2450
- enum: *ref_16
2451
- type: string
2452
- transferId:
2453
- description: A Mojaloop API transfer identifier (UUID).
2454
- pattern: >-
2455
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2456
- type: string
2457
- required: &ref_74
2458
- - transferId
2459
- - quote
2460
- - from
2461
- - to
2462
- - amountType
2463
- - currency
2464
- - amount
2465
- - transactionType
2466
- - ilpPacket
2467
- type: object
349
+ $ref: '#/components/schemas/transferRequest'
2468
350
  description: An incoming transfer request.
2469
351
  responses:
2470
352
  '200':
2471
353
  content:
2472
354
  application/json:
2473
355
  schema:
2474
- properties: &ref_75
2475
- completedTimestamp:
2476
- description: An ISO-8601 formatted timestamp.
2477
- example: '2020-05-19T08:38:08.699-04:00'
2478
- pattern: >-
2479
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2480
- type: string
2481
- fulfilment:
2482
- description: >-
2483
- Fulfilment that must be attached to the transfer by the
2484
- Payee.
2485
- title: IlpFulfilment
2486
- type: string
2487
- pattern: ^[A-Za-z0-9-_]{43}$
2488
- maxLength: 48
2489
- example: WLctttbu2HvTsa1XWvUoGRcQozHsqeu9Ahl2JW9Bsu8
2490
- homeTransactionId:
2491
- description: >-
2492
- Transaction ID from the DFSP backend, used to reconcile
2493
- transactions between the Switch and DFSP backend systems.
2494
- type: string
2495
- transferState:
2496
- description: >
2497
- Below are the allowed values for the enumeration -
2498
- RECEIVED DFSP has received the transfer. - RESERVED DFSP
2499
- has reserved the transfer. - COMMITTED DFSP has
2500
- successfully performed the transfer. - ABORTED DFSP has
2501
- aborted the transfer due a rejection or failure to perform
2502
- the transfer.
2503
- example: ABORTED
2504
- enum: &ref_30
2505
- - RECEIVED
2506
- - RESERVED
2507
- - COMMITTED
2508
- - ABORTED
2509
- type: string
2510
- required: &ref_76
2511
- - homeTransactionId
2512
- type: object
356
+ $ref: '#/components/schemas/transferResponse'
2513
357
  description: The transfer was accepted.
2514
358
  '400':
2515
- content: *ref_6
2516
- description: Malformed or missing required headers or parameters.
359
+ $ref: '#/components/responses/400'
2517
360
  '500':
2518
- content: *ref_7
2519
- description: An error occurred processing the request.
361
+ $ref: '#/components/responses/500'
2520
362
  summary: Transfers funds from an external account to an internal account.
2521
363
  tags:
2522
364
  - Transfers
@@ -2529,91 +371,16 @@ paths:
2529
371
  for the creation of the transfer.
2530
372
  operationId: BackendTransfersGet
2531
373
  parameters:
2532
- - in: path
2533
- name: transferId
2534
- required: true
2535
- schema: &ref_31
2536
- type: string
374
+ - $ref: '#/components/parameters/transferId'
2537
375
  responses:
2538
376
  '200':
2539
377
  content:
2540
378
  application/json:
2541
379
  schema:
2542
- properties: &ref_71
2543
- amount:
2544
- pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2545
- type: string
2546
- amountType:
2547
- enum: *ref_13
2548
- type: string
2549
- currency:
2550
- enum: *ref_0
2551
- maxLength: 3
2552
- minLength: 3
2553
- type: string
2554
- extensions:
2555
- items: *ref_17
2556
- maxItems: 16
2557
- minItems: 0
2558
- type: array
2559
- from:
2560
- properties: *ref_1
2561
- required: *ref_2
2562
- type: object
2563
- homeTransactionId:
2564
- description: >-
2565
- Transaction ID from the DFSP backend, used to reconcile
2566
- transactions between the Switch and DFSP backend systems.
2567
- type: string
2568
- note:
2569
- maxLength: 128
2570
- type: string
2571
- subScenario:
2572
- description: >-
2573
- Possible sub-scenario, defined locally within the scheme
2574
- (UndefinedEnum Type). Based on FSPIOP
2575
- TransactionSubScenario.
2576
- example: LOCALLY_DEFINED_SUBSCENARIO
2577
- pattern: ^[A-Z_]{1,32}$
2578
- title: transactionSubScenario
2579
- type: string
2580
- timestamp:
2581
- description: An ISO-8601 formatted timestamp.
2582
- pattern: >-
2583
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2584
- type: string
2585
- to:
2586
- properties: *ref_1
2587
- required: *ref_2
2588
- type: object
2589
- transactionType:
2590
- enum: *ref_16
2591
- type: string
2592
- transferState:
2593
- description: >
2594
- Below are the allowed values for the enumeration -
2595
- RECEIVED DFSP has received the transfer. - RESERVED DFSP
2596
- has reserved the transfer. - COMMITTED DFSP has
2597
- successfully performed the transfer. - ABORTED DFSP has
2598
- aborted the transfer due a rejection or failure to perform
2599
- the transfer.
2600
- enum: *ref_30
2601
- type: string
2602
- required: &ref_72
2603
- - homeTransactionId
2604
- - from
2605
- - to
2606
- - amountType
2607
- - currency
2608
- - amount
2609
- - transferState
2610
- - transactionType
2611
- - timestamp
2612
- type: object
380
+ $ref: '#/components/schemas/transferDetailsResponse'
2613
381
  description: The transfer was accepted.
2614
382
  '500':
2615
- content: *ref_7
2616
- description: An error occurred processing the request.
383
+ $ref: '#/components/responses/500'
2617
384
  summary: Retrieves information for a specific transfer.
2618
385
  tags:
2619
386
  - Transfers
@@ -2623,122 +390,18 @@ paths:
2623
390
  notification for transfer being fulfiled when the FSP is a Payee.
2624
391
  operationId: BackendTransfersPut
2625
392
  parameters:
2626
- - in: path
2627
- name: transferId
2628
- required: true
2629
- schema: *ref_31
393
+ - $ref: '#/components/parameters/transferId'
2630
394
  requestBody:
2631
395
  content:
2632
396
  application/json:
2633
397
  schema:
2634
- description: PUT /transfers/{transferId} object.
2635
- properties: &ref_54
2636
- currentState:
2637
- enum: &ref_77
2638
- - ERROR_OCCURRED
2639
- - WAITING_FOR_PARTY_ACCEPTANCE
2640
- - WAITING_FOR_QUOTE_ACCEPTANCE
2641
- - COMPLETED
2642
- type: string
2643
- direction:
2644
- enum:
2645
- - INBOUND
2646
- type: string
2647
- finalNotification:
2648
- properties:
2649
- completedTimestamp:
2650
- description: An ISO-8601 formatted timestamp.
2651
- example: '2020-05-19T08:38:08.699-04:00'
2652
- pattern: >-
2653
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2654
- type: string
2655
- extensionList:
2656
- description: Optional extension, specific to deployment.
2657
- items: *ref_17
2658
- maxItems: 16
2659
- minItems: 0
2660
- type: array
2661
- transferState:
2662
- description: >
2663
- Below are the allowed values for the enumeration -
2664
- RECEIVED DFSP has received the transfer. - RESERVED DFSP
2665
- has reserved the transfer. - COMMITTED DFSP has
2666
- successfully performed the transfer. - ABORTED DFSP has
2667
- aborted the transfer due a rejection or failure to
2668
- perform the transfer.
2669
- example: COMMITTED
2670
- enum: *ref_30
2671
- type: string
2672
- required:
2673
- - completedTimestamp
2674
- - transferState
2675
- type: object
2676
- fulfil:
2677
- properties:
2678
- body:
2679
- type: object
2680
- headers:
2681
- type: object
2682
- type: object
2683
- initiatedTimestamp:
2684
- description: An ISO-8601 formatted timestamp.
2685
- pattern: >-
2686
- ^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$
2687
- type: string
2688
- lastError:
2689
- type: object
2690
- description: >-
2691
- This object represents a Mojaloop API error received at any
2692
- time during the transfer process
2693
- properties: *ref_32
2694
- prepare:
2695
- properties:
2696
- body:
2697
- type: object
2698
- headers:
2699
- type: object
2700
- type: object
2701
- quote:
2702
- properties:
2703
- fulfilment:
2704
- type: string
2705
- internalRequest:
2706
- type: object
2707
- mojaloopResponse:
2708
- type: object
2709
- request:
2710
- type: object
2711
- response:
2712
- type: object
2713
- type: object
2714
- quoteRequest:
2715
- properties:
2716
- body:
2717
- type: object
2718
- headers:
2719
- type: object
2720
- type: object
2721
- quoteResponse:
2722
- properties:
2723
- body:
2724
- type: object
2725
- headers:
2726
- type: object
2727
- type: object
2728
- transferId:
2729
- description: A Mojaloop API transfer identifier (UUID).
2730
- pattern: >-
2731
- ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2732
- type: string
2733
- title: TransfersIDPatchResponse
2734
- type: object
398
+ $ref: '#/components/schemas/fulfilNotification'
2735
399
  description: An incoming notification for fulfiled transfer.
2736
400
  responses:
2737
401
  '200':
2738
402
  description: The notification was accepted.
2739
403
  '500':
2740
- content: *ref_7
2741
- description: An error occurred processing the request.
404
+ $ref: '#/components/responses/500'
2742
405
  summary: Receive notification for a specific transfer.
2743
406
  tags:
2744
407
  - Transfers
@@ -2751,47 +414,61 @@ components:
2751
414
  in: path
2752
415
  name: idSubValue
2753
416
  required: true
2754
- schema: *ref_23
417
+ schema:
418
+ type: string
2755
419
  idType:
2756
420
  description: The type of the party identifier. For example, `MSISDN`, `PERSONAL_ID`.
2757
421
  in: path
2758
422
  name: idType
2759
423
  required: true
2760
- schema: *ref_21
424
+ schema:
425
+ type: string
2761
426
  idValue:
2762
427
  description: The identifier value.
2763
428
  in: path
2764
429
  name: idValue
2765
430
  required: true
2766
- schema: *ref_18
431
+ schema:
432
+ type: string
2767
433
  requestToPayId:
2768
434
  in: path
2769
435
  name: requestToPayId
2770
436
  required: true
2771
- schema: *ref_33
437
+ schema:
438
+ maxLength: 128
439
+ minLength: 1
440
+ type: string
2772
441
  transferId:
2773
442
  in: path
2774
443
  name: transferId
2775
444
  required: true
2776
- schema: *ref_31
445
+ schema:
446
+ type: string
2777
447
  bulkTransactionId:
2778
448
  name: bulkTransactionId
2779
449
  in: path
2780
450
  required: true
2781
- schema: *ref_34
451
+ schema:
452
+ $ref: '#/components/schemas/CorrelationId'
2782
453
  description: >-
2783
454
  Identifier of the bulk transaction to continue as returned in the
2784
455
  response to a `POST /bulkTransaction` request.
2785
456
  responses:
2786
457
  '400':
2787
- content: *ref_6
458
+ content:
459
+ application/json:
460
+ schema:
461
+ $ref: '#/components/schemas/errorResponse'
2788
462
  description: Malformed or missing required headers or parameters.
2789
463
  '404':
2790
464
  description: >-
2791
465
  The party specified by the provided identifier type and value is not
2792
466
  known to the server.
2793
467
  '500':
2794
- content: *ref_7
468
+ content:
469
+ application/json:
470
+ schema:
471
+ $ref: '#/components/schemas/errorResponse'
2795
472
  description: An error occurred processing the request.
2796
473
  schemas:
2797
474
  DateOfBirth:
@@ -2819,28 +496,128 @@ components:
2819
496
  description: FSP identifier.
2820
497
  IndividualQuote:
2821
498
  description: Data model for individual quote in a bulk quote request.
2822
- properties: *ref_35
2823
- required: *ref_36
499
+ properties:
500
+ amount:
501
+ $ref: '#/components/schemas/money'
502
+ amountType:
503
+ $ref: '#/components/schemas/amountType'
504
+ currency:
505
+ $ref: '#/components/schemas/currency'
506
+ feesAmount:
507
+ $ref: '#/components/schemas/money'
508
+ feesCurrency:
509
+ $ref: '#/components/schemas/currency'
510
+ initiator:
511
+ $ref: '#/components/schemas/initiator'
512
+ initiatorType:
513
+ $ref: '#/components/schemas/initiatorType'
514
+ note:
515
+ description: An optional note associated with the quote.
516
+ maxLength: 128
517
+ minLength: 1
518
+ type: string
519
+ quoteId:
520
+ $ref: '#/components/schemas/quoteId'
521
+ subScenario:
522
+ $ref: '#/components/schemas/TransactionSubScenario'
523
+ to:
524
+ $ref: '#/components/schemas/transferParty'
525
+ transactionId:
526
+ $ref: '#/components/schemas/transactionId'
527
+ transactionType:
528
+ $ref: '#/components/schemas/transactionType'
529
+ required:
530
+ - quoteId
531
+ - transactionId
532
+ - to
533
+ - amountType
534
+ - amount
535
+ - currency
536
+ - transactionType
537
+ - initiator
538
+ - initiatorType
2824
539
  type: object
2825
540
  IndividualQuoteResultFailed:
2826
541
  description: Data model for failed individual quote in a bulk quote response.
2827
- properties: *ref_37
2828
- required: *ref_38
542
+ properties:
543
+ errorResponse:
544
+ $ref: '#/components/schemas/errorResponse'
545
+ quoteId:
546
+ $ref: '#/components/schemas/quoteId'
547
+ required:
548
+ - quoteId
549
+ - errorResponse
2829
550
  type: object
2830
551
  IndividualQuoteResultSuccess:
2831
552
  description: Data model for successful individual quote in a bulk quote response.
2832
- properties: *ref_39
2833
- required: *ref_40
553
+ properties:
554
+ payeeFspCommissionAmount:
555
+ $ref: '#/components/schemas/money'
556
+ payeeFspCommissionAmountCurrency:
557
+ $ref: '#/components/schemas/currency'
558
+ payeeFspFeeAmount:
559
+ $ref: '#/components/schemas/money'
560
+ payeeFspFeeAmountCurrency:
561
+ $ref: '#/components/schemas/currency'
562
+ payeeReceiveAmount:
563
+ $ref: '#/components/schemas/money'
564
+ payeeReceiveAmountCurrency:
565
+ $ref: '#/components/schemas/currency'
566
+ quoteId:
567
+ $ref: '#/components/schemas/quoteId'
568
+ transferAmount:
569
+ $ref: '#/components/schemas/money'
570
+ transferAmountCurrency:
571
+ $ref: '#/components/schemas/currency'
572
+ required:
573
+ - quoteId
2834
574
  type: object
2835
575
  IndividualTransfer:
2836
576
  description: Data model for individual transfer in a bulk transfer request.
2837
- properties: *ref_41
2838
- required: *ref_42
577
+ properties:
578
+ amount:
579
+ $ref: '#/components/schemas/money'
580
+ amountType:
581
+ $ref: '#/components/schemas/amountType'
582
+ currency:
583
+ $ref: '#/components/schemas/currency'
584
+ feesAmount:
585
+ $ref: '#/components/schemas/money'
586
+ feesCurrency:
587
+ $ref: '#/components/schemas/currency'
588
+ initiator:
589
+ $ref: '#/components/schemas/initiator'
590
+ initiatorType:
591
+ $ref: '#/components/schemas/initiatorType'
592
+ note:
593
+ description: An optional note associated with the quote.
594
+ maxLength: 128
595
+ minLength: 1
596
+ type: string
597
+ subScenario:
598
+ $ref: '#/components/schemas/TransactionSubScenario'
599
+ to:
600
+ $ref: '#/components/schemas/transferParty'
601
+ transactionType:
602
+ $ref: '#/components/schemas/transactionType'
603
+ transferId:
604
+ $ref: '#/components/schemas/transferId'
605
+ required:
606
+ - transferId
607
+ - amount
608
+ - currency
2839
609
  type: object
2840
610
  IndividualTransferResult:
2841
611
  description: Data model for individual transfer in a bulk transfer response.
2842
- properties: *ref_43
2843
- required: *ref_44
612
+ properties:
613
+ errorResponse:
614
+ $ref: '#/components/schemas/errorResponse'
615
+ extensionList:
616
+ $ref: '#/components/schemas/extensionList'
617
+ transferId:
618
+ $ref: '#/components/schemas/transferId'
619
+ required:
620
+ - transferId
2844
621
  type: object
2845
622
  LastName:
2846
623
  title: LastName
@@ -2872,11 +649,19 @@ components:
2872
649
  example: Johannes
2873
650
  amountCurrency:
2874
651
  description: Object containing Amount and Currency of the transfer.
2875
- properties: *ref_45
2876
- required: *ref_46
652
+ properties:
653
+ amount:
654
+ $ref: '#/components/schemas/money'
655
+ currency:
656
+ $ref: '#/components/schemas/currency'
657
+ required:
658
+ - amount
659
+ - currency
2877
660
  type: object
2878
661
  amountType:
2879
- enum: *ref_13
662
+ enum:
663
+ - SEND
664
+ - RECEIVE
2880
665
  type: string
2881
666
  bulkQuoteId:
2882
667
  description: A Mojaloop API bulk quote identifier (UUID).
@@ -2885,13 +670,47 @@ components:
2885
670
  type: string
2886
671
  bulkQuoteRequest:
2887
672
  description: A request for a bulk quote.
2888
- properties: *ref_47
2889
- required: *ref_48
673
+ properties:
674
+ bulkQuoteId:
675
+ $ref: '#/components/schemas/bulkQuoteId'
676
+ expiration:
677
+ $ref: '#/components/schemas/timestamp'
678
+ from:
679
+ $ref: '#/components/schemas/transferParty'
680
+ geoCode:
681
+ $ref: '#/components/schemas/geoCode'
682
+ individualQuotes:
683
+ items:
684
+ $ref: '#/components/schemas/IndividualQuote'
685
+ maxItems: 1000
686
+ minItems: 1
687
+ type: array
688
+ required:
689
+ - bulkQuoteId
690
+ - from
691
+ - individualQuotes
2890
692
  type: object
2891
693
  bulkQuoteResponse:
2892
694
  description: A response to a request for a bulk quote.
2893
- properties: *ref_4
2894
- required: *ref_5
695
+ properties:
696
+ bulkQuoteId:
697
+ $ref: '#/components/schemas/bulkQuoteId'
698
+ expiration:
699
+ $ref: '#/components/schemas/timestamp'
700
+ individualQuoteResults:
701
+ description: >-
702
+ Fees for each individual transaction, if any of them are charged per
703
+ transaction.
704
+ items:
705
+ oneOf:
706
+ - $ref: '#/components/schemas/IndividualQuoteResultSuccess'
707
+ - $ref: '#/components/schemas/IndividualQuoteResultFailed'
708
+ maxItems: 1000
709
+ minItems: 1
710
+ type: array
711
+ required:
712
+ - bulkQuoteId
713
+ - individualQuoteResults
2895
714
  type: object
2896
715
  bulkTransferId:
2897
716
  description: A Mojaloop API transfer identifier (UUID).
@@ -2899,15 +718,207 @@ components:
2899
718
  ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2900
719
  type: string
2901
720
  bulkTransferRequest:
2902
- properties: *ref_49
2903
- required: *ref_50
721
+ properties:
722
+ bulkQuote:
723
+ $ref: '#/components/schemas/bulkQuoteResponse'
724
+ bulkTransferId:
725
+ $ref: '#/components/schemas/bulkTransferId'
726
+ from:
727
+ $ref: '#/components/schemas/transferParty'
728
+ individualTransfers:
729
+ items:
730
+ $ref: '#/components/schemas/IndividualTransfer'
731
+ maxItems: 1000
732
+ minItems: 1
733
+ type: array
734
+ required:
735
+ - bulkTransferId
736
+ - individualTransfers
2904
737
  type: object
2905
738
  bulkTransferResponse:
2906
- properties: *ref_19
2907
- required: *ref_20
739
+ properties:
740
+ bulkTransferId:
741
+ $ref: '#/components/schemas/bulkTransferId'
742
+ homeTransactionId:
743
+ description: >-
744
+ Transaction ID from the DFSP backend, used to reconcile transactions
745
+ between the switch and DFSP backend systems.
746
+ type: string
747
+ individualTransferResults:
748
+ items:
749
+ $ref: '#/components/schemas/IndividualTransferResult'
750
+ maxItems: 1000
751
+ minItems: 1
752
+ type: array
753
+ required:
754
+ - homeTransactionId
2908
755
  type: object
2909
756
  currency:
2910
- enum: *ref_0
757
+ enum:
758
+ - AED
759
+ - AFN
760
+ - ALL
761
+ - AMD
762
+ - ANG
763
+ - AOA
764
+ - ARS
765
+ - AUD
766
+ - AWG
767
+ - AZN
768
+ - BAM
769
+ - BBD
770
+ - BDT
771
+ - BGN
772
+ - BHD
773
+ - BIF
774
+ - BMD
775
+ - BND
776
+ - BOB
777
+ - BRL
778
+ - BSD
779
+ - BTN
780
+ - BWP
781
+ - BYN
782
+ - BZD
783
+ - CAD
784
+ - CDF
785
+ - CHF
786
+ - CLP
787
+ - CNY
788
+ - COP
789
+ - CRC
790
+ - CUC
791
+ - CUP
792
+ - CVE
793
+ - CZK
794
+ - DJF
795
+ - DKK
796
+ - DOP
797
+ - DZD
798
+ - EGP
799
+ - ERN
800
+ - ETB
801
+ - EUR
802
+ - FJD
803
+ - FKP
804
+ - GBP
805
+ - GEL
806
+ - GGP
807
+ - GHS
808
+ - GIP
809
+ - GMD
810
+ - GNF
811
+ - GTQ
812
+ - GYD
813
+ - HKD
814
+ - HNL
815
+ - HRK
816
+ - HTG
817
+ - HUF
818
+ - IDR
819
+ - ILS
820
+ - IMP
821
+ - INR
822
+ - IQD
823
+ - IRR
824
+ - ISK
825
+ - JEP
826
+ - JMD
827
+ - JOD
828
+ - JPY
829
+ - KES
830
+ - KGS
831
+ - KHR
832
+ - KMF
833
+ - KPW
834
+ - KRW
835
+ - KWD
836
+ - KYD
837
+ - KZT
838
+ - LAK
839
+ - LBP
840
+ - LKR
841
+ - LRD
842
+ - LSL
843
+ - LYD
844
+ - MAD
845
+ - MDL
846
+ - MGA
847
+ - MKD
848
+ - MMK
849
+ - MNT
850
+ - MOP
851
+ - MRO
852
+ - MUR
853
+ - MVR
854
+ - MWK
855
+ - MXN
856
+ - MYR
857
+ - MZN
858
+ - NAD
859
+ - NGN
860
+ - NIO
861
+ - NOK
862
+ - NPR
863
+ - NZD
864
+ - OMR
865
+ - PAB
866
+ - PEN
867
+ - PGK
868
+ - PHP
869
+ - PKR
870
+ - PLN
871
+ - PYG
872
+ - QAR
873
+ - RON
874
+ - RSD
875
+ - RUB
876
+ - RWF
877
+ - SAR
878
+ - SBD
879
+ - SCR
880
+ - SDG
881
+ - SEK
882
+ - SGD
883
+ - SHP
884
+ - SLL
885
+ - SOS
886
+ - SPL
887
+ - SRD
888
+ - STD
889
+ - SVC
890
+ - SYP
891
+ - SZL
892
+ - THB
893
+ - TJS
894
+ - TMT
895
+ - TND
896
+ - TOP
897
+ - TRY
898
+ - TTD
899
+ - TVD
900
+ - TWD
901
+ - TZS
902
+ - UAH
903
+ - UGX
904
+ - USD
905
+ - UYU
906
+ - UZS
907
+ - VEF
908
+ - VND
909
+ - VUV
910
+ - WST
911
+ - XAF
912
+ - XCD
913
+ - XDR
914
+ - XOF
915
+ - XPF
916
+ - XTS
917
+ - XXX
918
+ - YER
919
+ - ZAR
920
+ - ZMW
921
+ - ZWD
2911
922
  maxLength: 3
2912
923
  minLength: 3
2913
924
  type: string
@@ -2938,58 +949,60 @@ components:
2938
949
  description: A Mojaloop API error information construct.
2939
950
  properties:
2940
951
  errorCode:
2941
- description: >
2942
- The API data type errorCode is a JSON String of four characters,
2943
- consisting of digits only. Negative numbers are not allowed. A
2944
- leading zero is not allowed. Each error code in the API is a
2945
- four-digit number, for example, 1234, where the first number (1 in
2946
- the example) represents the high-level error category, the second
2947
- number (2 in the example) represents the low-level error category,
2948
- and the last two numbers (34 in the example) represents the specific
2949
- error.
2950
- pattern: ^[1-9]\d{3}$
2951
- title: ErrorCode
2952
- type: string
952
+ $ref: '#/components/schemas/errorCode'
2953
953
  errorDescription:
2954
- description: Error description string.
2955
- maxLength: 128
2956
- minLength: 1
2957
- title: ErrorDescription
2958
- type: string
954
+ $ref: '#/components/schemas/errorDescription'
2959
955
  extensionList:
2960
- description: Data model for the complex type ExtensionList.
2961
- properties: &ref_52
2962
- extension:
2963
- description: Number of Extension elements.
2964
- items:
2965
- properties: *ref_51
2966
- type: object
2967
- maxItems: 16
2968
- minItems: 1
2969
- type: array
2970
- required: &ref_53
2971
- - extension
2972
- type: object
956
+ $ref: '#/components/schemas/extensionListComplex'
2973
957
  required:
2974
958
  - errorCode
2975
959
  - errorDescription
2976
960
  title: ErrorInformation
2977
961
  type: object
2978
962
  errorResponse:
2979
- properties: *ref_3
963
+ properties:
964
+ message:
965
+ description: Error message text
966
+ type: string
967
+ statusCode:
968
+ description: >
969
+ Backend error code from FSP. Ideally, statusCode is FSPIOP
970
+ conforming. SDK will use status code to retrieve an FSPIOP error
971
+ with the same code.
972
+
973
+ Otherwise, a suitable generic FSPIOP will be used with the
974
+ errorResponse in the FSPIOP error message.
975
+ type: string
2980
976
  type: object
2981
977
  extensionItem:
2982
- properties: *ref_51
978
+ properties:
979
+ key:
980
+ maxLength: 32
981
+ minLength: 1
982
+ type: string
983
+ value:
984
+ maxLength: 128
985
+ minLength: 1
986
+ type: string
2983
987
  type: object
2984
988
  extensionList:
2985
- items: *ref_17
989
+ items:
990
+ $ref: '#/components/schemas/extensionItem'
2986
991
  maxItems: 16
2987
992
  minItems: 0
2988
993
  type: array
2989
994
  extensionListComplex:
2990
995
  description: Data model for the complex type ExtensionList.
2991
- properties: *ref_52
2992
- required: *ref_53
996
+ properties:
997
+ extension:
998
+ description: Number of Extension elements.
999
+ items:
1000
+ $ref: '#/components/schemas/extensionItem'
1001
+ maxItems: 16
1002
+ minItems: 1
1003
+ type: array
1004
+ required:
1005
+ - extension
2993
1006
  type: object
2994
1007
  fspId:
2995
1008
  description: FSP identifier.
@@ -2998,7 +1011,72 @@ components:
2998
1011
  type: string
2999
1012
  fulfilNotification:
3000
1013
  description: PUT /transfers/{transferId} object.
3001
- properties: *ref_54
1014
+ properties:
1015
+ currentState:
1016
+ $ref: '#/components/schemas/transferStatus'
1017
+ direction:
1018
+ enum:
1019
+ - INBOUND
1020
+ type: string
1021
+ finalNotification:
1022
+ properties:
1023
+ completedTimestamp:
1024
+ $ref: '#/components/schemas/timestamp'
1025
+ extensionList:
1026
+ $ref: '#/components/schemas/extensionList'
1027
+ transferState:
1028
+ $ref: '#/components/schemas/transferState'
1029
+ required:
1030
+ - completedTimestamp
1031
+ - transferState
1032
+ type: object
1033
+ fulfil:
1034
+ properties:
1035
+ body:
1036
+ type: object
1037
+ headers:
1038
+ type: object
1039
+ type: object
1040
+ initiatedTimestamp:
1041
+ $ref: '#/components/schemas/timestamp'
1042
+ lastError:
1043
+ $ref: '#/components/schemas/transferError'
1044
+ prepare:
1045
+ properties:
1046
+ body:
1047
+ type: object
1048
+ headers:
1049
+ type: object
1050
+ type: object
1051
+ quote:
1052
+ properties:
1053
+ fulfilment:
1054
+ type: string
1055
+ internalRequest:
1056
+ type: object
1057
+ mojaloopResponse:
1058
+ type: object
1059
+ request:
1060
+ type: object
1061
+ response:
1062
+ type: object
1063
+ type: object
1064
+ quoteRequest:
1065
+ properties:
1066
+ body:
1067
+ type: object
1068
+ headers:
1069
+ type: object
1070
+ type: object
1071
+ quoteResponse:
1072
+ properties:
1073
+ body:
1074
+ type: object
1075
+ headers:
1076
+ type: object
1077
+ type: object
1078
+ transferId:
1079
+ $ref: '#/components/schemas/transferId'
3002
1080
  title: TransfersIDPatchResponse
3003
1081
  type: object
3004
1082
  generalError:
@@ -3010,15 +1088,30 @@ components:
3010
1088
  description: >-
3011
1089
  Indicates the geographic location from where the transaction was
3012
1090
  initiated.
3013
- properties: *ref_24
3014
- required: *ref_25
1091
+ properties:
1092
+ latitude:
1093
+ $ref: '#/components/schemas/latitude'
1094
+ longitude:
1095
+ $ref: '#/components/schemas/longitude'
1096
+ required:
1097
+ - latitude
1098
+ - longitude
3015
1099
  type: object
3016
1100
  idSubValue:
3017
1101
  maxLength: 128
3018
1102
  minLength: 1
3019
1103
  type: string
3020
1104
  idType:
3021
- enum: *ref_55
1105
+ enum:
1106
+ - MSISDN
1107
+ - ACCOUNT_NO
1108
+ - EMAIL
1109
+ - PERSONAL_ID
1110
+ - BUSINESS
1111
+ - DEVICE
1112
+ - ACCOUNT_ID
1113
+ - IBAN
1114
+ - ALIAS
3022
1115
  type: string
3023
1116
  idValue:
3024
1117
  description: Identifier of the party.
@@ -3027,14 +1120,38 @@ components:
3027
1120
  type: string
3028
1121
  ilpPacketData:
3029
1122
  description: Object containing transfer object.
3030
- properties: *ref_56
3031
- required: *ref_57
1123
+ properties:
1124
+ amount:
1125
+ $ref: '#/components/schemas/amountCurrency'
1126
+ payee:
1127
+ $ref: '#/components/schemas/Party'
1128
+ payer:
1129
+ $ref: '#/components/schemas/Party'
1130
+ quoteId:
1131
+ $ref: '#/components/schemas/quoteId'
1132
+ transactionId:
1133
+ $ref: '#/components/schemas/transactionId'
1134
+ transactionType:
1135
+ $ref: '#/components/schemas/transactionTypeObject'
1136
+ required:
1137
+ - quoteId
1138
+ - transactionId
1139
+ - payer
1140
+ - payee
1141
+ - amount
1142
+ - transactionType
3032
1143
  type: object
3033
1144
  initiator:
3034
- enum: *ref_14
1145
+ enum:
1146
+ - PAYER
1147
+ - PAYEE
3035
1148
  type: string
3036
1149
  initiatorType:
3037
- enum: *ref_15
1150
+ enum:
1151
+ - CONSUMER
1152
+ - AGENT
1153
+ - BUSINESS
1154
+ - DEVICE
3038
1155
  type: string
3039
1156
  latitude:
3040
1157
  description: >-
@@ -3054,14 +1171,24 @@ components:
3054
1171
  pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
3055
1172
  type: string
3056
1173
  otpDetails:
3057
- properties: *ref_58
3058
- required: *ref_59
1174
+ properties:
1175
+ otpValue:
1176
+ description: OTP value.
1177
+ type: string
1178
+ required:
1179
+ - otpValue
3059
1180
  type: object
3060
1181
  participantsResponse:
3061
- properties: *ref_22
1182
+ properties:
1183
+ fspId:
1184
+ $ref: '#/components/schemas/fspId'
3062
1185
  type: object
3063
1186
  payerType:
3064
- enum: *ref_60
1187
+ enum:
1188
+ - CONSUMER
1189
+ - AGENT
1190
+ - BUSINESS
1191
+ - DEVICE
3065
1192
  type: string
3066
1193
  quoteId:
3067
1194
  description: A Mojaloop API quote identifier (UUID).
@@ -3070,16 +1197,94 @@ components:
3070
1197
  type: string
3071
1198
  quoteRequest:
3072
1199
  description: A request for a quote for transfer from the DFSP backend.
3073
- properties: *ref_61
3074
- required: *ref_62
1200
+ properties:
1201
+ amount:
1202
+ $ref: '#/components/schemas/money'
1203
+ amountType:
1204
+ $ref: '#/components/schemas/amountType'
1205
+ currency:
1206
+ $ref: '#/components/schemas/currency'
1207
+ expiration:
1208
+ $ref: '#/components/schemas/timestamp'
1209
+ extensionList:
1210
+ $ref: '#/components/schemas/extensionList'
1211
+ feesAmount:
1212
+ $ref: '#/components/schemas/money'
1213
+ feesCurrency:
1214
+ $ref: '#/components/schemas/currency'
1215
+ from:
1216
+ $ref: '#/components/schemas/transferParty'
1217
+ geoCode:
1218
+ $ref: '#/components/schemas/geoCode'
1219
+ initiator:
1220
+ $ref: '#/components/schemas/initiator'
1221
+ initiatorType:
1222
+ $ref: '#/components/schemas/initiatorType'
1223
+ note:
1224
+ description: An optional note associated with the requested transfer.
1225
+ maxLength: 128
1226
+ minLength: 1
1227
+ type: string
1228
+ quoteId:
1229
+ $ref: '#/components/schemas/quoteId'
1230
+ subScenario:
1231
+ $ref: '#/components/schemas/TransactionSubScenario'
1232
+ to:
1233
+ $ref: '#/components/schemas/transferParty'
1234
+ transactionId:
1235
+ $ref: '#/components/schemas/transactionId'
1236
+ transactionType:
1237
+ $ref: '#/components/schemas/transactionType'
1238
+ required:
1239
+ - quoteId
1240
+ - transactionId
1241
+ - to
1242
+ - from
1243
+ - amountType
1244
+ - amount
1245
+ - currency
1246
+ - transactionType
1247
+ - initiator
1248
+ - initiatorType
3075
1249
  type: object
3076
1250
  quoteResponse:
3077
1251
  description: A response to a request for a quote.
3078
- properties: *ref_28
3079
- required: *ref_29
1252
+ properties:
1253
+ expiration:
1254
+ $ref: '#/components/schemas/timestamp'
1255
+ extensionList:
1256
+ $ref: '#/components/schemas/extensionList'
1257
+ geoCode:
1258
+ $ref: '#/components/schemas/geoCode'
1259
+ payeeFspCommissionAmount:
1260
+ $ref: '#/components/schemas/money'
1261
+ payeeFspCommissionAmountCurrency:
1262
+ $ref: '#/components/schemas/currency'
1263
+ payeeFspFeeAmount:
1264
+ $ref: '#/components/schemas/money'
1265
+ payeeFspFeeAmountCurrency:
1266
+ $ref: '#/components/schemas/currency'
1267
+ payeeReceiveAmount:
1268
+ $ref: '#/components/schemas/money'
1269
+ payeeReceiveAmountCurrency:
1270
+ $ref: '#/components/schemas/currency'
1271
+ quoteId:
1272
+ $ref: '#/components/schemas/quoteId'
1273
+ transactionId:
1274
+ $ref: '#/components/schemas/transactionId'
1275
+ transferAmount:
1276
+ $ref: '#/components/schemas/money'
1277
+ transferAmountCurrency:
1278
+ $ref: '#/components/schemas/currency'
1279
+ required:
1280
+ - quoteId
1281
+ - transactionId
1282
+ - transferAmount
1283
+ - transferAmountCurrency
3080
1284
  type: object
3081
1285
  scenario:
3082
- enum: *ref_63
1286
+ enum:
1287
+ - TRANSFER
3083
1288
  type: string
3084
1289
  timestamp:
3085
1290
  description: An ISO-8601 formatted timestamp.
@@ -3095,8 +1300,43 @@ components:
3095
1300
  type: string
3096
1301
  transactionRequest:
3097
1302
  description: A request for a pull based transfer.
3098
- properties: *ref_64
3099
- required: *ref_65
1303
+ properties:
1304
+ amount:
1305
+ $ref: '#/components/schemas/money'
1306
+ currency:
1307
+ $ref: '#/components/schemas/currency'
1308
+ expiration:
1309
+ $ref: '#/components/schemas/timestamp'
1310
+ from:
1311
+ $ref: '#/components/schemas/transferParty'
1312
+ geoCode:
1313
+ $ref: '#/components/schemas/geoCode'
1314
+ initiator:
1315
+ $ref: '#/components/schemas/initiator'
1316
+ initiatorType:
1317
+ $ref: '#/components/schemas/initiatorType'
1318
+ note:
1319
+ description: An optional note associated with the requested transfer.
1320
+ maxLength: 128
1321
+ minLength: 1
1322
+ type: string
1323
+ to:
1324
+ $ref: '#/components/schemas/transferParty'
1325
+ transactionRequestId:
1326
+ $ref: '#/components/schemas/transactionRequestId'
1327
+ transactionType:
1328
+ $ref: '#/components/schemas/transactionType'
1329
+ subScenario:
1330
+ $ref: '#/components/schemas/TransactionSubScenario'
1331
+ required:
1332
+ - transactionRequestId
1333
+ - to
1334
+ - from
1335
+ - amount
1336
+ - currency
1337
+ - transactionType
1338
+ - initiator
1339
+ - initiatorType
3100
1340
  type: object
3101
1341
  transactionRequestId:
3102
1342
  description: A Mojaloop API transaction request identifier (UUID).
@@ -3105,11 +1345,21 @@ components:
3105
1345
  type: string
3106
1346
  transactionRequestResponse:
3107
1347
  description: A response to a request for a quote.
3108
- properties: *ref_66
3109
- required: *ref_67
1348
+ properties:
1349
+ transactionId:
1350
+ $ref: '#/components/schemas/transactionId'
1351
+ transferAmount:
1352
+ $ref: '#/components/schemas/transactionRequestState'
1353
+ required:
1354
+ - transactionId
1355
+ - transactionRequestState
3110
1356
  type: object
3111
1357
  transactionRequestState:
3112
- enum: *ref_68
1358
+ enum:
1359
+ - RECEIVED
1360
+ - PENDING
1361
+ - ACCEPTED
1362
+ - REJECTED
3113
1363
  type: string
3114
1364
  transactionSubScenario:
3115
1365
  description: >-
@@ -3120,16 +1370,67 @@ components:
3120
1370
  title: transactionSubScenario
3121
1371
  type: string
3122
1372
  transactionType:
3123
- enum: *ref_16
1373
+ enum:
1374
+ - TRANSFER
1375
+ - DEPOSIT
1376
+ - PAYMENT
3124
1377
  type: string
3125
1378
  transactionTypeObject:
3126
1379
  description: Object containing transfer object.
3127
- properties: *ref_69
3128
- required: *ref_70
1380
+ properties:
1381
+ initiator:
1382
+ $ref: '#/components/schemas/initiator'
1383
+ initiatorType:
1384
+ $ref: '#/components/schemas/initiatorType'
1385
+ scenario:
1386
+ $ref: '#/components/schemas/scenario'
1387
+ subScenario:
1388
+ $ref: '#/components/schemas/TransactionSubScenario'
1389
+ required:
1390
+ - scenario
1391
+ - initiator
1392
+ - initiatorType
3129
1393
  type: object
3130
1394
  transferDetailsResponse:
3131
- properties: *ref_71
3132
- required: *ref_72
1395
+ properties:
1396
+ amount:
1397
+ $ref: '#/components/schemas/money'
1398
+ amountType:
1399
+ $ref: '#/components/schemas/amountType'
1400
+ currency:
1401
+ $ref: '#/components/schemas/currency'
1402
+ extensions:
1403
+ $ref: '#/components/schemas/extensionList'
1404
+ from:
1405
+ $ref: '#/components/schemas/transferParty'
1406
+ homeTransactionId:
1407
+ description: >-
1408
+ Transaction ID from the DFSP backend, used to reconcile transactions
1409
+ between the Switch and DFSP backend systems.
1410
+ type: string
1411
+ note:
1412
+ maxLength: 128
1413
+ type: string
1414
+ subScenario:
1415
+ $ref: '#/components/schemas/TransactionSubScenario'
1416
+ timestamp:
1417
+ $ref: '#/components/schemas/timestamp'
1418
+ to:
1419
+ $ref: '#/components/schemas/transferParty'
1420
+ transactionType:
1421
+ $ref: '#/components/schemas/transactionType'
1422
+ transferState:
1423
+ $ref: '#/components/schemas/transferState'
1424
+ required:
1425
+ - homeTransactionId
1426
+ - from
1427
+ - to
1428
+ - amountType
1429
+ - currency
1430
+ - amount
1431
+ - transferState
1432
+ - transactionType
1433
+ - timestamp
3133
1434
  type: object
3134
1435
  transferId:
3135
1436
  description: A Mojaloop API transfer identifier (UUID).
@@ -3137,16 +1438,102 @@ components:
3137
1438
  ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
3138
1439
  type: string
3139
1440
  transferParty:
3140
- properties: *ref_1
3141
- required: *ref_2
1441
+ properties:
1442
+ dateOfBirth:
1443
+ $ref: '#/components/schemas/dateOfBirth'
1444
+ displayName:
1445
+ description: Display name of the sender, if known.
1446
+ type: string
1447
+ extensionList:
1448
+ $ref: '#/components/schemas/extensionList'
1449
+ firstName:
1450
+ description: Party first name.
1451
+ type: string
1452
+ fspId:
1453
+ description: Mojaloop scheme FSPID of the DFSP which owns the party account.
1454
+ type: string
1455
+ idSubValue:
1456
+ $ref: '#/components/schemas/idSubValue'
1457
+ idType:
1458
+ $ref: '#/components/schemas/idType'
1459
+ idValue:
1460
+ description: The identifier string used to identify the sender.
1461
+ type: string
1462
+ lastName:
1463
+ description: Party last name.
1464
+ type: string
1465
+ merchantClassificationCode:
1466
+ description: >-
1467
+ Up to 4 digits specifying the sender's merchant classification, if
1468
+ known and applicable.
1469
+ type: string
1470
+ middleName:
1471
+ description: Party middle name.
1472
+ type: string
1473
+ type:
1474
+ $ref: '#/components/schemas/payerType'
1475
+ required:
1476
+ - idType
1477
+ - idValue
3142
1478
  type: object
3143
1479
  transferRequest:
3144
- properties: *ref_73
3145
- required: *ref_74
1480
+ properties:
1481
+ amount:
1482
+ $ref: '#/components/schemas/money'
1483
+ amountType:
1484
+ $ref: '#/components/schemas/amountType'
1485
+ currency:
1486
+ $ref: '#/components/schemas/currency'
1487
+ from:
1488
+ $ref: '#/components/schemas/transferParty'
1489
+ ilpPacket:
1490
+ properties:
1491
+ data:
1492
+ $ref: '#/components/schemas/ilpPacketData'
1493
+ required:
1494
+ - data
1495
+ type: object
1496
+ note:
1497
+ maxLength: 128
1498
+ type: string
1499
+ quote:
1500
+ $ref: '#/components/schemas/quoteResponse'
1501
+ quoteRequestExtensions:
1502
+ $ref: '#/components/schemas/extensionList'
1503
+ subScenario:
1504
+ $ref: '#/components/schemas/TransactionSubScenario'
1505
+ to:
1506
+ $ref: '#/components/schemas/transferParty'
1507
+ transactionType:
1508
+ $ref: '#/components/schemas/transactionType'
1509
+ transferId:
1510
+ $ref: '#/components/schemas/transferId'
1511
+ required:
1512
+ - transferId
1513
+ - quote
1514
+ - from
1515
+ - to
1516
+ - amountType
1517
+ - currency
1518
+ - amount
1519
+ - transactionType
1520
+ - ilpPacket
3146
1521
  type: object
3147
1522
  transferResponse:
3148
- properties: *ref_75
3149
- required: *ref_76
1523
+ properties:
1524
+ completedTimestamp:
1525
+ $ref: '#/components/schemas/timestamp'
1526
+ fulfilment:
1527
+ $ref: '#/components/schemas/IlpFulfilment'
1528
+ homeTransactionId:
1529
+ description: >-
1530
+ Transaction ID from the DFSP backend, used to reconcile transactions
1531
+ between the Switch and DFSP backend systems.
1532
+ type: string
1533
+ transferState:
1534
+ $ref: '#/components/schemas/transferState'
1535
+ required:
1536
+ - homeTransactionId
3150
1537
  type: object
3151
1538
  transferState:
3152
1539
  description: >
@@ -3155,11 +1542,27 @@ components:
3155
1542
  COMMITTED DFSP has successfully performed the transfer. - ABORTED DFSP
3156
1543
  has aborted the transfer due a rejection or failure to perform the
3157
1544
  transfer.
3158
- enum: *ref_30
1545
+ enum:
1546
+ - RECEIVED
1547
+ - RESERVED
1548
+ - COMMITTED
1549
+ - ABORTED
3159
1550
  type: string
3160
1551
  transferStatus:
3161
- enum: *ref_77
1552
+ enum:
1553
+ - ERROR_OCCURRED
1554
+ - WAITING_FOR_PARTY_ACCEPTANCE
1555
+ - WAITING_FOR_QUOTE_ACCEPTANCE
1556
+ - COMPLETED
3162
1557
  type: string
1558
+ TransactionSubScenario:
1559
+ title: TransactionSubScenario
1560
+ type: string
1561
+ pattern: ^[A-Z_]{1,32}$
1562
+ description: >-
1563
+ Possible sub-scenario, defined locally within the scheme (UndefinedEnum
1564
+ Type).
1565
+ example: LOCALLY_DEFINED_SUBSCENARIO
3163
1566
  CorrelationId:
3164
1567
  title: CorrelationId
3165
1568
  type: string
@@ -3175,11 +1578,21 @@ components:
3175
1578
  example: b51ec534-ee48-4575-b6a9-ead2955b8069
3176
1579
  bulkTransactionStatus:
3177
1580
  type: string
3178
- enum: *ref_78
1581
+ enum:
1582
+ - ERROR_OCCURRED
1583
+ - WAITING_FOR_PARTY_ACCEPTANCE
1584
+ - WAITING_FOR_QUOTE_ACCEPTANCE
1585
+ - COMPLETED
3179
1586
  autoAcceptPartyOption:
3180
1587
  type: object
3181
- required: *ref_79
3182
- properties: *ref_80
1588
+ required:
1589
+ - enabled
1590
+ properties:
1591
+ enabled:
1592
+ type: boolean
1593
+ enum:
1594
+ - false
1595
+ - true
3183
1596
  Currency:
3184
1597
  title: Currency
3185
1598
  description: >-
@@ -3190,7 +1603,171 @@ components:
3190
1603
  type: string
3191
1604
  minLength: 3
3192
1605
  maxLength: 3
3193
- enum: *ref_8
1606
+ enum:
1607
+ - AED
1608
+ - AFN
1609
+ - ALL
1610
+ - AMD
1611
+ - ANG
1612
+ - AOA
1613
+ - ARS
1614
+ - AUD
1615
+ - AWG
1616
+ - AZN
1617
+ - BAM
1618
+ - BBD
1619
+ - BDT
1620
+ - BGN
1621
+ - BHD
1622
+ - BIF
1623
+ - BMD
1624
+ - BND
1625
+ - BOB
1626
+ - BRL
1627
+ - BSD
1628
+ - BTN
1629
+ - BWP
1630
+ - BYN
1631
+ - BZD
1632
+ - CAD
1633
+ - CDF
1634
+ - CHF
1635
+ - CLP
1636
+ - CNY
1637
+ - COP
1638
+ - CRC
1639
+ - CUC
1640
+ - CUP
1641
+ - CVE
1642
+ - CZK
1643
+ - DJF
1644
+ - DKK
1645
+ - DOP
1646
+ - DZD
1647
+ - EGP
1648
+ - ERN
1649
+ - ETB
1650
+ - EUR
1651
+ - FJD
1652
+ - FKP
1653
+ - GBP
1654
+ - GEL
1655
+ - GGP
1656
+ - GHS
1657
+ - GIP
1658
+ - GMD
1659
+ - GNF
1660
+ - GTQ
1661
+ - GYD
1662
+ - HKD
1663
+ - HNL
1664
+ - HRK
1665
+ - HTG
1666
+ - HUF
1667
+ - IDR
1668
+ - ILS
1669
+ - IMP
1670
+ - INR
1671
+ - IQD
1672
+ - IRR
1673
+ - ISK
1674
+ - JEP
1675
+ - JMD
1676
+ - JOD
1677
+ - JPY
1678
+ - KES
1679
+ - KGS
1680
+ - KHR
1681
+ - KMF
1682
+ - KPW
1683
+ - KRW
1684
+ - KWD
1685
+ - KYD
1686
+ - KZT
1687
+ - LAK
1688
+ - LBP
1689
+ - LKR
1690
+ - LRD
1691
+ - LSL
1692
+ - LYD
1693
+ - MAD
1694
+ - MDL
1695
+ - MGA
1696
+ - MKD
1697
+ - MMK
1698
+ - MNT
1699
+ - MOP
1700
+ - MRO
1701
+ - MUR
1702
+ - MVR
1703
+ - MWK
1704
+ - MXN
1705
+ - MYR
1706
+ - MZN
1707
+ - NAD
1708
+ - NGN
1709
+ - NIO
1710
+ - NOK
1711
+ - NPR
1712
+ - NZD
1713
+ - OMR
1714
+ - PAB
1715
+ - PEN
1716
+ - PGK
1717
+ - PHP
1718
+ - PKR
1719
+ - PLN
1720
+ - PYG
1721
+ - QAR
1722
+ - RON
1723
+ - RSD
1724
+ - RUB
1725
+ - RWF
1726
+ - SAR
1727
+ - SBD
1728
+ - SCR
1729
+ - SDG
1730
+ - SEK
1731
+ - SGD
1732
+ - SHP
1733
+ - SLL
1734
+ - SOS
1735
+ - SPL
1736
+ - SRD
1737
+ - STD
1738
+ - SVC
1739
+ - SYP
1740
+ - SZL
1741
+ - THB
1742
+ - TJS
1743
+ - TMT
1744
+ - TND
1745
+ - TOP
1746
+ - TRY
1747
+ - TTD
1748
+ - TVD
1749
+ - TWD
1750
+ - TZS
1751
+ - UAH
1752
+ - UGX
1753
+ - USD
1754
+ - UYU
1755
+ - UZS
1756
+ - VEF
1757
+ - VND
1758
+ - VUV
1759
+ - WST
1760
+ - XAF
1761
+ - XCD
1762
+ - XDR
1763
+ - XOF
1764
+ - XPF
1765
+ - XTS
1766
+ - XXX
1767
+ - YER
1768
+ - ZAR
1769
+ - ZMW
1770
+ - ZWD
3194
1771
  Amount:
3195
1772
  title: Amount
3196
1773
  type: string
@@ -3205,12 +1782,29 @@ components:
3205
1782
  example: '123.45'
3206
1783
  bulkPerTransferFeeLimit:
3207
1784
  type: object
3208
- required: *ref_81
3209
- properties: *ref_82
1785
+ required:
1786
+ - currency
1787
+ - amount
1788
+ properties:
1789
+ currency:
1790
+ $ref: '#/components/schemas/Currency'
1791
+ amount:
1792
+ $ref: '#/components/schemas/Amount'
3210
1793
  autoAcceptQuote:
3211
1794
  type: object
3212
- required: *ref_83
3213
- properties: *ref_84
1795
+ required:
1796
+ - enabled
1797
+ properties:
1798
+ enabled:
1799
+ type: boolean
1800
+ enum:
1801
+ - true
1802
+ - false
1803
+ perTransferFeeLimits:
1804
+ type: array
1805
+ minItems: 0
1806
+ items:
1807
+ $ref: '#/components/schemas/bulkPerTransferFeeLimit'
3214
1808
  DateTime:
3215
1809
  title: DateTime
3216
1810
  type: string
@@ -3228,12 +1822,54 @@ components:
3228
1822
  example: '2016-05-24T08:38:08.699-04:00'
3229
1823
  bulkTransactionOptions:
3230
1824
  type: object
3231
- required: *ref_85
3232
- properties: *ref_86
1825
+ required:
1826
+ - autoAcceptParty
1827
+ - autoAcceptQuote
1828
+ - bulkExpiration
1829
+ properties:
1830
+ onlyValidateParty:
1831
+ description: >-
1832
+ Set to true if only party validation is required. This means the
1833
+ quotes and transfers will not run. This is useful for only party
1834
+ resolution.
1835
+ type: boolean
1836
+ autoAcceptParty:
1837
+ $ref: '#/components/schemas/autoAcceptPartyOption'
1838
+ autoAcceptQuote:
1839
+ description: >-
1840
+ Set to true if the quote response is accepted without confirmation
1841
+ from the payer. The fees applied by the payee will be acceptable to
1842
+ the payer abiding by the limits set by optional
1843
+ 'perTransferFeeLimits' array.
1844
+ type: object
1845
+ oneOf:
1846
+ - $ref: '#/components/schemas/autoAcceptQuote'
1847
+ skipPartyLookup:
1848
+ description: >-
1849
+ Set to true if supplying an FSPID for the payee party and no party
1850
+ resolution is needed. This may be useful if a previous party
1851
+ resolution has been performed.
1852
+ type: boolean
1853
+ synchronous:
1854
+ description: >-
1855
+ Set to true if the bulkTransfer requests need be handled
1856
+ synchronous. Otherwise the requests will be handled asynchronously,
1857
+ meaning there will be callbacks whenever the processing is done
1858
+ type: boolean
1859
+ bulkExpiration:
1860
+ $ref: '#/components/schemas/DateTime'
3233
1861
  PartyIdType:
3234
1862
  title: PartyIdType
3235
1863
  type: string
3236
- enum: *ref_87
1864
+ enum:
1865
+ - MSISDN
1866
+ - EMAIL
1867
+ - PERSONAL_ID
1868
+ - BUSINESS
1869
+ - DEVICE
1870
+ - ACCOUNT_ID
1871
+ - IBAN
1872
+ - ALIAS
3237
1873
  description: >-
3238
1874
  Below are the allowed values for the enumeration.
3239
1875
 
@@ -3311,24 +1947,50 @@ components:
3311
1947
  title: Extension
3312
1948
  type: object
3313
1949
  description: Data model for the complex type Extension.
3314
- properties: *ref_88
3315
- required: *ref_89
1950
+ properties:
1951
+ key:
1952
+ $ref: '#/components/schemas/ExtensionKey'
1953
+ value:
1954
+ $ref: '#/components/schemas/ExtensionValue'
1955
+ required:
1956
+ - key
1957
+ - value
3316
1958
  ExtensionList:
3317
1959
  title: ExtensionList
3318
1960
  type: object
3319
1961
  description: >-
3320
1962
  Data model for the complex type ExtensionList. An optional list of
3321
1963
  extensions, specific to deployment.
3322
- properties: *ref_11
3323
- required: *ref_12
1964
+ properties:
1965
+ extension:
1966
+ type: array
1967
+ items:
1968
+ $ref: '#/components/schemas/Extension'
1969
+ minItems: 1
1970
+ maxItems: 16
1971
+ description: Number of Extension elements.
1972
+ required:
1973
+ - extension
3324
1974
  PartyIdInfo:
3325
1975
  title: PartyIdInfo
3326
1976
  type: object
3327
1977
  description: >-
3328
1978
  Data model for the complex type PartyIdInfo. An ExtensionList element
3329
1979
  has been added to this reqeust in version v1.1
3330
- properties: *ref_90
3331
- required: *ref_91
1980
+ properties:
1981
+ partyIdType:
1982
+ $ref: '#/components/schemas/PartyIdType'
1983
+ partyIdentifier:
1984
+ $ref: '#/components/schemas/PartyIdentifier'
1985
+ partySubIdOrType:
1986
+ $ref: '#/components/schemas/PartySubIdOrType'
1987
+ fspId:
1988
+ $ref: '#/components/schemas/FspId'
1989
+ extensionList:
1990
+ $ref: '#/components/schemas/ExtensionList'
1991
+ required:
1992
+ - partyIdType
1993
+ - partyIdentifier
3332
1994
  PartyName:
3333
1995
  title: PartyName
3334
1996
  type: string
@@ -3339,22 +2001,43 @@ components:
3339
2001
  title: PartyComplexName
3340
2002
  type: object
3341
2003
  description: Data model for the complex type PartyComplexName.
3342
- properties: *ref_92
2004
+ properties:
2005
+ firstName:
2006
+ $ref: '#/components/schemas/FirstName'
2007
+ middleName:
2008
+ $ref: '#/components/schemas/MiddleName'
2009
+ lastName:
2010
+ $ref: '#/components/schemas/LastName'
3343
2011
  PartyPersonalInfo:
3344
2012
  title: PartyPersonalInfo
3345
2013
  type: object
3346
2014
  description: Data model for the complex type PartyPersonalInfo.
3347
- properties: *ref_93
2015
+ properties:
2016
+ complexName:
2017
+ $ref: '#/components/schemas/PartyComplexName'
2018
+ dateOfBirth:
2019
+ $ref: '#/components/schemas/DateOfBirth'
3348
2020
  Party:
3349
2021
  title: Party
3350
2022
  type: object
3351
2023
  description: Data model for the complex type Party.
3352
- properties: *ref_26
3353
- required: *ref_27
2024
+ properties:
2025
+ partyIdInfo:
2026
+ $ref: '#/components/schemas/PartyIdInfo'
2027
+ merchantClassificationCode:
2028
+ $ref: '#/components/schemas/MerchantClassificationCode'
2029
+ name:
2030
+ $ref: '#/components/schemas/PartyName'
2031
+ personalInfo:
2032
+ $ref: '#/components/schemas/PartyPersonalInfo'
2033
+ required:
2034
+ - partyIdInfo
3354
2035
  AmountType:
3355
2036
  title: AmountType
3356
2037
  type: string
3357
- enum: *ref_94
2038
+ enum:
2039
+ - SEND
2040
+ - RECEIVE
3358
2041
  description: >-
3359
2042
  Below are the allowed values for the enumeration AmountType.
3360
2043
 
@@ -3371,59 +2054,6 @@ components:
3371
2054
  maxLength: 128
3372
2055
  description: Memo assigned to transaction.
3373
2056
  example: Note sent to Payee.
3374
- Money:
3375
- title: Money
3376
- type: object
3377
- description: Data model for the complex type Money.
3378
- properties: *ref_9
3379
- required: *ref_10
3380
- Latitude:
3381
- title: Latitude
3382
- type: string
3383
- pattern: >-
3384
- ^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$
3385
- description: >-
3386
- The API data type Latitude is a JSON String in a lexical format that is
3387
- restricted by a regular expression for interoperability reasons.
3388
- example: '+45.4215'
3389
- Longitude:
3390
- title: Longitude
3391
- type: string
3392
- pattern: >-
3393
- ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
3394
- description: >-
3395
- The API data type Longitude is a JSON String in a lexical format that is
3396
- restricted by a regular expression for interoperability reasons.
3397
- example: '+75.6972'
3398
- GeoCode:
3399
- title: GeoCode
3400
- type: object
3401
- description: >-
3402
- Data model for the complex type GeoCode. Indicates the geographic
3403
- location from where the transaction was initiated.
3404
- properties: *ref_95
3405
- required: *ref_96
3406
- IlpPacket:
3407
- title: IlpPacket
3408
- type: string
3409
- pattern: ^[A-Za-z0-9-_]+[=]{0,2}$
3410
- minLength: 1
3411
- maxLength: 32768
3412
- description: Information for recipient (transport layer information).
3413
- example: >-
3414
- AYIBgQAAAAAAAASwNGxldmVsb25lLmRmc3AxLm1lci45T2RTOF81MDdqUUZERmZlakgyOVc4bXFmNEpLMHlGTFGCAUBQU0svMS4wCk5vbmNlOiB1SXlweUYzY3pYSXBFdzVVc05TYWh3CkVuY3J5cHRpb246IG5vbmUKUGF5bWVudC1JZDogMTMyMzZhM2ItOGZhOC00MTYzLTg0NDctNGMzZWQzZGE5OGE3CgpDb250ZW50LUxlbmd0aDogMTM1CkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbgpTZW5kZXItSWRlbnRpZmllcjogOTI4MDYzOTEKCiJ7XCJmZWVcIjowLFwidHJhbnNmZXJDb2RlXCI6XCJpbnZvaWNlXCIsXCJkZWJpdE5hbWVcIjpcImFsaWNlIGNvb3BlclwiLFwiY3JlZGl0TmFtZVwiOlwibWVyIGNoYW50XCIsXCJkZWJpdElkZW50aWZpZXJcIjpcIjkyODA2MzkxXCJ9IgA
3415
- IlpCondition:
3416
- title: IlpCondition
3417
- type: string
3418
- pattern: ^[A-Za-z0-9-_]{43}$
3419
- maxLength: 48
3420
- description: Condition that must be attached to the transfer by the Payer.
3421
- QuotesIDPutResponse:
3422
- title: QuotesIDPutResponse
3423
- type: object
3424
- description: The object sent in the PUT /quotes/{ID} callback.
3425
- properties: *ref_97
3426
- required: *ref_98
3427
2057
  IlpFulfilment:
3428
2058
  title: IlpFulfilment
3429
2059
  type: string
@@ -3434,7 +2064,11 @@ components:
3434
2064
  TransferState:
3435
2065
  title: TransferState
3436
2066
  type: string
3437
- enum: *ref_99
2067
+ enum:
2068
+ - RECEIVED
2069
+ - RESERVED
2070
+ - COMMITTED
2071
+ - ABORTED
3438
2072
  description: >-
3439
2073
  Below are the allowed values for the enumeration.
3440
2074
 
@@ -3451,8 +2085,17 @@ components:
3451
2085
  title: TransfersIDPutResponse
3452
2086
  type: object
3453
2087
  description: The object sent in the PUT /transfers/{ID} callback.
3454
- properties: *ref_100
3455
- required: *ref_101
2088
+ properties:
2089
+ fulfilment:
2090
+ $ref: '#/components/schemas/IlpFulfilment'
2091
+ completedTimestamp:
2092
+ $ref: '#/components/schemas/DateTime'
2093
+ transferState:
2094
+ $ref: '#/components/schemas/TransferState'
2095
+ extensionList:
2096
+ $ref: '#/components/schemas/ExtensionList'
2097
+ required:
2098
+ - transferState
3456
2099
  ErrorCode:
3457
2100
  title: ErrorCode
3458
2101
  type: string
@@ -3476,23 +2119,102 @@ components:
3476
2119
  title: ErrorInformation
3477
2120
  type: object
3478
2121
  description: Data model for the complex type ErrorInformation.
3479
- properties: *ref_102
3480
- required: *ref_103
2122
+ properties:
2123
+ errorCode:
2124
+ $ref: '#/components/schemas/ErrorCode'
2125
+ errorDescription:
2126
+ $ref: '#/components/schemas/ErrorDescription'
2127
+ extensionList:
2128
+ $ref: '#/components/schemas/ExtensionList'
2129
+ required:
2130
+ - errorCode
2131
+ - errorDescription
3481
2132
  mojaloopError:
3482
2133
  type: object
3483
- properties: *ref_104
2134
+ properties:
2135
+ errorInformation:
2136
+ $ref: '#/components/schemas/ErrorInformation'
3484
2137
  transferError:
3485
2138
  type: object
3486
2139
  description: >-
3487
2140
  This object represents a Mojaloop API error received at any time during
3488
2141
  the transfer process
3489
- properties: *ref_32
2142
+ properties:
2143
+ httpStatusCode:
2144
+ type: integer
2145
+ description: >-
2146
+ The HTTP status code returned to the caller. This is the same as the
2147
+ actual HTTP status code returned with the response.
2148
+ mojaloopError:
2149
+ description: >-
2150
+ If a transfer process results in an error callback during the
2151
+ asynchronous Mojaloop API exchange, this property will contain the
2152
+ underlying Mojaloop API error object.
2153
+ $ref: '#/components/schemas/mojaloopError'
3490
2154
  bulkTransactionIndividualTransferResult:
3491
2155
  type: object
3492
- required: *ref_105
3493
- properties: *ref_106
2156
+ required:
2157
+ - homeTransactionId
2158
+ properties:
2159
+ transferId:
2160
+ $ref: '#/components/schemas/CorrelationId'
2161
+ homeTransactionId:
2162
+ type: string
2163
+ description: >-
2164
+ Transaction ID from the DFSP backend, used to reconcile transactions
2165
+ between the Switch and DFSP backend systems.
2166
+ transactionId:
2167
+ $ref: '#/components/schemas/CorrelationId'
2168
+ to:
2169
+ $ref: '#/components/schemas/Party'
2170
+ reference:
2171
+ description: Payer Loan reference
2172
+ type: string
2173
+ amountType:
2174
+ $ref: '#/components/schemas/AmountType'
2175
+ currency:
2176
+ $ref: '#/components/schemas/Currency'
2177
+ amount:
2178
+ $ref: '#/components/schemas/Amount'
2179
+ note:
2180
+ $ref: '#/components/schemas/Note'
2181
+ quoteId:
2182
+ $ref: '#/components/schemas/CorrelationId'
2183
+ quoteResponse:
2184
+ type: object
2185
+ fulfil:
2186
+ $ref: '#/components/schemas/TransfersIDPutResponse'
2187
+ quoteExtensions:
2188
+ $ref: '#/components/schemas/ExtensionList'
2189
+ transferExtensions:
2190
+ $ref: '#/components/schemas/ExtensionList'
2191
+ lastError:
2192
+ $ref: '#/components/schemas/transferError'
3494
2193
  bulkTransactionResponse:
3495
2194
  title: BulkTransactionResponse
3496
2195
  type: object
3497
- required: *ref_107
3498
- properties: *ref_108
2196
+ required:
2197
+ - bulkHomeTransactionID
2198
+ - bulkTransactionId
2199
+ - currentState
2200
+ - individualTransferResults
2201
+ properties:
2202
+ bulkHomeTransactionID:
2203
+ type: string
2204
+ description: >-
2205
+ Transaction ID from the DFSP backend, used to reconcile transactions
2206
+ between the Switch and DFSP backend systems.
2207
+ bulkTransactionId:
2208
+ $ref: '#/components/schemas/CorrelationId'
2209
+ currentState:
2210
+ $ref: '#/components/schemas/bulkTransactionStatus'
2211
+ options:
2212
+ $ref: '#/components/schemas/bulkTransactionOptions'
2213
+ individualTransferResults:
2214
+ description: List of individual transfer result in a bulk transfer response.
2215
+ type: array
2216
+ minItems: 1
2217
+ items:
2218
+ $ref: '#/components/schemas/bulkTransactionIndividualTransferResult'
2219
+ extensions:
2220
+ $ref: '#/components/schemas/ExtensionList'