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

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.
@@ -73,40 +73,12 @@ paths:
73
73
  description: The HTTP request `PUT /bulkTransactions/{bulkTransactionId}` is used to amend information regarding a bulk transaction, i.e. when autoAcceptParty or autoAcceptQuote is false then the payer need to provide confirmation to proceed with further processing of the request. The `{bulkTransactionId}` in the URI should contain the `bulkTransactionId` that was used for the creation of the bulk transfer.
74
74
  operationId: BackendBulkTransactionsPut
75
75
  parameters:
76
- - $ref: '#/components/parameters/bulkTransactionId'
76
+ - $ref: '../components/parameters/bulkTransactionId.yaml'
77
77
  requestBody:
78
78
  content:
79
79
  application/json:
80
80
  schema:
81
- properties:
82
- bulkHomeTransactionID:
83
- description: Transaction ID from the DFSP backend, used to reconcile transactions between the Switch and DFSP backend systems.
84
- type: string
85
- individualTransferResults:
86
- description: List of individual transfers in a bulk transfer with accept party information.
87
- items:
88
- description: Data model for the 'individualTransfer' while accepting party or quote.
89
- properties:
90
- homeTransactionId:
91
- description: Transaction ID from the DFSP backend, used to reconcile transactions between the Switch and DFSP backend systems.
92
- type: string
93
- transactionId:
94
- description: Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘).
95
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
96
- pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
97
- title: CorrelationId
98
- type: string
99
- required:
100
- - homeTransactionId
101
- type: object
102
- minItems: 1
103
- type: array
104
- required:
105
- - bulkHomeTransactionID
106
- - individualTransferResults
107
- type: object
108
- description: Bulk transaction request body.
109
- required: true
81
+ $ref: '../components/schemas/bulkTransactionResponse.yaml'
110
82
  responses:
111
83
  '202':
112
84
  description: Bulk transaction information successfully amended.
@@ -384,20 +356,8 @@ paths:
384
356
  summary: Receive notification for a specific transfer.
385
357
  tags:
386
358
  - Transfers
387
-
388
359
  components:
389
360
  parameters:
390
- bulkTransactionId:
391
- description: Identifier of the bulk transaction to continue as returned in.
392
- in: path
393
- name: bulkTransactionId
394
- required: true
395
- schema:
396
- description: Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘).
397
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
398
- pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
399
- title: CorrelationId
400
- type: string
401
361
  idSubValue:
402
362
  description: A sub-identifier of the party identifier, or a sub-type of the party identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
403
363
  in: path
@@ -455,46 +415,6 @@ components:
455
415
  pattern: ^(?:[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)$
456
416
  title: DateofBirth (type Date)
457
417
  type: string
458
- Extension:
459
- description: Data model for the complex type Extension
460
- properties:
461
- key:
462
- $ref: '#/components/schemas/ExtensionKey'
463
- description: Extension key.
464
- value:
465
- $ref: '#/components/schemas/ExtensionValue'
466
- description: Extension value.
467
- required:
468
- - key
469
- - value
470
- title: Extension
471
- type: object
472
- ExtensionKey:
473
- description: Extension key.
474
- maxLength: 32
475
- minLength: 1
476
- title: ExtensionKey
477
- type: string
478
- ExtensionList:
479
- description: Data model for the complex type ExtensionList
480
- properties:
481
- extension:
482
- description: Number of Extension elements
483
- items:
484
- $ref: '#/components/schemas/Extension'
485
- maxItems: 16
486
- minItems: 1
487
- type: array
488
- required:
489
- - extension
490
- title: ExtensionList
491
- type: object
492
- ExtensionValue:
493
- description: Extension value.
494
- maxLength: 128
495
- minLength: 1
496
- title: ExtensionValue
497
- type: string
498
418
  FirstName:
499
419
  description: First name of the Party (Name Type).
500
420
  example: Henrik
@@ -533,6 +453,8 @@ components:
533
453
  type: string
534
454
  quoteId:
535
455
  $ref: '#/components/schemas/quoteId'
456
+ subScenario:
457
+ $ref: '#/components/schemas/transactionSubScenario'
536
458
  to:
537
459
  $ref: '#/components/schemas/transferParty'
538
460
  transactionId:
@@ -607,6 +529,8 @@ components:
607
529
  maxLength: 128
608
530
  minLength: 1
609
531
  type: string
532
+ subScenario:
533
+ $ref: '#/components/schemas/transactionSubScenario'
610
534
  to:
611
535
  $ref: '#/components/schemas/transferParty'
612
536
  transactionType:
@@ -651,147 +575,6 @@ components:
651
575
  pattern: ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control} .,''-]{1,128}$
652
576
  title: MiddleName
653
577
  type: string
654
- Party:
655
- description: Data model for the complex type Party.
656
- properties:
657
- merchantClassificationCode:
658
- $ref: '#/components/schemas/MerchantClassificationCode'
659
- name:
660
- $ref: '#/components/schemas/PartyName'
661
- partyIdInfo:
662
- $ref: '#/components/schemas/PartyIdInfo'
663
- personalInfo:
664
- $ref: '#/components/schemas/PartyPersonalInfo'
665
- required:
666
- - partyIdInfo
667
- title: Party
668
- type: object
669
- PartyComplexName:
670
- description: Data model for the complex type PartyComplexName.
671
- properties:
672
- displayName:
673
- description: Display name of the sender if known
674
- type: string
675
- firstName:
676
- $ref: '#/components/schemas/FirstName'
677
- idSubValue:
678
- description: The sub identifier string used to identify the sender
679
- type: string
680
- idType:
681
- $ref: '#/components/schemas/idType'
682
- idValue:
683
- description: The identifier string used to identify the sender
684
- type: string
685
- lastName:
686
- $ref: '#/components/schemas/LastName'
687
- middleName:
688
- $ref: '#/components/schemas/MiddleName'
689
- type:
690
- $ref: '#/components/schemas/payerType'
691
- title: PartyComplexName
692
- type: object
693
- PartyIdInfo:
694
- description: Data model for the complex type PartyIdInfo.
695
- properties:
696
- extensionList:
697
- $ref: '#/components/schemas/ExtensionList'
698
- fspId:
699
- $ref: '#/components/schemas/FspId'
700
- partyIdType:
701
- $ref: '#/components/schemas/PartyIdType'
702
- partyIdentifier:
703
- $ref: '#/components/schemas/PartyIdentifier'
704
- partySubIdOrType:
705
- $ref: '#/components/schemas/PartySubIdOrType'
706
- required:
707
- - partyIdType
708
- - partyIdentifier
709
- title: PartyIdInfo
710
- type: object
711
- PartyIdType:
712
- description: |
713
- This is a variant based on FSPIOP `PartyIdType` specification.
714
- Main difference being the CONSENT and THIRD_PARTY_LINK enums.
715
-
716
- Below are the allowed values for the enumeration.
717
- - MSISDN - An MSISDN (Mobile Station International Subscriber Directory
718
- Number, that is, the phone number) is used as reference to a participant.
719
- The MSISDN identifier should be in international format according to the
720
- [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en).
721
- Optionally, the MSISDN may be prefixed by a single plus sign, indicating the
722
- international prefix.
723
- - EMAIL - An email is used as reference to a
724
- participant. The format of the email should be according to the informational
725
- [RFC 3696](https://tools.ietf.org/html/rfc3696).
726
- - PERSONAL_ID - A personal identifier is used as reference to a participant.
727
- Examples of personal identification are passport number, birth certificate
728
- number, and national registration number. The identifier number is added in
729
- the PartyIdentifier element. The personal identifier type is added in the
730
- PartySubIdOrType element.
731
- - BUSINESS - A specific Business (for example, an organization or a company)
732
- is used as reference to a participant. The BUSINESS identifier can be in any
733
- format. To make a transaction connected to a specific username or bill number
734
- in a Business, the PartySubIdOrType element should be used.
735
- - DEVICE - A specific device (for example, a POS or ATM) ID connected to a
736
- specific business or organization is used as reference to a Party.
737
- For referencing a specific device under a specific business or organization,
738
- use the PartySubIdOrType element.
739
- - ACCOUNT_ID - A bank account number or FSP account ID should be used as
740
- reference to a participant. The ACCOUNT_ID identifier can be in any format,
741
- as formats can greatly differ depending on country and FSP.
742
- - IBAN - A bank account number or FSP account ID is used as reference to a
743
- participant. The IBAN identifier can consist of up to 34 alphanumeric
744
- characters and should be entered without whitespace.
745
- - ALIAS An alias is used as reference to a participant. The alias should be
746
- created in the FSP as an alternative reference to an account owner.
747
- Another example of an alias is a username in the FSP system.
748
- The ALIAS identifier can be in any format. It is also possible to use the
749
- PartySubIdOrType element for identifying an account under an Alias defined
750
- by the PartyIdentifier.
751
- - CONSENT - TBD
752
- - THIRD_PARTY_LINK - TBD
753
- enum:
754
- - MSISDN
755
- - EMAIL
756
- - PERSONAL_ID
757
- - BUSINESS
758
- - DEVICE
759
- - ACCOUNT_ID
760
- - IBAN
761
- - ALIAS
762
- - CONSENT
763
- - THIRD_PARTY_LINK
764
- example: PERSONAL_ID
765
- title: PartyIdType
766
- type: string
767
- PartyIdentifier:
768
- description: Identifier of the Party.
769
- example: '16135551212'
770
- maxLength: 128
771
- minLength: 1
772
- title: PartyIdentifier
773
- type: string
774
- PartyName:
775
- description: Name of the Party. Could be a real name or a nickname.
776
- maxLength: 128
777
- minLength: 1
778
- title: PartyName
779
- type: string
780
- PartyPersonalInfo:
781
- description: Data model for the complex type PartyPersonalInfo.
782
- properties:
783
- complexName:
784
- $ref: '#/components/schemas/PartyComplexName'
785
- dateOfBirth:
786
- $ref: '#/components/schemas/DateOfBirth'
787
- title: PartyPersonalInfo
788
- type: object
789
- PartySubIdOrType:
790
- description: Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType.
791
- maxLength: 128
792
- minLength: 1
793
- title: PartySubIdOrType
794
- type: string
795
578
  amountCurrency:
796
579
  description: Object containing Amount and Currency of the transfer.
797
580
  properties:
@@ -1176,7 +959,7 @@ components:
1176
959
  initiatedTimestamp:
1177
960
  $ref: '#/components/schemas/timestamp'
1178
961
  lastError:
1179
- $ref: '#/components/schemas/transferError'
962
+ $ref: '../components/schemas/transferError.yaml'
1180
963
  prepare:
1181
964
  properties:
1182
965
  body:
@@ -1250,13 +1033,6 @@ components:
1250
1033
  maxLength: 128
1251
1034
  minLength: 1
1252
1035
  type: string
1253
- ilpFulfilment:
1254
- description: Fulfilment that must be attached to the transfer by the Payee.
1255
- example: WLctttbu2HvTsa1XWvUoGRcQozHsqeu9Ahl2JW9Bsu8
1256
- maxLength: 48
1257
- pattern: ^[A-Za-z0-9-_]{43}$
1258
- title: ilpFulfilment
1259
- type: string
1260
1036
  ilpPacketData:
1261
1037
  description: Object containing transfer object.
1262
1038
  properties:
@@ -1264,10 +1040,10 @@ components:
1264
1040
  $ref: '#/components/schemas/amountCurrency'
1265
1041
  description: Amount and currency of the transaction
1266
1042
  payee:
1267
- $ref: '#/components/schemas/Party'
1043
+ $ref: '../components/schemas/Party.yaml'
1268
1044
  description: Information about the Payee in the proposed financial transaction.
1269
1045
  payer:
1270
- $ref: '#/components/schemas/Party'
1046
+ $ref: '../components/schemas/Party.yaml'
1271
1047
  description: Information about the Payer in the proposed financial transaction.
1272
1048
  quoteId:
1273
1049
  $ref: '#/components/schemas/quoteId'
@@ -1305,11 +1081,6 @@ components:
1305
1081
  description: The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons.
1306
1082
  pattern: ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
1307
1083
  type: string
1308
- mojaloopError:
1309
- properties:
1310
- errorInformation:
1311
- $ref: '#/components/schemas/errorInformation'
1312
- type: object
1313
1084
  money:
1314
1085
  pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1315
1086
  type: string
@@ -1377,6 +1148,8 @@ components:
1377
1148
  type: string
1378
1149
  quoteId:
1379
1150
  $ref: '#/components/schemas/quoteId'
1151
+ subScenario:
1152
+ $ref: '#/components/schemas/transactionSubScenario'
1380
1153
  to:
1381
1154
  $ref: '#/components/schemas/transferParty'
1382
1155
  description: Information about the Payee in the proposed financial transaction.
@@ -1485,6 +1258,8 @@ components:
1485
1258
  $ref: '#/components/schemas/transactionRequestId'
1486
1259
  transactionType:
1487
1260
  $ref: '#/components/schemas/transactionType'
1261
+ subScenario:
1262
+ $ref: '#/components/schemas/transactionSubScenario'
1488
1263
  required:
1489
1264
  - transactionRequestId
1490
1265
  - to
@@ -1517,6 +1292,12 @@ components:
1517
1292
  - ACCEPTED
1518
1293
  - REJECTED
1519
1294
  type: string
1295
+ transactionSubScenario:
1296
+ description: Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type). Based on FSPIOP TransactionSubScenario.
1297
+ example: LOCALLY_DEFINED_SUBSCENARIO
1298
+ pattern: ^[A-Z_]{1,32}$
1299
+ title: transactionSubScenario
1300
+ type: string
1520
1301
  transactionType:
1521
1302
  enum:
1522
1303
  - TRANSFER
@@ -1533,6 +1314,8 @@ components:
1533
1314
  description: Specifies the type of the transaction initiator.
1534
1315
  scenario:
1535
1316
  $ref: '#/components/schemas/scenario'
1317
+ subScenario:
1318
+ $ref: '#/components/schemas/transactionSubScenario'
1536
1319
  required:
1537
1320
  - scenario
1538
1321
  - initiator
@@ -1556,6 +1339,8 @@ components:
1556
1339
  note:
1557
1340
  maxLength: 128
1558
1341
  type: string
1342
+ subScenario:
1343
+ $ref: '#/components/schemas/transactionSubScenario'
1559
1344
  timestamp:
1560
1345
  $ref: '#/components/schemas/timestamp'
1561
1346
  to:
@@ -1575,16 +1360,6 @@ components:
1575
1360
  - transactionType
1576
1361
  - timestamp
1577
1362
  type: object
1578
- transferError:
1579
- description: This object represents a Mojaloop API error received at any time during the transfer process.
1580
- properties:
1581
- httpStatusCode:
1582
- description: The HTTP status code returned to the caller. This is the same as the actual HTTP status code returned with the response.
1583
- type: integer
1584
- mojaloopError:
1585
- $ref: '#/components/schemas/mojaloopError'
1586
- description: If a transfer process results in an error callback during the asynchronous Mojaloop API exchange, this property will contain the underlying Mojaloop API error object.
1587
- type: object
1588
1363
  transferId:
1589
1364
  description: A Mojaloop API transfer identifier (UUID).
1590
1365
  pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
@@ -1650,6 +1425,8 @@ components:
1650
1425
  $ref: '#/components/schemas/quoteResponse'
1651
1426
  quoteRequestExtensions:
1652
1427
  $ref: '#/components/schemas/extensionList'
1428
+ subScenario:
1429
+ $ref: '#/components/schemas/transactionSubScenario'
1653
1430
  to:
1654
1431
  $ref: '#/components/schemas/transferParty'
1655
1432
  transactionType:
@@ -1674,7 +1451,7 @@ components:
1674
1451
  description: Completed timestamp from the DFSP backend, used for testing purposes to inject a given completed timestamp via a rule.
1675
1452
  example: '2020-05-19T08:38:08.699-04:00'
1676
1453
  fulfilment:
1677
- $ref: '#/components/schemas/ilpFulfilment'
1454
+ $ref: '../components/schemas/IlpFulfilment.yaml'
1678
1455
  description: Fulfilment from the DFSP backend, used for testing purposes to inject an invalid fulfilment via a rule.
1679
1456
  homeTransactionId:
1680
1457
  description: Transaction ID from the DFSP backend, used to reconcile transactions between the Switch and DFSP backend systems.
@@ -14,6 +14,8 @@ properties:
14
14
  $ref: ./Amount.yaml
15
15
  transactionType:
16
16
  $ref: ./transferTransactionType.yaml
17
+ subScenario:
18
+ $ref: ./TransactionSubScenario.yaml
17
19
  note:
18
20
  $ref: ./Note.yaml
19
21
  extensions:
@@ -14,6 +14,8 @@ properties:
14
14
  $ref: ./Amount.yaml
15
15
  transactionType:
16
16
  $ref: ./transferTransactionType.yaml
17
+ subScenario:
18
+ $ref: ./TransactionSubScenario.yaml
17
19
  ilpPacket:
18
20
  $ref: ./IlpPacket.yaml
19
21
  condition:
@@ -25,6 +25,8 @@ properties:
25
25
  $ref: ./Amount.yaml
26
26
  transactionType:
27
27
  $ref: ./transferTransactionType.yaml
28
+ subScenario:
29
+ $ref: ./TransactionSubScenario.yaml
28
30
  note:
29
31
  $ref: ./Note.yaml
30
32
  quoteRequestExtensions:
@@ -27,6 +27,8 @@ properties:
27
27
  $ref: ./Amount.yaml
28
28
  transactionType:
29
29
  $ref: ./transferTransactionType.yaml
30
+ subScenario:
31
+ $ref: ./TransactionSubScenario.yaml
30
32
  note:
31
33
  $ref: ./Note.yaml
32
34
  currentState: