@mojaloop/api-snippets 17.0.0 → 17.0.2-snapshot.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/docs/sdk-scheme-adapter-backend-v2_0_0-openapi3-snippets.yaml +2744 -0
  3. package/docs/sdk-scheme-adapter-outbound-v2_0_0-openapi3-snippets.yaml +40 -8
  4. package/lib/example.d.ts +1 -1
  5. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/index.d.ts +0 -0
  6. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/index.js +0 -0
  7. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/index.js.map +1 -1
  8. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/json-schemas.json +9599 -9297
  9. package/lib/sdk-scheme-adapter/v2_0_0/backend/openapi.d.ts +4505 -0
  10. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/openapi.js +0 -0
  11. package/lib/sdk-scheme-adapter/v2_0_0/backend/openapi.js.map +1 -0
  12. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/schemas.d.ts +3224 -3277
  13. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/schemas.js +52 -58
  14. package/lib/sdk-scheme-adapter/v2_0_0/backend/schemas.js.map +1 -0
  15. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/types.d.ts +52 -58
  16. package/lib/sdk-scheme-adapter/v2_0_0/{inbound → backend}/types.js +0 -0
  17. package/lib/sdk-scheme-adapter/v2_0_0/backend/types.js.map +1 -0
  18. package/lib/sdk-scheme-adapter/v2_0_0/index.d.ts +2 -2
  19. package/lib/sdk-scheme-adapter/v2_0_0/index.js +3 -3
  20. package/lib/sdk-scheme-adapter/v2_0_0/outbound/json-schemas.json +63 -7
  21. package/lib/sdk-scheme-adapter/v2_0_0/outbound/openapi.d.ts +186 -6
  22. package/lib/sdk-scheme-adapter/v2_0_0/outbound/schemas.d.ts +63 -7
  23. package/lib/sdk-scheme-adapter/v2_0_0/outbound/schemas.js +1 -1
  24. package/lib/sdk-scheme-adapter/v2_0_0/outbound/schemas.js.map +1 -1
  25. package/lib/sdk-scheme-adapter/v2_0_0/outbound/types.d.ts +1 -1
  26. package/package.json +23 -23
  27. package/sdk-scheme-adapter/v2_0_0/backend/openapi.yaml +1723 -0
  28. package/sdk-scheme-adapter/v2_0_0/components/schemas/individualQuote.yaml +2 -0
  29. package/sdk-scheme-adapter/v2_0_0/components/schemas/individualTransfer.yaml +2 -0
  30. package/sdk-scheme-adapter/v2_0_0/components/schemas/transferRequest.yaml +2 -0
  31. package/sdk-scheme-adapter/v2_0_0/components/schemas/transferResponse.yaml +2 -0
  32. package/docs/sdk-scheme-adapter-inbound-v2_0_0-openapi3-snippets.yaml +0 -2889
  33. package/lib/sdk-scheme-adapter/v2_0_0/inbound/openapi.d.ts +0 -4350
  34. package/lib/sdk-scheme-adapter/v2_0_0/inbound/openapi.js.map +0 -1
  35. package/lib/sdk-scheme-adapter/v2_0_0/inbound/schemas.js.map +0 -1
  36. package/lib/sdk-scheme-adapter/v2_0_0/inbound/types.js.map +0 -1
  37. package/sdk-scheme-adapter/v2_0_0/inbound/openapi.yaml +0 -1074
@@ -0,0 +1,2744 @@
1
+ openapi: 3.0.1
2
+ info:
3
+ title: Mojaloop SDK Backend API
4
+ description: >
5
+ API specification for the SDK Backend API.
6
+
7
+
8
+ To be implemented by the Digital Financial Service Provider (DFSP) to work
9
+ in tandem with the Mojaloop SDK (`mojaloop/sdk-scheme-adapter`).
10
+
11
+
12
+ This API is not to be confused with the Mojaloop SDK's Inbound or Outbound
13
+ API.
14
+
15
+
16
+ TODO: More explanation and links about the SDK adapter's Inbound and
17
+ Outbound API.
18
+
19
+
20
+ **Note on terminology:** The term "Switch" is equal to the term "Hub", and
21
+ the term "FSP" is equal to the term "DFSP".
22
+ license:
23
+ name: Apache License Version 2.0, January 2004
24
+ url: http://www.apache.org/licenses/
25
+ version: 1.1.0
26
+ paths:
27
+ /:
28
+ get:
29
+ operationId: BackendHealthCheck
30
+ responses:
31
+ '200':
32
+ description: Returns empty body if the service is running.
33
+ summary: Health check endpoint.
34
+ /bulkQuotes:
35
+ post:
36
+ operationId: BackendBulkQuotesPost
37
+ requestBody:
38
+ content:
39
+ application/json:
40
+ schema:
41
+ description: A request for a bulk quote.
42
+ properties: &ref_53
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_12
65
+ properties: &ref_29
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_21
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_22
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_19
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_20
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_36
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_8
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_9
343
+ - PAYER
344
+ - PAYEE
345
+ type: string
346
+ initiatorType:
347
+ enum: &ref_10
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_11
385
+ - TRANSFER
386
+ - DEPOSIT
387
+ - PAYMENT
388
+ type: string
389
+ required: &ref_37
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_54
404
+ - bulkQuoteId
405
+ - from
406
+ - individualQuotes
407
+ type: object
408
+ description: Incoming request for a bulk quotation.
409
+ responses:
410
+ '200':
411
+ content:
412
+ application/json:
413
+ 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_40
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_41
474
+ - quoteId
475
+ type: object
476
+ - description: >-
477
+ Data model for failed individual quote in a bulk
478
+ quote response.
479
+ properties: &ref_38
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_39
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
513
+ description: A response to the bulk quote request.
514
+ '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.
521
+ '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.
528
+ summary: Requests a bulk quote.
529
+ tags:
530
+ - BulkQuotes
531
+ /bulkQuotes/{idValue}:
532
+ get:
533
+ operationId: BackendBulkQuotesGet
534
+ parameters:
535
+ - description: The identifier value.
536
+ in: path
537
+ name: idValue
538
+ required: true
539
+ schema: &ref_13
540
+ type: string
541
+ responses:
542
+ '200':
543
+ content:
544
+ application/json:
545
+ schema:
546
+ description: A response to a request for a bulk quote.
547
+ properties: *ref_4
548
+ required: *ref_5
549
+ type: object
550
+ description: Response containing details of the requested bulk quote.
551
+ '400':
552
+ content: *ref_6
553
+ description: Malformed or missing required headers or parameters.
554
+ '404':
555
+ description: >-
556
+ The party specified by the provided identifier type and value is not
557
+ known to the server.
558
+ '500':
559
+ content: *ref_7
560
+ description: An error occurred processing the request.
561
+ summary: >-
562
+ Requests information relating to a bulk quote identified by the
563
+ specified identifier value.
564
+ tags:
565
+ - BulkQuotes
566
+ /bulkTransactions/{bulkTransactionId}:
567
+ put:
568
+ description: >-
569
+ The HTTP request `PUT /bulkTransactions/{bulkTransactionId}` is used to
570
+ amend information regarding a bulk transaction, i.e. when
571
+ autoAcceptParty or autoAcceptQuote is false then the payer need to
572
+ provide confirmation to proceed with further processing of the request.
573
+ The `{bulkTransactionId}` in the URI should contain the
574
+ `bulkTransactionId` that was used for the creation of the bulk transfer.
575
+ operationId: BackendBulkTransactionsPut
576
+ parameters:
577
+ - description: Identifier of the bulk transaction to continue as returned in.
578
+ in: path
579
+ name: bulkTransactionId
580
+ required: true
581
+ schema: &ref_30
582
+ description: >-
583
+ Identifier that correlates all messages of the same sequence. The
584
+ API data type UUID (Universally Unique Identifier) is a JSON
585
+ String in canonical format, conforming to [RFC
586
+ 4122](https://tools.ietf.org/html/rfc4122), that is restricted by
587
+ a regular expression for interoperability reasons. A UUID is
588
+ always 36 characters long, 32 hexadecimal symbols and 4 dashes
589
+ (‘-‘).
590
+ example: b51ec534-ee48-4575-b6a9-ead2955b8069
591
+ pattern: >-
592
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
593
+ title: CorrelationId
594
+ type: string
595
+ requestBody:
596
+ content:
597
+ application/json:
598
+ schema:
599
+ properties:
600
+ bulkHomeTransactionID:
601
+ description: >-
602
+ Transaction ID from the DFSP backend, used to reconcile
603
+ transactions between the Switch and DFSP backend systems.
604
+ type: string
605
+ individualTransferResults:
606
+ description: >-
607
+ List of individual transfers in a bulk transfer with accept
608
+ party information.
609
+ items:
610
+ description: >-
611
+ Data model for the 'individualTransfer' while accepting
612
+ party or quote.
613
+ properties:
614
+ homeTransactionId:
615
+ description: >-
616
+ Transaction ID from the DFSP backend, used to
617
+ reconcile transactions between the Switch and DFSP
618
+ backend systems.
619
+ type: string
620
+ transactionId:
621
+ description: >-
622
+ Identifier that correlates all messages of the same
623
+ sequence. The API data type UUID (Universally Unique
624
+ Identifier) is a JSON String in canonical format,
625
+ conforming to [RFC
626
+ 4122](https://tools.ietf.org/html/rfc4122), that is
627
+ restricted by a regular expression for
628
+ interoperability reasons. A UUID is always 36
629
+ characters long, 32 hexadecimal symbols and 4 dashes
630
+ (‘-‘).
631
+ example: b51ec534-ee48-4575-b6a9-ead2955b8069
632
+ pattern: >-
633
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
634
+ title: CorrelationId
635
+ type: string
636
+ required:
637
+ - homeTransactionId
638
+ type: object
639
+ minItems: 1
640
+ type: array
641
+ required:
642
+ - bulkHomeTransactionID
643
+ - individualTransferResults
644
+ type: object
645
+ description: Bulk transaction request body.
646
+ required: true
647
+ responses:
648
+ '202':
649
+ description: Bulk transaction information successfully amended.
650
+ '400':
651
+ content: *ref_6
652
+ description: Malformed or missing required headers or parameters.
653
+ '500':
654
+ content: *ref_7
655
+ description: An error occurred processing the request.
656
+ summary: Callbacks for the bulk transaction request.
657
+ tags:
658
+ - BulkTransactionsPut
659
+ /bulkTransfers:
660
+ post:
661
+ operationId: BackendBulkTransfersPost
662
+ requestBody:
663
+ content:
664
+ application/json:
665
+ schema:
666
+ properties: &ref_55
667
+ bulkQuote:
668
+ description: A response to a request for a bulk quote.
669
+ properties: *ref_4
670
+ required: *ref_5
671
+ type: object
672
+ bulkTransferId:
673
+ description: A Mojaloop API transfer identifier (UUID).
674
+ pattern: >-
675
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
676
+ type: string
677
+ from:
678
+ properties: *ref_1
679
+ required: *ref_2
680
+ type: object
681
+ individualTransfers:
682
+ items:
683
+ description: >-
684
+ Data model for individual transfer in a bulk transfer
685
+ request.
686
+ properties: &ref_42
687
+ amount:
688
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
689
+ type: string
690
+ amountType:
691
+ enum: *ref_8
692
+ type: string
693
+ currency:
694
+ enum: *ref_0
695
+ maxLength: 3
696
+ minLength: 3
697
+ type: string
698
+ feesAmount:
699
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
700
+ type: string
701
+ feesCurrency:
702
+ enum: *ref_0
703
+ maxLength: 3
704
+ minLength: 3
705
+ type: string
706
+ initiator:
707
+ enum: *ref_9
708
+ type: string
709
+ initiatorType:
710
+ enum: *ref_10
711
+ type: string
712
+ note:
713
+ description: An optional note associated with the quote.
714
+ maxLength: 128
715
+ minLength: 1
716
+ type: string
717
+ subScenario:
718
+ description: >-
719
+ Possible sub-scenario, defined locally within the
720
+ scheme (UndefinedEnum Type). Based on FSPIOP
721
+ TransactionSubScenario.
722
+ example: LOCALLY_DEFINED_SUBSCENARIO
723
+ pattern: ^[A-Z_]{1,32}$
724
+ title: transactionSubScenario
725
+ type: string
726
+ to:
727
+ properties: *ref_1
728
+ required: *ref_2
729
+ type: object
730
+ transactionType:
731
+ enum: *ref_11
732
+ type: string
733
+ transferId:
734
+ description: A Mojaloop API transfer identifier (UUID).
735
+ pattern: >-
736
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
737
+ type: string
738
+ required: &ref_43
739
+ - transferId
740
+ - amount
741
+ - currency
742
+ type: object
743
+ maxItems: 1000
744
+ minItems: 1
745
+ type: array
746
+ required: &ref_56
747
+ - bulkTransferId
748
+ - individualTransfers
749
+ type: object
750
+ description: An incoming bulk transfer request.
751
+ responses:
752
+ '200':
753
+ content:
754
+ application/json:
755
+ schema:
756
+ properties: &ref_14
757
+ bulkTransferId:
758
+ description: A Mojaloop API transfer identifier (UUID).
759
+ pattern: >-
760
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
761
+ type: string
762
+ homeTransactionId:
763
+ description: >-
764
+ Transaction ID from the DFSP backend, used to reconcile
765
+ transactions between the switch and DFSP backend systems.
766
+ type: string
767
+ individualTransferResults:
768
+ items:
769
+ description: >-
770
+ Data model for individual transfer in a bulk transfer
771
+ response.
772
+ properties: &ref_44
773
+ errorResponse:
774
+ properties: *ref_3
775
+ type: object
776
+ extensionList:
777
+ items: *ref_12
778
+ maxItems: 16
779
+ minItems: 0
780
+ type: array
781
+ transferId:
782
+ description: A Mojaloop API transfer identifier (UUID).
783
+ pattern: >-
784
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
785
+ type: string
786
+ required: &ref_45
787
+ - transferId
788
+ type: object
789
+ maxItems: 1000
790
+ minItems: 1
791
+ type: array
792
+ required: &ref_15
793
+ - homeTransactionId
794
+ type: object
795
+ description: The bulk transfer was accepted.
796
+ '400':
797
+ content: *ref_6
798
+ description: Malformed or missing required headers or parameters.
799
+ '500':
800
+ content: *ref_7
801
+ description: An error occurred processing the request.
802
+ summary: >-
803
+ Execute bulk transfer of funds from an external account to internal
804
+ accounts.
805
+ tags:
806
+ - BulkTransfers
807
+ /bulkTransfers/{idValue}:
808
+ get:
809
+ operationId: BackendBulkTransfersGet
810
+ parameters:
811
+ - description: The identifier value.
812
+ in: path
813
+ name: idValue
814
+ required: true
815
+ schema: *ref_13
816
+ responses:
817
+ '200':
818
+ content:
819
+ application/json:
820
+ schema:
821
+ properties: *ref_14
822
+ required: *ref_15
823
+ type: object
824
+ description: Response containing details of the requested bulk transfer.
825
+ '400':
826
+ content: *ref_6
827
+ description: Malformed or missing required headers or parameters.
828
+ '404':
829
+ description: >-
830
+ The party specified by the provided identifier type and value is not
831
+ known to the server.
832
+ '500':
833
+ content: *ref_7
834
+ description: An error occurred processing the request.
835
+ summary: >-
836
+ Requests information relating to a bulk transfer identified by the
837
+ specified identifier value.
838
+ tags:
839
+ - BulkTransfers
840
+ /otp/{requestToPayId}:
841
+ get:
842
+ operationId: BackendOtpGet
843
+ parameters:
844
+ - in: path
845
+ name: requestToPayId
846
+ required: true
847
+ schema: &ref_31
848
+ maxLength: 128
849
+ minLength: 1
850
+ type: string
851
+ responses:
852
+ '200':
853
+ content:
854
+ application/json:
855
+ schema:
856
+ properties: &ref_65
857
+ otpValue:
858
+ description: OTP value.
859
+ type: string
860
+ required: &ref_66
861
+ - otpValue
862
+ type: object
863
+ description: Response containing details of the OTP.
864
+ '400':
865
+ content: *ref_6
866
+ description: Malformed or missing required headers or parameters.
867
+ '404':
868
+ description: >-
869
+ The party specified by the provided identifier type and value is not
870
+ known to the server.
871
+ '500':
872
+ content: *ref_7
873
+ description: An error occurred processing the request.
874
+ summary: Requests OTP.
875
+ tags:
876
+ - OTP
877
+ /participants/{idType}/{idValue}:
878
+ get:
879
+ description: >-
880
+ The HTTP request `GET /participants/{idType}/{idValue}` is used to find
881
+ out in which FSP the requested party, defined by `{idType}` and
882
+ `{idValue}`, is located.
883
+ operationId: BackendParticipantsGetByTypeAndID
884
+ parameters:
885
+ - description: >-
886
+ The type of the party identifier. For example, `MSISDN`,
887
+ `PERSONAL_ID`.
888
+ in: path
889
+ name: idType
890
+ required: true
891
+ schema: &ref_16
892
+ type: string
893
+ - description: The identifier value.
894
+ in: path
895
+ name: idValue
896
+ required: true
897
+ schema: *ref_13
898
+ responses:
899
+ '200':
900
+ content:
901
+ application/json:
902
+ schema:
903
+ properties: &ref_17
904
+ fspId:
905
+ description: FSP identifier.
906
+ maxLength: 32
907
+ minLength: 1
908
+ type: string
909
+ type: object
910
+ description: Response containing details of the requested party.
911
+ '400':
912
+ content: *ref_6
913
+ description: Malformed or missing required headers or parameters.
914
+ '404':
915
+ description: >-
916
+ The party specified by the provided identifier type and value is not
917
+ known to the server.
918
+ '500':
919
+ content: *ref_7
920
+ description: An error occurred processing the request.
921
+ summary: >-
922
+ Asks for the identifier (fspId) of the scheme participant (FSP) that can
923
+ handle transfers for the specified identifier type and value.
924
+ tags:
925
+ - Participants
926
+ /participants/{idType}/{idValue}/{idSubValue}:
927
+ get:
928
+ description: >-
929
+ The HTTP request `GET /participants/{idType}/{idValue}/{idSubValue}` is
930
+ used to find out in which FSP the requested party, defined by
931
+ `{idType}`, `{idValue}` and `{idSubValue}` is located.
932
+ operationId: BackendParticipantsGetByTypeIDAndSubId
933
+ parameters:
934
+ - description: >-
935
+ The type of the party identifier. For example, `MSISDN`,
936
+ `PERSONAL_ID`.
937
+ in: path
938
+ name: idType
939
+ required: true
940
+ schema: *ref_16
941
+ - description: The identifier value.
942
+ in: path
943
+ name: idValue
944
+ required: true
945
+ schema: *ref_13
946
+ - description: >-
947
+ A sub-identifier of the party identifier, or a sub-type of the party
948
+ identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
949
+ in: path
950
+ name: idSubValue
951
+ required: true
952
+ schema: &ref_18
953
+ type: string
954
+ responses:
955
+ '200':
956
+ content:
957
+ application/json:
958
+ schema:
959
+ properties: *ref_17
960
+ type: object
961
+ description: Response containing details of the requested party.
962
+ '400':
963
+ content: *ref_6
964
+ description: Malformed or missing required headers or parameters.
965
+ '404':
966
+ description: >-
967
+ The party specified by the provided identifier type and value is not
968
+ known to the server.
969
+ '500':
970
+ content: *ref_7
971
+ description: An error occurred processing the request.
972
+ summary: >-
973
+ Asks for the identifier (fspId) of the scheme participant (FSP) that can
974
+ handle transfers for the specified identifier type and value.
975
+ tags:
976
+ - Participants
977
+ /parties/{idType}/{idValue}:
978
+ get:
979
+ description: >-
980
+ The HTTP request `GET /parties/{idType}/{idValue}` is used to look up
981
+ information regarding the requested transfer party, identified by
982
+ `{idType}` and `{idValue}`.
983
+ operationId: BackendPartiesGetByTypeAndID
984
+ parameters:
985
+ - description: >-
986
+ The type of the party identifier. For example, `MSISDN`,
987
+ `PERSONAL_ID`.
988
+ in: path
989
+ name: idType
990
+ required: true
991
+ schema: *ref_16
992
+ - description: The identifier value.
993
+ in: path
994
+ name: idValue
995
+ required: true
996
+ schema: *ref_13
997
+ responses:
998
+ '200':
999
+ content:
1000
+ application/json:
1001
+ schema:
1002
+ properties: *ref_1
1003
+ required: *ref_2
1004
+ type: object
1005
+ description: Response containing details of the requested party.
1006
+ '400':
1007
+ content: *ref_6
1008
+ description: Malformed or missing required headers or parameters.
1009
+ '404':
1010
+ description: >-
1011
+ The party specified by the provided identifier type and value is not
1012
+ known to the server.
1013
+ '500':
1014
+ content: *ref_7
1015
+ description: An error occurred processing the request.
1016
+ summary: >-
1017
+ Requests information relating to a transfer party identified by the
1018
+ specified identifier type and value.
1019
+ tags:
1020
+ - Parties
1021
+ /parties/{idType}/{idValue}/{idSubValue}:
1022
+ get:
1023
+ description: >-
1024
+ The HTTP request `GET /parties/{idType}/{idValue}/{idSubValue}` is used
1025
+ to look up information regarding the requested transfer party,
1026
+ identified by `{idType}`, `{idValue}` and `{idSubValue}`.
1027
+ operationId: BackendPartiesGetByTypeIdAndSubId
1028
+ parameters:
1029
+ - description: >-
1030
+ The type of the party identifier. For example, `MSISDN`,
1031
+ `PERSONAL_ID`.
1032
+ in: path
1033
+ name: idType
1034
+ required: true
1035
+ schema: *ref_16
1036
+ - description: The identifier value.
1037
+ in: path
1038
+ name: idValue
1039
+ required: true
1040
+ schema: *ref_13
1041
+ - description: >-
1042
+ A sub-identifier of the party identifier, or a sub-type of the party
1043
+ identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
1044
+ in: path
1045
+ name: idSubValue
1046
+ required: true
1047
+ schema: *ref_18
1048
+ responses:
1049
+ '200':
1050
+ content:
1051
+ application/json:
1052
+ schema:
1053
+ properties: *ref_1
1054
+ required: *ref_2
1055
+ type: object
1056
+ description: Response containing details of the requested party.
1057
+ '400':
1058
+ content: *ref_6
1059
+ description: Malformed or missing required headers or parameters.
1060
+ '404':
1061
+ description: >-
1062
+ The party specified by the provided identifier type and value is not
1063
+ known to the server.
1064
+ '500':
1065
+ content: *ref_7
1066
+ description: An error occurred processing the request.
1067
+ summary: >-
1068
+ Requests information relating to a transfer party identified by the
1069
+ specified identifier type, value and subId value.
1070
+ tags:
1071
+ - Parties
1072
+ /quoterequests:
1073
+ post:
1074
+ description: >-
1075
+ The HTTP request `POST /quoterequests` is used to request the creation
1076
+ of a quote for the provided financial transaction.
1077
+ operationId: BackendQuoteRequest
1078
+ requestBody:
1079
+ content:
1080
+ application/json:
1081
+ schema:
1082
+ description: A request for a quote for transfer from the DFSP backend.
1083
+ properties: &ref_67
1084
+ amount:
1085
+ description: >-
1086
+ Depending on `amountType`. If SEND - The amount the Payer
1087
+ would like to send, that is, the amount that should be
1088
+ withdrawn from the Payer account including any fees. The
1089
+ amount is updated by each participating entity in the
1090
+ transaction. If RECEIVE - The amount the Payee should
1091
+ receive, that is, the amount that should be sent to the
1092
+ receiver exclusive any fees. The amount is not updated by
1093
+ any of the participating entities.
1094
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1095
+ type: string
1096
+ amountType:
1097
+ description: SEND for send amount, RECEIVE for receive amount.
1098
+ enum: *ref_8
1099
+ type: string
1100
+ currency:
1101
+ enum: *ref_0
1102
+ maxLength: 3
1103
+ minLength: 3
1104
+ type: string
1105
+ expiration:
1106
+ description: An ISO-8601 formatted timestamp.
1107
+ pattern: >-
1108
+ ^(?:[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)$
1109
+ type: string
1110
+ extensionList:
1111
+ items: *ref_12
1112
+ maxItems: 16
1113
+ minItems: 0
1114
+ type: array
1115
+ feesAmount:
1116
+ description: >-
1117
+ The fees in the transaction. The fees element should be
1118
+ empty if fees should be non-disclosed. The fees element
1119
+ should be non-empty if fees should be disclosed.
1120
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1121
+ type: string
1122
+ feesCurrency:
1123
+ enum: *ref_0
1124
+ maxLength: 3
1125
+ minLength: 3
1126
+ type: string
1127
+ from:
1128
+ description: >-
1129
+ Information about the Payer in the proposed financial
1130
+ transaction.
1131
+ properties: *ref_1
1132
+ required: *ref_2
1133
+ type: object
1134
+ geoCode:
1135
+ description: >-
1136
+ Indicates the geographic location from where the transaction
1137
+ was initiated.
1138
+ properties: *ref_19
1139
+ required: *ref_20
1140
+ type: object
1141
+ initiator:
1142
+ description: >-
1143
+ Specifies if the initiator of the transfer is the Payer or
1144
+ Payee.
1145
+ enum: *ref_9
1146
+ type: string
1147
+ initiatorType:
1148
+ description: Specifies the type of the transaction initiator.
1149
+ enum: *ref_10
1150
+ type: string
1151
+ note:
1152
+ description: An optional note associated with the requested transfer.
1153
+ maxLength: 128
1154
+ minLength: 1
1155
+ type: string
1156
+ quoteId:
1157
+ description: A Mojaloop API quote identifier (UUID).
1158
+ pattern: >-
1159
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1160
+ type: string
1161
+ subScenario:
1162
+ description: >-
1163
+ Possible sub-scenario, defined locally within the scheme
1164
+ (UndefinedEnum Type). Based on FSPIOP
1165
+ TransactionSubScenario.
1166
+ example: LOCALLY_DEFINED_SUBSCENARIO
1167
+ pattern: ^[A-Z_]{1,32}$
1168
+ title: transactionSubScenario
1169
+ type: string
1170
+ to:
1171
+ description: >-
1172
+ Information about the Payee in the proposed financial
1173
+ transaction.
1174
+ properties: *ref_1
1175
+ required: *ref_2
1176
+ type: object
1177
+ transactionId:
1178
+ description: >-
1179
+ ID of the transaction, the ID is decided by the Payer FSP
1180
+ during the creation of the quote.
1181
+ pattern: >-
1182
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1183
+ type: string
1184
+ transactionType:
1185
+ description: Type of transaction for which the quote is requested.
1186
+ enum: *ref_11
1187
+ type: string
1188
+ required: &ref_68
1189
+ - quoteId
1190
+ - transactionId
1191
+ - to
1192
+ - from
1193
+ - amountType
1194
+ - amount
1195
+ - currency
1196
+ - transactionType
1197
+ - initiator
1198
+ - initiatorType
1199
+ type: object
1200
+ description: Request for a transfer quotation.
1201
+ responses:
1202
+ '200':
1203
+ content:
1204
+ application/json:
1205
+ schema:
1206
+ description: A response to a request for a quote.
1207
+ properties: &ref_25
1208
+ expiration:
1209
+ description: An ISO-8601 formatted timestamp.
1210
+ pattern: >-
1211
+ ^(?:[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)$
1212
+ type: string
1213
+ extensionList:
1214
+ items: *ref_12
1215
+ maxItems: 16
1216
+ minItems: 0
1217
+ type: array
1218
+ geoCode:
1219
+ description: >-
1220
+ Indicates the geographic location from where the
1221
+ transaction was initiated.
1222
+ properties: *ref_19
1223
+ required: *ref_20
1224
+ type: object
1225
+ payeeFspCommissionAmount:
1226
+ description: Transaction commission from the Payee FSP.
1227
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1228
+ type: string
1229
+ payeeFspCommissionAmountCurrency:
1230
+ description: Currency of the `payeeFspCommissionAmount`.
1231
+ enum: *ref_0
1232
+ maxLength: 3
1233
+ minLength: 3
1234
+ type: string
1235
+ payeeFspFeeAmount:
1236
+ description: Payee FSP’s part of the transaction fee.
1237
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1238
+ type: string
1239
+ payeeFspFeeAmountCurrency:
1240
+ description: The currency of the `payeeFspFeeAmount`.
1241
+ enum: *ref_0
1242
+ maxLength: 3
1243
+ minLength: 3
1244
+ type: string
1245
+ payeeReceiveAmount:
1246
+ description: >-
1247
+ The amount that the Payee should receive in the end-to-end
1248
+ transaction. Optional as the Payee FSP might not want to
1249
+ disclose any optional Payee fees.
1250
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1251
+ type: string
1252
+ payeeReceiveAmountCurrency:
1253
+ description: The currency of the `payeeReceiveAmount`.
1254
+ enum: *ref_0
1255
+ maxLength: 3
1256
+ minLength: 3
1257
+ type: string
1258
+ quoteId:
1259
+ description: A Mojaloop API quote identifier (UUID).
1260
+ pattern: >-
1261
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1262
+ type: string
1263
+ transactionId:
1264
+ description: >-
1265
+ ID of the transaction, the ID is decided by the Payer FSP
1266
+ during the creation of the quote.
1267
+ pattern: >-
1268
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1269
+ type: string
1270
+ transferAmount:
1271
+ description: >-
1272
+ The amount of money that the Payer FSP should transfer to
1273
+ the Payee FSP.
1274
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1275
+ type: string
1276
+ transferAmountCurrency:
1277
+ description: The currency of the `transferAmount`.
1278
+ enum: *ref_0
1279
+ maxLength: 3
1280
+ minLength: 3
1281
+ type: string
1282
+ required: &ref_26
1283
+ - quoteId
1284
+ - transactionId
1285
+ - transferAmount
1286
+ - transferAmountCurrency
1287
+ type: object
1288
+ description: A response to the transfer quotation request.
1289
+ '400':
1290
+ content: *ref_6
1291
+ description: Malformed or missing required headers or parameters.
1292
+ '500':
1293
+ content: *ref_7
1294
+ description: An error occurred processing the request.
1295
+ summary: Requests a quote for the specified transfer.
1296
+ tags:
1297
+ - Quotes
1298
+ /transactionrequests:
1299
+ post:
1300
+ operationId: BackendTransactionRequest
1301
+ requestBody:
1302
+ content:
1303
+ application/json:
1304
+ schema:
1305
+ description: A request for a pull based transfer.
1306
+ properties: &ref_70
1307
+ amount:
1308
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1309
+ type: string
1310
+ currency:
1311
+ enum: *ref_0
1312
+ maxLength: 3
1313
+ minLength: 3
1314
+ type: string
1315
+ expiration:
1316
+ description: An ISO-8601 formatted timestamp.
1317
+ pattern: >-
1318
+ ^(?:[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)$
1319
+ type: string
1320
+ from:
1321
+ properties: *ref_1
1322
+ required: *ref_2
1323
+ type: object
1324
+ geoCode:
1325
+ description: >-
1326
+ Indicates the geographic location from where the transaction
1327
+ was initiated.
1328
+ properties: *ref_19
1329
+ required: *ref_20
1330
+ type: object
1331
+ initiator:
1332
+ enum: *ref_9
1333
+ type: string
1334
+ initiatorType:
1335
+ enum: *ref_10
1336
+ type: string
1337
+ note:
1338
+ description: An optional note associated with the requested transfer.
1339
+ maxLength: 128
1340
+ minLength: 1
1341
+ type: string
1342
+ to:
1343
+ properties: *ref_1
1344
+ required: *ref_2
1345
+ type: object
1346
+ transactionRequestId:
1347
+ description: A Mojaloop API transaction request identifier (UUID).
1348
+ pattern: >-
1349
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1350
+ type: string
1351
+ transactionType:
1352
+ enum: *ref_11
1353
+ type: string
1354
+ subScenario:
1355
+ description: >-
1356
+ Possible sub-scenario, defined locally within the scheme
1357
+ (UndefinedEnum Type). Based on FSPIOP
1358
+ TransactionSubScenario.
1359
+ example: LOCALLY_DEFINED_SUBSCENARIO
1360
+ pattern: ^[A-Z_]{1,32}$
1361
+ title: transactionSubScenario
1362
+ type: string
1363
+ required: &ref_71
1364
+ - transactionRequestId
1365
+ - to
1366
+ - from
1367
+ - amount
1368
+ - currency
1369
+ - transactionType
1370
+ - initiator
1371
+ - initiatorType
1372
+ type: object
1373
+ description: Request for Transaction Request.
1374
+ responses:
1375
+ '200':
1376
+ content:
1377
+ application/json:
1378
+ schema:
1379
+ description: A response to a request for a quote.
1380
+ properties: &ref_72
1381
+ transactionId:
1382
+ description: >-
1383
+ ID of the transaction, the ID is decided by the Payer FSP
1384
+ during the creation of the quote.
1385
+ pattern: >-
1386
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1387
+ type: string
1388
+ transferAmount:
1389
+ enum: &ref_74
1390
+ - RECEIVED
1391
+ - PENDING
1392
+ - ACCEPTED
1393
+ - REJECTED
1394
+ type: string
1395
+ required: &ref_73
1396
+ - transactionId
1397
+ - transactionRequestState
1398
+ type: object
1399
+ description: A response to the transfer transaction request.
1400
+ '400':
1401
+ content: *ref_6
1402
+ description: Malformed or missing required headers or parameters.
1403
+ '500':
1404
+ content: *ref_7
1405
+ description: An error occurred processing the request.
1406
+ summary: Transaction request that supports pull based transfers.
1407
+ tags:
1408
+ - TransactionRequest
1409
+ /transfers:
1410
+ post:
1411
+ description: >-
1412
+ The HTTP request `POST /transfers` is used to request the creation of a
1413
+ transfer for the transfer party.
1414
+ operationId: BackendTransfersPost
1415
+ requestBody:
1416
+ content:
1417
+ application/json:
1418
+ schema:
1419
+ properties: &ref_80
1420
+ amount:
1421
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1422
+ type: string
1423
+ amountType:
1424
+ enum: *ref_8
1425
+ type: string
1426
+ currency:
1427
+ enum: *ref_0
1428
+ maxLength: 3
1429
+ minLength: 3
1430
+ type: string
1431
+ from:
1432
+ properties: *ref_1
1433
+ required: *ref_2
1434
+ type: object
1435
+ ilpPacket:
1436
+ properties:
1437
+ data:
1438
+ description: Object containing transfer object.
1439
+ properties: &ref_62
1440
+ amount:
1441
+ description: >-
1442
+ Object containing Amount and Currency of the
1443
+ transfer.
1444
+ properties: &ref_51
1445
+ amount:
1446
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1447
+ type: string
1448
+ currency:
1449
+ enum: *ref_0
1450
+ maxLength: 3
1451
+ minLength: 3
1452
+ type: string
1453
+ required: &ref_52
1454
+ - amount
1455
+ - currency
1456
+ type: object
1457
+ payee:
1458
+ description: Data model for the complex type Party.
1459
+ properties: &ref_23
1460
+ merchantClassificationCode:
1461
+ description: >-
1462
+ A limited set of pre-defined numbers. This list
1463
+ would be a limited set of numbers identifying a
1464
+ set of popular merchant types like School Fees,
1465
+ Pubs and Restaurants, Groceries, etc.
1466
+ pattern: ^[\d]{1,4}$
1467
+ title: MerchantClassificationCode
1468
+ type: string
1469
+ name:
1470
+ description: >-
1471
+ Name of the Party. Could be a real name or a
1472
+ nickname.
1473
+ maxLength: 128
1474
+ minLength: 1
1475
+ title: PartyName
1476
+ type: string
1477
+ partyIdInfo:
1478
+ description: Data model for the complex type PartyIdInfo.
1479
+ properties: &ref_47
1480
+ extensionList:
1481
+ description: >-
1482
+ Data model for the complex type
1483
+ ExtensionList
1484
+ properties: &ref_34
1485
+ extension:
1486
+ description: Number of Extension elements
1487
+ items:
1488
+ description: >-
1489
+ Data model for the complex type
1490
+ Extension
1491
+ properties: &ref_32
1492
+ key:
1493
+ description: Extension key.
1494
+ maxLength: 32
1495
+ minLength: 1
1496
+ title: ExtensionKey
1497
+ type: string
1498
+ value:
1499
+ description: Extension value.
1500
+ maxLength: 128
1501
+ minLength: 1
1502
+ title: ExtensionValue
1503
+ type: string
1504
+ required: &ref_33
1505
+ - key
1506
+ - value
1507
+ title: Extension
1508
+ type: object
1509
+ maxItems: 16
1510
+ minItems: 1
1511
+ type: array
1512
+ required: &ref_35
1513
+ - extension
1514
+ title: ExtensionList
1515
+ type: object
1516
+ fspId:
1517
+ description: FSP identifier.
1518
+ maxLength: 32
1519
+ minLength: 1
1520
+ title: FspId
1521
+ type: string
1522
+ partyIdType:
1523
+ description: >
1524
+ This is a variant based on FSPIOP
1525
+ `PartyIdType` specification.
1526
+
1527
+ Main difference being the CONSENT and
1528
+ THIRD_PARTY_LINK enums.
1529
+
1530
+
1531
+ Below are the allowed values for the
1532
+ enumeration.
1533
+
1534
+ - MSISDN - An MSISDN (Mobile Station
1535
+ International Subscriber Directory
1536
+
1537
+ Number, that is, the phone number) is used
1538
+ as reference to a participant.
1539
+
1540
+ The MSISDN identifier should be in
1541
+ international format according to the
1542
+
1543
+ [ITU-T E.164
1544
+ standard](https://www.itu.int/rec/T-REC-E.164/en).
1545
+
1546
+ Optionally, the MSISDN may be prefixed by a
1547
+ single plus sign, indicating the
1548
+
1549
+ international prefix.
1550
+
1551
+ - EMAIL - An email is used as reference to a
1552
+
1553
+ participant. The format of the email should
1554
+ be according to the informational
1555
+
1556
+ [RFC
1557
+ 3696](https://tools.ietf.org/html/rfc3696).
1558
+
1559
+ - PERSONAL_ID - A personal identifier is
1560
+ used as reference to a participant.
1561
+
1562
+ Examples of personal identification are
1563
+ passport number, birth certificate
1564
+
1565
+ number, and national registration number.
1566
+ The identifier number is added in
1567
+
1568
+ the PartyIdentifier element. The personal
1569
+ identifier type is added in the
1570
+
1571
+ PartySubIdOrType element.
1572
+
1573
+ - BUSINESS - A specific Business (for
1574
+ example, an organization or a company)
1575
+
1576
+ is used as reference to a participant. The
1577
+ BUSINESS identifier can be in any
1578
+
1579
+ format. To make a transaction connected to a
1580
+ specific username or bill number
1581
+
1582
+ in a Business, the PartySubIdOrType element
1583
+ should be used.
1584
+
1585
+ - DEVICE - A specific device (for example, a
1586
+ POS or ATM) ID connected to a
1587
+
1588
+ specific business or organization is used as
1589
+ reference to a Party.
1590
+
1591
+ For referencing a specific device under a
1592
+ specific business or organization,
1593
+
1594
+ use the PartySubIdOrType element.
1595
+
1596
+ - ACCOUNT_ID - A bank account number or FSP
1597
+ account ID should be used as
1598
+
1599
+ reference to a participant. The ACCOUNT_ID
1600
+ identifier can be in any format,
1601
+
1602
+ as formats can greatly differ depending on
1603
+ country and FSP.
1604
+
1605
+ - IBAN - A bank account number or FSP
1606
+ account ID is used as reference to a
1607
+
1608
+ participant. The IBAN identifier can consist
1609
+ of up to 34 alphanumeric
1610
+
1611
+ characters and should be entered without
1612
+ whitespace.
1613
+
1614
+ - ALIAS An alias is used as reference to a
1615
+ participant. The alias should be
1616
+
1617
+ created in the FSP as an alternative
1618
+ reference to an account owner.
1619
+
1620
+ Another example of an alias is a username in
1621
+ the FSP system.
1622
+
1623
+ The ALIAS identifier can be in any format.
1624
+ It is also possible to use the
1625
+
1626
+ PartySubIdOrType element for identifying an
1627
+ account under an Alias defined
1628
+
1629
+ by the PartyIdentifier.
1630
+
1631
+ - CONSENT - TBD
1632
+
1633
+ - THIRD_PARTY_LINK - TBD
1634
+ enum: &ref_49
1635
+ - MSISDN
1636
+ - EMAIL
1637
+ - PERSONAL_ID
1638
+ - BUSINESS
1639
+ - DEVICE
1640
+ - ACCOUNT_ID
1641
+ - IBAN
1642
+ - ALIAS
1643
+ - CONSENT
1644
+ - THIRD_PARTY_LINK
1645
+ example: PERSONAL_ID
1646
+ title: PartyIdType
1647
+ type: string
1648
+ partyIdentifier:
1649
+ description: Identifier of the Party.
1650
+ example: '16135551212'
1651
+ maxLength: 128
1652
+ minLength: 1
1653
+ title: PartyIdentifier
1654
+ type: string
1655
+ partySubIdOrType:
1656
+ description: >-
1657
+ Either a sub-identifier of a
1658
+ PartyIdentifier, or a sub-type of the
1659
+ PartyIdType, normally a
1660
+ PersonalIdentifierType.
1661
+ maxLength: 128
1662
+ minLength: 1
1663
+ title: PartySubIdOrType
1664
+ type: string
1665
+ required: &ref_48
1666
+ - partyIdType
1667
+ - partyIdentifier
1668
+ title: PartyIdInfo
1669
+ type: object
1670
+ personalInfo:
1671
+ description: >-
1672
+ Data model for the complex type
1673
+ PartyPersonalInfo.
1674
+ properties: &ref_50
1675
+ complexName:
1676
+ description: >-
1677
+ Data model for the complex type
1678
+ PartyComplexName.
1679
+ properties: &ref_46
1680
+ displayName:
1681
+ description: Display name of the sender if known
1682
+ type: string
1683
+ firstName:
1684
+ description: First name of the Party (Name Type).
1685
+ example: Henrik
1686
+ maxLength: 128
1687
+ minLength: 1
1688
+ pattern: >-
1689
+ ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
1690
+ .,''-]{1,128}$
1691
+ title: FirstName
1692
+ type: string
1693
+ idSubValue:
1694
+ description: >-
1695
+ The sub identifier string used to
1696
+ identify the sender
1697
+ type: string
1698
+ idType:
1699
+ enum: *ref_21
1700
+ type: string
1701
+ idValue:
1702
+ description: >-
1703
+ The identifier string used to identify
1704
+ the sender
1705
+ type: string
1706
+ lastName:
1707
+ description: Last name of the Party (Name Type).
1708
+ example: Karlsson
1709
+ maxLength: 128
1710
+ minLength: 1
1711
+ pattern: >-
1712
+ ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
1713
+ .,''-]{1,128}$
1714
+ title: LastName
1715
+ type: string
1716
+ middleName:
1717
+ description: Middle name of the Party (Name Type).
1718
+ example: Johannes
1719
+ maxLength: 128
1720
+ minLength: 1
1721
+ pattern: >-
1722
+ ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
1723
+ .,''-]{1,128}$
1724
+ title: MiddleName
1725
+ type: string
1726
+ type:
1727
+ enum: *ref_22
1728
+ type: string
1729
+ title: PartyComplexName
1730
+ type: object
1731
+ dateOfBirth:
1732
+ description: Date of Birth of the Party.
1733
+ example: '1966-06-16'
1734
+ pattern: >-
1735
+ ^(?:[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)$
1736
+ title: DateofBirth (type Date)
1737
+ type: string
1738
+ title: PartyPersonalInfo
1739
+ type: object
1740
+ required: &ref_24
1741
+ - partyIdInfo
1742
+ title: Party
1743
+ type: object
1744
+ payer:
1745
+ description: Data model for the complex type Party.
1746
+ properties: *ref_23
1747
+ required: *ref_24
1748
+ title: Party
1749
+ type: object
1750
+ quoteId:
1751
+ description: A Mojaloop API quote identifier (UUID).
1752
+ pattern: >-
1753
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1754
+ type: string
1755
+ transactionId:
1756
+ description: >-
1757
+ ID of the transaction, the ID is decided by the
1758
+ Payer FSP during the creation of the quote.
1759
+ pattern: >-
1760
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1761
+ type: string
1762
+ transactionType:
1763
+ description: Object containing transfer object.
1764
+ properties: &ref_75
1765
+ initiator:
1766
+ enum: *ref_9
1767
+ type: string
1768
+ initiatorType:
1769
+ description: Specifies the type of the transaction initiator.
1770
+ enum: *ref_10
1771
+ type: string
1772
+ scenario:
1773
+ enum: &ref_69
1774
+ - TRANSFER
1775
+ type: string
1776
+ subScenario:
1777
+ description: >-
1778
+ Possible sub-scenario, defined locally within
1779
+ the scheme (UndefinedEnum Type). Based on FSPIOP
1780
+ TransactionSubScenario.
1781
+ example: LOCALLY_DEFINED_SUBSCENARIO
1782
+ pattern: ^[A-Z_]{1,32}$
1783
+ title: transactionSubScenario
1784
+ type: string
1785
+ required: &ref_76
1786
+ - scenario
1787
+ - initiator
1788
+ - initiatorType
1789
+ type: object
1790
+ required: &ref_63
1791
+ - quoteId
1792
+ - transactionId
1793
+ - payer
1794
+ - payee
1795
+ - amount
1796
+ - transactionType
1797
+ type: object
1798
+ required:
1799
+ - data
1800
+ type: object
1801
+ note:
1802
+ maxLength: 128
1803
+ type: string
1804
+ quote:
1805
+ description: A response to a request for a quote.
1806
+ properties: *ref_25
1807
+ required: *ref_26
1808
+ type: object
1809
+ quoteRequestExtensions:
1810
+ items: *ref_12
1811
+ maxItems: 16
1812
+ minItems: 0
1813
+ type: array
1814
+ subScenario:
1815
+ description: >-
1816
+ Possible sub-scenario, defined locally within the scheme
1817
+ (UndefinedEnum Type). Based on FSPIOP
1818
+ TransactionSubScenario.
1819
+ example: LOCALLY_DEFINED_SUBSCENARIO
1820
+ pattern: ^[A-Z_]{1,32}$
1821
+ title: transactionSubScenario
1822
+ type: string
1823
+ to:
1824
+ properties: *ref_1
1825
+ required: *ref_2
1826
+ type: object
1827
+ transactionType:
1828
+ enum: *ref_11
1829
+ type: string
1830
+ transferId:
1831
+ description: A Mojaloop API transfer identifier (UUID).
1832
+ pattern: >-
1833
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
1834
+ type: string
1835
+ required: &ref_81
1836
+ - transferId
1837
+ - quote
1838
+ - from
1839
+ - to
1840
+ - amountType
1841
+ - currency
1842
+ - amount
1843
+ - transactionType
1844
+ - ilpPacket
1845
+ type: object
1846
+ description: An incoming transfer request.
1847
+ responses:
1848
+ '200':
1849
+ content:
1850
+ application/json:
1851
+ schema:
1852
+ properties: &ref_82
1853
+ completedTimestamp:
1854
+ description: An ISO-8601 formatted timestamp.
1855
+ example: '2020-05-19T08:38:08.699-04:00'
1856
+ pattern: >-
1857
+ ^(?:[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)$
1858
+ type: string
1859
+ fulfilment:
1860
+ description: >-
1861
+ Fulfilment that must be attached to the transfer by the
1862
+ Payee.
1863
+ example: WLctttbu2HvTsa1XWvUoGRcQozHsqeu9Ahl2JW9Bsu8
1864
+ maxLength: 48
1865
+ pattern: ^[A-Za-z0-9-_]{43}$
1866
+ title: ilpFulfilment
1867
+ type: string
1868
+ homeTransactionId:
1869
+ description: >-
1870
+ Transaction ID from the DFSP backend, used to reconcile
1871
+ transactions between the Switch and DFSP backend systems.
1872
+ type: string
1873
+ transferState:
1874
+ description: >
1875
+ Below are the allowed values for the enumeration -
1876
+ RECEIVED DFSP has received the transfer. - RESERVED DFSP
1877
+ has reserved the transfer. - COMMITTED DFSP has
1878
+ successfully performed the transfer. - ABORTED DFSP has
1879
+ aborted the transfer due a rejection or failure to perform
1880
+ the transfer.
1881
+ example: ABORTED
1882
+ enum: &ref_27
1883
+ - RECEIVED
1884
+ - RESERVED
1885
+ - COMMITTED
1886
+ - ABORTED
1887
+ type: string
1888
+ required: &ref_83
1889
+ - homeTransactionId
1890
+ type: object
1891
+ description: The transfer was accepted.
1892
+ '400':
1893
+ content: *ref_6
1894
+ description: Malformed or missing required headers or parameters.
1895
+ '500':
1896
+ content: *ref_7
1897
+ description: An error occurred processing the request.
1898
+ summary: Transfers funds from an external account to an internal account.
1899
+ tags:
1900
+ - Transfers
1901
+ /transfers/{transferId}:
1902
+ get:
1903
+ description: >-
1904
+ The HTTP request `GET /transfers/{transferId}` is used to get
1905
+ information regarding a transfer created or requested earlier. The
1906
+ `{transferId}` in the URI should contain the `transferId` that was used
1907
+ for the creation of the transfer.
1908
+ operationId: BackendTransfersGet
1909
+ parameters:
1910
+ - in: path
1911
+ name: transferId
1912
+ required: true
1913
+ schema: &ref_28
1914
+ type: string
1915
+ responses:
1916
+ '200':
1917
+ content:
1918
+ application/json:
1919
+ schema:
1920
+ properties: &ref_77
1921
+ amount:
1922
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1923
+ type: string
1924
+ amountType:
1925
+ enum: *ref_8
1926
+ type: string
1927
+ currency:
1928
+ enum: *ref_0
1929
+ maxLength: 3
1930
+ minLength: 3
1931
+ type: string
1932
+ extensions:
1933
+ items: *ref_12
1934
+ maxItems: 16
1935
+ minItems: 0
1936
+ type: array
1937
+ from:
1938
+ properties: *ref_1
1939
+ required: *ref_2
1940
+ type: object
1941
+ homeTransactionId:
1942
+ description: >-
1943
+ Transaction ID from the DFSP backend, used to reconcile
1944
+ transactions between the Switch and DFSP backend systems.
1945
+ type: string
1946
+ note:
1947
+ maxLength: 128
1948
+ type: string
1949
+ subScenario:
1950
+ description: >-
1951
+ Possible sub-scenario, defined locally within the scheme
1952
+ (UndefinedEnum Type). Based on FSPIOP
1953
+ TransactionSubScenario.
1954
+ example: LOCALLY_DEFINED_SUBSCENARIO
1955
+ pattern: ^[A-Z_]{1,32}$
1956
+ title: transactionSubScenario
1957
+ type: string
1958
+ timestamp:
1959
+ description: An ISO-8601 formatted timestamp.
1960
+ pattern: >-
1961
+ ^(?:[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)$
1962
+ type: string
1963
+ to:
1964
+ properties: *ref_1
1965
+ required: *ref_2
1966
+ type: object
1967
+ transactionType:
1968
+ enum: *ref_11
1969
+ type: string
1970
+ transferState:
1971
+ description: >
1972
+ Below are the allowed values for the enumeration -
1973
+ RECEIVED DFSP has received the transfer. - RESERVED DFSP
1974
+ has reserved the transfer. - COMMITTED DFSP has
1975
+ successfully performed the transfer. - ABORTED DFSP has
1976
+ aborted the transfer due a rejection or failure to perform
1977
+ the transfer.
1978
+ enum: *ref_27
1979
+ type: string
1980
+ required: &ref_78
1981
+ - homeTransactionId
1982
+ - from
1983
+ - to
1984
+ - amountType
1985
+ - currency
1986
+ - amount
1987
+ - transferState
1988
+ - transactionType
1989
+ - timestamp
1990
+ type: object
1991
+ description: The transfer was accepted.
1992
+ '500':
1993
+ content: *ref_7
1994
+ description: An error occurred processing the request.
1995
+ summary: Retrieves information for a specific transfer.
1996
+ tags:
1997
+ - Transfers
1998
+ put:
1999
+ description: >-
2000
+ The HTTP request `PUT /transfers/{transferId}` is used to receive
2001
+ notification for transfer being fulfiled when the FSP is a Payee.
2002
+ operationId: BackendTransfersPut
2003
+ parameters:
2004
+ - in: path
2005
+ name: transferId
2006
+ required: true
2007
+ schema: *ref_28
2008
+ requestBody:
2009
+ content:
2010
+ application/json:
2011
+ schema:
2012
+ description: PUT /transfers/{transferId} object.
2013
+ properties: &ref_61
2014
+ currentState:
2015
+ enum: &ref_84
2016
+ - ERROR_OCCURRED
2017
+ - WAITING_FOR_PARTY_ACCEPTANCE
2018
+ - WAITING_FOR_QUOTE_ACCEPTANCE
2019
+ - COMPLETED
2020
+ type: string
2021
+ direction:
2022
+ enum:
2023
+ - INBOUND
2024
+ type: string
2025
+ finalNotification:
2026
+ properties:
2027
+ completedTimestamp:
2028
+ description: An ISO-8601 formatted timestamp.
2029
+ example: '2020-05-19T08:38:08.699-04:00'
2030
+ pattern: >-
2031
+ ^(?:[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)$
2032
+ type: string
2033
+ extensionList:
2034
+ description: Optional extension, specific to deployment.
2035
+ items: *ref_12
2036
+ maxItems: 16
2037
+ minItems: 0
2038
+ type: array
2039
+ transferState:
2040
+ description: >
2041
+ Below are the allowed values for the enumeration -
2042
+ RECEIVED DFSP has received the transfer. - RESERVED DFSP
2043
+ has reserved the transfer. - COMMITTED DFSP has
2044
+ successfully performed the transfer. - ABORTED DFSP has
2045
+ aborted the transfer due a rejection or failure to
2046
+ perform the transfer.
2047
+ example: COMMITTED
2048
+ enum: *ref_27
2049
+ type: string
2050
+ required:
2051
+ - completedTimestamp
2052
+ - transferState
2053
+ type: object
2054
+ fulfil:
2055
+ properties:
2056
+ body:
2057
+ type: object
2058
+ headers:
2059
+ type: object
2060
+ type: object
2061
+ initiatedTimestamp:
2062
+ description: An ISO-8601 formatted timestamp.
2063
+ pattern: >-
2064
+ ^(?:[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)$
2065
+ type: string
2066
+ lastError:
2067
+ description: >-
2068
+ This object represents a Mojaloop API error received at any
2069
+ time during the transfer process.
2070
+ properties: &ref_79
2071
+ httpStatusCode:
2072
+ description: >-
2073
+ The HTTP status code returned to the caller. This is the
2074
+ same as the actual HTTP status code returned with the
2075
+ response.
2076
+ type: integer
2077
+ mojaloopError:
2078
+ description: >-
2079
+ If a transfer process results in an error callback
2080
+ during the asynchronous Mojaloop API exchange, this
2081
+ property will contain the underlying Mojaloop API error
2082
+ object.
2083
+ properties: &ref_64
2084
+ errorInformation:
2085
+ description: A Mojaloop API error information construct.
2086
+ properties: &ref_57
2087
+ errorCode:
2088
+ description: >
2089
+ The API data type errorCode is a JSON String of
2090
+ four characters, consisting of digits only.
2091
+ Negative numbers are not allowed. A leading zero
2092
+ is not allowed. Each error code in the API is a
2093
+ four-digit number, for example, 1234, where the
2094
+ first number (1 in the example) represents the
2095
+ high-level error category, the second number (2
2096
+ in the example) represents the low-level error
2097
+ category, and the last two numbers (34 in the
2098
+ example) represents the specific error.
2099
+ pattern: ^[1-9]\d{3}$
2100
+ title: ErrorCode
2101
+ type: string
2102
+ errorDescription:
2103
+ description: Error description string.
2104
+ maxLength: 128
2105
+ minLength: 1
2106
+ title: ErrorDescription
2107
+ type: string
2108
+ extensionList:
2109
+ description: Data model for the complex type ExtensionList.
2110
+ properties: &ref_59
2111
+ extension:
2112
+ description: Number of Extension elements.
2113
+ items:
2114
+ properties: *ref_29
2115
+ type: object
2116
+ maxItems: 16
2117
+ minItems: 1
2118
+ type: array
2119
+ required: &ref_60
2120
+ - extension
2121
+ type: object
2122
+ required: &ref_58
2123
+ - errorCode
2124
+ - errorDescription
2125
+ title: ErrorInformation
2126
+ type: object
2127
+ type: object
2128
+ type: object
2129
+ prepare:
2130
+ properties:
2131
+ body:
2132
+ type: object
2133
+ headers:
2134
+ type: object
2135
+ type: object
2136
+ quote:
2137
+ properties:
2138
+ fulfilment:
2139
+ type: string
2140
+ internalRequest:
2141
+ type: object
2142
+ mojaloopResponse:
2143
+ type: object
2144
+ request:
2145
+ type: object
2146
+ response:
2147
+ type: object
2148
+ type: object
2149
+ quoteRequest:
2150
+ properties:
2151
+ body:
2152
+ type: object
2153
+ headers:
2154
+ type: object
2155
+ type: object
2156
+ quoteResponse:
2157
+ properties:
2158
+ body:
2159
+ type: object
2160
+ headers:
2161
+ type: object
2162
+ type: object
2163
+ transferId:
2164
+ description: A Mojaloop API transfer identifier (UUID).
2165
+ pattern: >-
2166
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2167
+ type: string
2168
+ title: TransfersIDPatchResponse
2169
+ type: object
2170
+ description: An incoming notification for fulfiled transfer.
2171
+ responses:
2172
+ '200':
2173
+ description: The notification was accepted.
2174
+ '500':
2175
+ content: *ref_7
2176
+ description: An error occurred processing the request.
2177
+ summary: Receive notification for a specific transfer.
2178
+ tags:
2179
+ - Transfers
2180
+ components:
2181
+ parameters:
2182
+ bulkTransactionId:
2183
+ description: Identifier of the bulk transaction to continue as returned in.
2184
+ in: path
2185
+ name: bulkTransactionId
2186
+ required: true
2187
+ schema: *ref_30
2188
+ idSubValue:
2189
+ description: >-
2190
+ A sub-identifier of the party identifier, or a sub-type of the party
2191
+ identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
2192
+ in: path
2193
+ name: idSubValue
2194
+ required: true
2195
+ schema: *ref_18
2196
+ idType:
2197
+ description: The type of the party identifier. For example, `MSISDN`, `PERSONAL_ID`.
2198
+ in: path
2199
+ name: idType
2200
+ required: true
2201
+ schema: *ref_16
2202
+ idValue:
2203
+ description: The identifier value.
2204
+ in: path
2205
+ name: idValue
2206
+ required: true
2207
+ schema: *ref_13
2208
+ requestToPayId:
2209
+ in: path
2210
+ name: requestToPayId
2211
+ required: true
2212
+ schema: *ref_31
2213
+ transferId:
2214
+ in: path
2215
+ name: transferId
2216
+ required: true
2217
+ schema: *ref_28
2218
+ responses:
2219
+ '400':
2220
+ content: *ref_6
2221
+ description: Malformed or missing required headers or parameters.
2222
+ '404':
2223
+ description: >-
2224
+ The party specified by the provided identifier type and value is not
2225
+ known to the server.
2226
+ '500':
2227
+ content: *ref_7
2228
+ description: An error occurred processing the request.
2229
+ schemas:
2230
+ DateOfBirth:
2231
+ description: Date of Birth of the Party.
2232
+ example: '1966-06-16'
2233
+ pattern: >-
2234
+ ^(?:[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)$
2235
+ title: DateofBirth (type Date)
2236
+ type: string
2237
+ Extension:
2238
+ description: Data model for the complex type Extension
2239
+ properties: *ref_32
2240
+ required: *ref_33
2241
+ title: Extension
2242
+ type: object
2243
+ ExtensionKey:
2244
+ description: Extension key.
2245
+ maxLength: 32
2246
+ minLength: 1
2247
+ title: ExtensionKey
2248
+ type: string
2249
+ ExtensionList:
2250
+ description: Data model for the complex type ExtensionList
2251
+ properties: *ref_34
2252
+ required: *ref_35
2253
+ title: ExtensionList
2254
+ type: object
2255
+ ExtensionValue:
2256
+ description: Extension value.
2257
+ maxLength: 128
2258
+ minLength: 1
2259
+ title: ExtensionValue
2260
+ type: string
2261
+ FirstName:
2262
+ description: First name of the Party (Name Type).
2263
+ example: Henrik
2264
+ maxLength: 128
2265
+ minLength: 1
2266
+ pattern: >-
2267
+ ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
2268
+ .,''-]{1,128}$
2269
+ title: FirstName
2270
+ type: string
2271
+ FspId:
2272
+ description: FSP identifier.
2273
+ maxLength: 32
2274
+ minLength: 1
2275
+ title: FspId
2276
+ type: string
2277
+ IndividualQuote:
2278
+ description: Data model for individual quote in a bulk quote request.
2279
+ properties: *ref_36
2280
+ required: *ref_37
2281
+ type: object
2282
+ IndividualQuoteResultFailed:
2283
+ description: Data model for failed individual quote in a bulk quote response.
2284
+ properties: *ref_38
2285
+ required: *ref_39
2286
+ type: object
2287
+ IndividualQuoteResultSuccess:
2288
+ description: Data model for successful individual quote in a bulk quote response.
2289
+ properties: *ref_40
2290
+ required: *ref_41
2291
+ type: object
2292
+ IndividualTransfer:
2293
+ description: Data model for individual transfer in a bulk transfer request.
2294
+ properties: *ref_42
2295
+ required: *ref_43
2296
+ type: object
2297
+ IndividualTransferResult:
2298
+ description: Data model for individual transfer in a bulk transfer response.
2299
+ properties: *ref_44
2300
+ required: *ref_45
2301
+ type: object
2302
+ LastName:
2303
+ description: Last name of the Party (Name Type).
2304
+ example: Karlsson
2305
+ maxLength: 128
2306
+ minLength: 1
2307
+ pattern: >-
2308
+ ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
2309
+ .,''-]{1,128}$
2310
+ title: LastName
2311
+ type: string
2312
+ MerchantClassificationCode:
2313
+ description: >-
2314
+ A limited set of pre-defined numbers. This list would be a limited set
2315
+ of numbers identifying a set of popular merchant types like School Fees,
2316
+ Pubs and Restaurants, Groceries, etc.
2317
+ pattern: ^[\d]{1,4}$
2318
+ title: MerchantClassificationCode
2319
+ type: string
2320
+ MiddleName:
2321
+ description: Middle name of the Party (Name Type).
2322
+ example: Johannes
2323
+ maxLength: 128
2324
+ minLength: 1
2325
+ pattern: >-
2326
+ ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control}
2327
+ .,''-]{1,128}$
2328
+ title: MiddleName
2329
+ type: string
2330
+ Party:
2331
+ description: Data model for the complex type Party.
2332
+ properties: *ref_23
2333
+ required: *ref_24
2334
+ title: Party
2335
+ type: object
2336
+ PartyComplexName:
2337
+ description: Data model for the complex type PartyComplexName.
2338
+ properties: *ref_46
2339
+ title: PartyComplexName
2340
+ type: object
2341
+ PartyIdInfo:
2342
+ description: Data model for the complex type PartyIdInfo.
2343
+ properties: *ref_47
2344
+ required: *ref_48
2345
+ title: PartyIdInfo
2346
+ type: object
2347
+ PartyIdType:
2348
+ description: >
2349
+ This is a variant based on FSPIOP `PartyIdType` specification.
2350
+
2351
+ Main difference being the CONSENT and THIRD_PARTY_LINK enums.
2352
+
2353
+
2354
+ Below are the allowed values for the enumeration.
2355
+
2356
+ - MSISDN - An MSISDN (Mobile Station International Subscriber Directory
2357
+
2358
+ Number, that is, the phone number) is used as reference to a
2359
+ participant.
2360
+
2361
+ The MSISDN identifier should be in international format according to the
2362
+
2363
+ [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en).
2364
+
2365
+ Optionally, the MSISDN may be prefixed by a single plus sign, indicating
2366
+ the
2367
+
2368
+ international prefix.
2369
+
2370
+ - EMAIL - An email is used as reference to a
2371
+
2372
+ participant. The format of the email should be according to the
2373
+ informational
2374
+
2375
+ [RFC 3696](https://tools.ietf.org/html/rfc3696).
2376
+
2377
+ - PERSONAL_ID - A personal identifier is used as reference to a
2378
+ participant.
2379
+
2380
+ Examples of personal identification are passport number, birth
2381
+ certificate
2382
+
2383
+ number, and national registration number. The identifier number is added
2384
+ in
2385
+
2386
+ the PartyIdentifier element. The personal identifier type is added in
2387
+ the
2388
+
2389
+ PartySubIdOrType element.
2390
+
2391
+ - BUSINESS - A specific Business (for example, an organization or a
2392
+ company)
2393
+
2394
+ is used as reference to a participant. The BUSINESS identifier can be in
2395
+ any
2396
+
2397
+ format. To make a transaction connected to a specific username or bill
2398
+ number
2399
+
2400
+ in a Business, the PartySubIdOrType element should be used.
2401
+
2402
+ - DEVICE - A specific device (for example, a POS or ATM) ID connected to
2403
+ a
2404
+
2405
+ specific business or organization is used as reference to a Party.
2406
+
2407
+ For referencing a specific device under a specific business or
2408
+ organization,
2409
+
2410
+ use the PartySubIdOrType element.
2411
+
2412
+ - ACCOUNT_ID - A bank account number or FSP account ID should be used as
2413
+
2414
+ reference to a participant. The ACCOUNT_ID identifier can be in any
2415
+ format,
2416
+
2417
+ as formats can greatly differ depending on country and FSP.
2418
+
2419
+ - IBAN - A bank account number or FSP account ID is used as reference to
2420
+ a
2421
+
2422
+ participant. The IBAN identifier can consist of up to 34 alphanumeric
2423
+
2424
+ characters and should be entered without whitespace.
2425
+
2426
+ - ALIAS An alias is used as reference to a participant. The alias should
2427
+ be
2428
+
2429
+ created in the FSP as an alternative reference to an account owner.
2430
+
2431
+ Another example of an alias is a username in the FSP system.
2432
+
2433
+ The ALIAS identifier can be in any format. It is also possible to use
2434
+ the
2435
+
2436
+ PartySubIdOrType element for identifying an account under an Alias
2437
+ defined
2438
+
2439
+ by the PartyIdentifier.
2440
+
2441
+ - CONSENT - TBD
2442
+
2443
+ - THIRD_PARTY_LINK - TBD
2444
+ enum: *ref_49
2445
+ example: PERSONAL_ID
2446
+ title: PartyIdType
2447
+ type: string
2448
+ PartyIdentifier:
2449
+ description: Identifier of the Party.
2450
+ example: '16135551212'
2451
+ maxLength: 128
2452
+ minLength: 1
2453
+ title: PartyIdentifier
2454
+ type: string
2455
+ PartyName:
2456
+ description: Name of the Party. Could be a real name or a nickname.
2457
+ maxLength: 128
2458
+ minLength: 1
2459
+ title: PartyName
2460
+ type: string
2461
+ PartyPersonalInfo:
2462
+ description: Data model for the complex type PartyPersonalInfo.
2463
+ properties: *ref_50
2464
+ title: PartyPersonalInfo
2465
+ type: object
2466
+ PartySubIdOrType:
2467
+ description: >-
2468
+ Either a sub-identifier of a PartyIdentifier, or a sub-type of the
2469
+ PartyIdType, normally a PersonalIdentifierType.
2470
+ maxLength: 128
2471
+ minLength: 1
2472
+ title: PartySubIdOrType
2473
+ type: string
2474
+ amountCurrency:
2475
+ description: Object containing Amount and Currency of the transfer.
2476
+ properties: *ref_51
2477
+ required: *ref_52
2478
+ type: object
2479
+ amountType:
2480
+ enum: *ref_8
2481
+ type: string
2482
+ bulkQuoteId:
2483
+ description: A Mojaloop API bulk quote identifier (UUID).
2484
+ pattern: >-
2485
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2486
+ type: string
2487
+ bulkQuoteRequest:
2488
+ description: A request for a bulk quote.
2489
+ properties: *ref_53
2490
+ required: *ref_54
2491
+ type: object
2492
+ bulkQuoteResponse:
2493
+ description: A response to a request for a bulk quote.
2494
+ properties: *ref_4
2495
+ required: *ref_5
2496
+ type: object
2497
+ bulkTransferId:
2498
+ description: A Mojaloop API transfer identifier (UUID).
2499
+ pattern: >-
2500
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2501
+ type: string
2502
+ bulkTransferRequest:
2503
+ properties: *ref_55
2504
+ required: *ref_56
2505
+ type: object
2506
+ bulkTransferResponse:
2507
+ properties: *ref_14
2508
+ required: *ref_15
2509
+ type: object
2510
+ currency:
2511
+ enum: *ref_0
2512
+ maxLength: 3
2513
+ minLength: 3
2514
+ type: string
2515
+ dateOfBirth:
2516
+ description: Date of birth in the form YYYY-MM-DD.
2517
+ pattern: >-
2518
+ ^(?:[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)$
2519
+ type: string
2520
+ errorCode:
2521
+ description: >
2522
+ The API data type errorCode is a JSON String of four characters,
2523
+ consisting of digits only. Negative numbers are not allowed. A leading
2524
+ zero is not allowed. Each error code in the API is a four-digit number,
2525
+ for example, 1234, where the first number (1 in the example) represents
2526
+ the high-level error category, the second number (2 in the example)
2527
+ represents the low-level error category, and the last two numbers (34 in
2528
+ the example) represents the specific error.
2529
+ pattern: ^[1-9]\d{3}$
2530
+ title: ErrorCode
2531
+ type: string
2532
+ errorDescription:
2533
+ description: Error description string.
2534
+ maxLength: 128
2535
+ minLength: 1
2536
+ title: ErrorDescription
2537
+ type: string
2538
+ errorInformation:
2539
+ description: A Mojaloop API error information construct.
2540
+ properties: *ref_57
2541
+ required: *ref_58
2542
+ title: ErrorInformation
2543
+ type: object
2544
+ errorResponse:
2545
+ properties: *ref_3
2546
+ type: object
2547
+ extensionItem:
2548
+ properties: *ref_29
2549
+ type: object
2550
+ extensionList:
2551
+ items: *ref_12
2552
+ maxItems: 16
2553
+ minItems: 0
2554
+ type: array
2555
+ extensionListComplex:
2556
+ description: Data model for the complex type ExtensionList.
2557
+ properties: *ref_59
2558
+ required: *ref_60
2559
+ type: object
2560
+ fspId:
2561
+ description: FSP identifier.
2562
+ maxLength: 32
2563
+ minLength: 1
2564
+ type: string
2565
+ fulfilNotification:
2566
+ description: PUT /transfers/{transferId} object.
2567
+ properties: *ref_61
2568
+ title: TransfersIDPatchResponse
2569
+ type: object
2570
+ generalError:
2571
+ description: >-
2572
+ This object may represent a number of different error object types and
2573
+ so its properties may vary significantly.
2574
+ type: object
2575
+ geoCode:
2576
+ description: >-
2577
+ Indicates the geographic location from where the transaction was
2578
+ initiated.
2579
+ properties: *ref_19
2580
+ required: *ref_20
2581
+ type: object
2582
+ idSubValue:
2583
+ maxLength: 128
2584
+ minLength: 1
2585
+ type: string
2586
+ idType:
2587
+ enum: *ref_21
2588
+ type: string
2589
+ idValue:
2590
+ description: Identifier of the party.
2591
+ maxLength: 128
2592
+ minLength: 1
2593
+ type: string
2594
+ ilpFulfilment:
2595
+ description: Fulfilment that must be attached to the transfer by the Payee.
2596
+ example: WLctttbu2HvTsa1XWvUoGRcQozHsqeu9Ahl2JW9Bsu8
2597
+ maxLength: 48
2598
+ pattern: ^[A-Za-z0-9-_]{43}$
2599
+ title: ilpFulfilment
2600
+ type: string
2601
+ ilpPacketData:
2602
+ description: Object containing transfer object.
2603
+ properties: *ref_62
2604
+ required: *ref_63
2605
+ type: object
2606
+ initiator:
2607
+ enum: *ref_9
2608
+ type: string
2609
+ initiatorType:
2610
+ enum: *ref_10
2611
+ type: string
2612
+ latitude:
2613
+ description: >-
2614
+ The API data type Latitude is a JSON String in a lexical format that is
2615
+ restricted by a regular expression for interoperability reasons.
2616
+ pattern: >-
2617
+ ^(\+|-)?(?:90(?:(?:\.0{1,6})?)|(?:[0-9]|[1-8][0-9])(?:(?:\.[0-9]{1,6})?))$
2618
+ type: string
2619
+ longitude:
2620
+ description: >-
2621
+ The API data type Longitude is a JSON String in a lexical format that is
2622
+ restricted by a regular expression for interoperability reasons.
2623
+ pattern: >-
2624
+ ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
2625
+ type: string
2626
+ mojaloopError:
2627
+ properties: *ref_64
2628
+ type: object
2629
+ money:
2630
+ pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
2631
+ type: string
2632
+ otpDetails:
2633
+ properties: *ref_65
2634
+ required: *ref_66
2635
+ type: object
2636
+ participantsResponse:
2637
+ properties: *ref_17
2638
+ type: object
2639
+ payerType:
2640
+ enum: *ref_22
2641
+ type: string
2642
+ quoteId:
2643
+ description: A Mojaloop API quote identifier (UUID).
2644
+ pattern: >-
2645
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2646
+ type: string
2647
+ quoteRequest:
2648
+ description: A request for a quote for transfer from the DFSP backend.
2649
+ properties: *ref_67
2650
+ required: *ref_68
2651
+ type: object
2652
+ quoteResponse:
2653
+ description: A response to a request for a quote.
2654
+ properties: *ref_25
2655
+ required: *ref_26
2656
+ type: object
2657
+ scenario:
2658
+ enum: *ref_69
2659
+ type: string
2660
+ timestamp:
2661
+ description: An ISO-8601 formatted timestamp.
2662
+ pattern: >-
2663
+ ^(?:[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)$
2664
+ type: string
2665
+ transactionId:
2666
+ description: >-
2667
+ ID of the transaction, the ID is decided by the Payer FSP during the
2668
+ creation of the quote.
2669
+ pattern: >-
2670
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2671
+ type: string
2672
+ transactionRequest:
2673
+ description: A request for a pull based transfer.
2674
+ properties: *ref_70
2675
+ required: *ref_71
2676
+ type: object
2677
+ transactionRequestId:
2678
+ description: A Mojaloop API transaction request identifier (UUID).
2679
+ pattern: >-
2680
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2681
+ type: string
2682
+ transactionRequestResponse:
2683
+ description: A response to a request for a quote.
2684
+ properties: *ref_72
2685
+ required: *ref_73
2686
+ type: object
2687
+ transactionRequestState:
2688
+ enum: *ref_74
2689
+ type: string
2690
+ transactionSubScenario:
2691
+ description: >-
2692
+ Possible sub-scenario, defined locally within the scheme (UndefinedEnum
2693
+ Type). Based on FSPIOP TransactionSubScenario.
2694
+ example: LOCALLY_DEFINED_SUBSCENARIO
2695
+ pattern: ^[A-Z_]{1,32}$
2696
+ title: transactionSubScenario
2697
+ type: string
2698
+ transactionType:
2699
+ enum: *ref_11
2700
+ type: string
2701
+ transactionTypeObject:
2702
+ description: Object containing transfer object.
2703
+ properties: *ref_75
2704
+ required: *ref_76
2705
+ type: object
2706
+ transferDetailsResponse:
2707
+ properties: *ref_77
2708
+ required: *ref_78
2709
+ type: object
2710
+ transferError:
2711
+ description: >-
2712
+ This object represents a Mojaloop API error received at any time during
2713
+ the transfer process.
2714
+ properties: *ref_79
2715
+ type: object
2716
+ transferId:
2717
+ description: A Mojaloop API transfer identifier (UUID).
2718
+ pattern: >-
2719
+ ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
2720
+ type: string
2721
+ transferParty:
2722
+ properties: *ref_1
2723
+ required: *ref_2
2724
+ type: object
2725
+ transferRequest:
2726
+ properties: *ref_80
2727
+ required: *ref_81
2728
+ type: object
2729
+ transferResponse:
2730
+ properties: *ref_82
2731
+ required: *ref_83
2732
+ type: object
2733
+ transferState:
2734
+ description: >
2735
+ Below are the allowed values for the enumeration - RECEIVED DFSP has
2736
+ received the transfer. - RESERVED DFSP has reserved the transfer. -
2737
+ COMMITTED DFSP has successfully performed the transfer. - ABORTED DFSP
2738
+ has aborted the transfer due a rejection or failure to perform the
2739
+ transfer.
2740
+ enum: *ref_27
2741
+ type: string
2742
+ transferStatus:
2743
+ enum: *ref_84
2744
+ type: string