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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mojaloop/api-snippets",
3
- "version": "17.0.2-snapshot.0",
3
+ "version": "17.0.2",
4
4
  "description": "Mojaloop API specification reusable snippets",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -22,11 +22,11 @@
22
22
  "build:openapi": "npm run build:v1.0; npm run build:v1.1; npm run build:thirdparty; npm run build:sdk-scheme-adapter:backend; npm run build:sdk-scheme-adapter:outbound;",
23
23
  "build:v1.0": "openapi bundle --output docs/fspiop-rest-v1.0-openapi3-snippets.yaml --ext yaml fspiop/v1_0/openapi3/openapi.yaml && swagger-cli validate docs/fspiop-rest-v1.0-openapi3-snippets.yaml",
24
24
  "build:v1.1": "openapi bundle --output docs/fspiop-rest-v1.1-openapi3-snippets.yaml --ext yaml fspiop/v1_1/openapi3/openapi.yaml && swagger-cli validate docs/fspiop-rest-v1.1-openapi3-snippets.yaml",
25
- "build:thirdparty": "openapi bundle --dereferenced --output docs/thirdparty-openapi3-snippets.yaml --ext yaml thirdparty/v1_0/openapi3/openapi.yaml && swagger-cli validate docs/thirdparty-openapi3-snippets.yaml",
25
+ "build:thirdparty": "openapi bundle --output docs/thirdparty-openapi3-snippets.yaml --ext yaml thirdparty/v1_0/openapi3/openapi.yaml && swagger-cli validate docs/thirdparty-openapi3-snippets.yaml",
26
26
  "build:thirdparty-dfsp": "swagger-cli bundle -o ./thirdparty/v1_0/openapi3/thirdparty-dfsp-api.yaml -t yaml ./thirdparty/v1_0/openapi3/thirdparty-dfsp-api.template.yaml",
27
27
  "build:thirdparty-pisp": "swagger-cli bundle -o ./thirdparty/v1_0/openapi3/thirdparty-pisp-api.yaml -t yaml ./thirdparty/v1_0/openapi3/thirdparty-pisp-api.template.yaml",
28
- "build:sdk-scheme-adapter:backend": "openapi bundle --dereferenced --output docs/sdk-scheme-adapter-backend-v2_0_0-openapi3-snippets.yaml --ext yaml sdk-scheme-adapter/v2_0_0/backend/openapi.yaml && swagger-cli validate docs/sdk-scheme-adapter-backend-v2_0_0-openapi3-snippets.yaml",
29
- "build:sdk-scheme-adapter:outbound": "openapi bundle --dereferenced --output docs/sdk-scheme-adapter-outbound-v2_0_0-openapi3-snippets.yaml --ext yaml sdk-scheme-adapter/v2_0_0/outbound/openapi.yaml && swagger-cli validate docs/sdk-scheme-adapter-outbound-v2_0_0-openapi3-snippets.yaml",
28
+ "build:sdk-scheme-adapter:backend": "openapi bundle --output docs/sdk-scheme-adapter-backend-v2_0_0-openapi3-snippets.yaml --ext yaml sdk-scheme-adapter/v2_0_0/backend/openapi.yaml && swagger-cli validate docs/sdk-scheme-adapter-backend-v2_0_0-openapi3-snippets.yaml",
29
+ "build:sdk-scheme-adapter:outbound": "openapi bundle --output docs/sdk-scheme-adapter-outbound-v2_0_0-openapi3-snippets.yaml --ext yaml sdk-scheme-adapter/v2_0_0/outbound/openapi.yaml && swagger-cli validate docs/sdk-scheme-adapter-outbound-v2_0_0-openapi3-snippets.yaml",
30
30
  "build:schemas:sdk-scheme-adapter:backend": "npx ts-node --transpile-only src/scripts/json-schema-generator.ts docs/sdk-scheme-adapter-backend-v2_0_0-openapi3-snippets.yaml src/sdk-scheme-adapter/v2_0_0/backend",
31
31
  "build:schemas:sdk-scheme-adapter:outbound": "npx ts-node --transpile-only src/scripts/json-schema-generator.ts docs/sdk-scheme-adapter-outbound-v2_0_0-openapi3-snippets.yaml src/sdk-scheme-adapter/v2_0_0/outbound",
32
32
  "lint": "eslint --ext ts --ext js test src",
@@ -68,7 +68,7 @@
68
68
  "license": "Apache-2.0",
69
69
  "dependencies": {
70
70
  "@apidevtools/json-schema-ref-parser": "^9.1.0",
71
- "commander": "^9.4.1",
71
+ "commander": "^9.5.0",
72
72
  "jest-ts-auto-mock": "^2.1.0",
73
73
  "js-yaml": "^4.1.0",
74
74
  "json-refs": "^3.0.15",
@@ -82,12 +82,12 @@
82
82
  "@types/responselike": "^1.0.0"
83
83
  },
84
84
  "devDependencies": {
85
- "@commitlint/cli": "^17.4.0",
85
+ "@commitlint/cli": "^17.4.1",
86
86
  "@commitlint/config-conventional": "^17.4.0",
87
87
  "@redocly/openapi-cli": "^1.0.0-beta.94",
88
88
  "@types/jest": "^29.2.5",
89
- "@typescript-eslint/eslint-plugin": "^5.48.0",
90
- "@typescript-eslint/parser": "^5.48.0",
89
+ "@typescript-eslint/eslint-plugin": "^5.48.1",
90
+ "@typescript-eslint/parser": "^5.48.1",
91
91
  "diff": "^5.1.0",
92
92
  "eslint": "^8.31.0",
93
93
  "eslint-config-prettier": "^8.6.0",
@@ -105,7 +105,7 @@
105
105
  "lint-staged": "^13.1.0",
106
106
  "npm-audit-resolver": "^3.0.0-7",
107
107
  "npm-check-updates": "^16.6.2",
108
- "prettier": "^2.8.1",
108
+ "prettier": "^2.8.2",
109
109
  "standard-version": "^9.5.0",
110
110
  "swagger-cli": "^4.0.4",
111
111
  "ts-jest": "^29.0.3",
@@ -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.
@@ -386,17 +358,6 @@ paths:
386
358
  - Transfers
387
359
  components:
388
360
  parameters:
389
- bulkTransactionId:
390
- description: Identifier of the bulk transaction to continue as returned in.
391
- in: path
392
- name: bulkTransactionId
393
- required: true
394
- schema:
395
- 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 (‘-‘).
396
- example: b51ec534-ee48-4575-b6a9-ead2955b8069
397
- pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
398
- title: CorrelationId
399
- type: string
400
361
  idSubValue:
401
362
  description: A sub-identifier of the party identifier, or a sub-type of the party identifier's type. For example, `PASSPORT`, `DRIVING_LICENSE`.
402
363
  in: path
@@ -454,46 +415,6 @@ components:
454
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)$
455
416
  title: DateofBirth (type Date)
456
417
  type: string
457
- Extension:
458
- description: Data model for the complex type Extension
459
- properties:
460
- key:
461
- $ref: '#/components/schemas/ExtensionKey'
462
- description: Extension key.
463
- value:
464
- $ref: '#/components/schemas/ExtensionValue'
465
- description: Extension value.
466
- required:
467
- - key
468
- - value
469
- title: Extension
470
- type: object
471
- ExtensionKey:
472
- description: Extension key.
473
- maxLength: 32
474
- minLength: 1
475
- title: ExtensionKey
476
- type: string
477
- ExtensionList:
478
- description: Data model for the complex type ExtensionList
479
- properties:
480
- extension:
481
- description: Number of Extension elements
482
- items:
483
- $ref: '#/components/schemas/Extension'
484
- maxItems: 16
485
- minItems: 1
486
- type: array
487
- required:
488
- - extension
489
- title: ExtensionList
490
- type: object
491
- ExtensionValue:
492
- description: Extension value.
493
- maxLength: 128
494
- minLength: 1
495
- title: ExtensionValue
496
- type: string
497
418
  FirstName:
498
419
  description: First name of the Party (Name Type).
499
420
  example: Henrik
@@ -533,7 +454,7 @@ components:
533
454
  quoteId:
534
455
  $ref: '#/components/schemas/quoteId'
535
456
  subScenario:
536
- $ref: '#/components/schemas/transactionSubScenario'
457
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
537
458
  to:
538
459
  $ref: '#/components/schemas/transferParty'
539
460
  transactionId:
@@ -609,7 +530,7 @@ components:
609
530
  minLength: 1
610
531
  type: string
611
532
  subScenario:
612
- $ref: '#/components/schemas/transactionSubScenario'
533
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
613
534
  to:
614
535
  $ref: '#/components/schemas/transferParty'
615
536
  transactionType:
@@ -654,147 +575,6 @@ components:
654
575
  pattern: ^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control} .,''-]{1,128}$
655
576
  title: MiddleName
656
577
  type: string
657
- Party:
658
- description: Data model for the complex type Party.
659
- properties:
660
- merchantClassificationCode:
661
- $ref: '#/components/schemas/MerchantClassificationCode'
662
- name:
663
- $ref: '#/components/schemas/PartyName'
664
- partyIdInfo:
665
- $ref: '#/components/schemas/PartyIdInfo'
666
- personalInfo:
667
- $ref: '#/components/schemas/PartyPersonalInfo'
668
- required:
669
- - partyIdInfo
670
- title: Party
671
- type: object
672
- PartyComplexName:
673
- description: Data model for the complex type PartyComplexName.
674
- properties:
675
- displayName:
676
- description: Display name of the sender if known
677
- type: string
678
- firstName:
679
- $ref: '#/components/schemas/FirstName'
680
- idSubValue:
681
- description: The sub identifier string used to identify the sender
682
- type: string
683
- idType:
684
- $ref: '#/components/schemas/idType'
685
- idValue:
686
- description: The identifier string used to identify the sender
687
- type: string
688
- lastName:
689
- $ref: '#/components/schemas/LastName'
690
- middleName:
691
- $ref: '#/components/schemas/MiddleName'
692
- type:
693
- $ref: '#/components/schemas/payerType'
694
- title: PartyComplexName
695
- type: object
696
- PartyIdInfo:
697
- description: Data model for the complex type PartyIdInfo.
698
- properties:
699
- extensionList:
700
- $ref: '#/components/schemas/ExtensionList'
701
- fspId:
702
- $ref: '#/components/schemas/FspId'
703
- partyIdType:
704
- $ref: '#/components/schemas/PartyIdType'
705
- partyIdentifier:
706
- $ref: '#/components/schemas/PartyIdentifier'
707
- partySubIdOrType:
708
- $ref: '#/components/schemas/PartySubIdOrType'
709
- required:
710
- - partyIdType
711
- - partyIdentifier
712
- title: PartyIdInfo
713
- type: object
714
- PartyIdType:
715
- description: |
716
- This is a variant based on FSPIOP `PartyIdType` specification.
717
- Main difference being the CONSENT and THIRD_PARTY_LINK enums.
718
-
719
- Below are the allowed values for the enumeration.
720
- - MSISDN - An MSISDN (Mobile Station International Subscriber Directory
721
- Number, that is, the phone number) is used as reference to a participant.
722
- The MSISDN identifier should be in international format according to the
723
- [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en).
724
- Optionally, the MSISDN may be prefixed by a single plus sign, indicating the
725
- international prefix.
726
- - EMAIL - An email is used as reference to a
727
- participant. The format of the email should be according to the informational
728
- [RFC 3696](https://tools.ietf.org/html/rfc3696).
729
- - PERSONAL_ID - A personal identifier is used as reference to a participant.
730
- Examples of personal identification are passport number, birth certificate
731
- number, and national registration number. The identifier number is added in
732
- the PartyIdentifier element. The personal identifier type is added in the
733
- PartySubIdOrType element.
734
- - BUSINESS - A specific Business (for example, an organization or a company)
735
- is used as reference to a participant. The BUSINESS identifier can be in any
736
- format. To make a transaction connected to a specific username or bill number
737
- in a Business, the PartySubIdOrType element should be used.
738
- - DEVICE - A specific device (for example, a POS or ATM) ID connected to a
739
- specific business or organization is used as reference to a Party.
740
- For referencing a specific device under a specific business or organization,
741
- use the PartySubIdOrType element.
742
- - ACCOUNT_ID - A bank account number or FSP account ID should be used as
743
- reference to a participant. The ACCOUNT_ID identifier can be in any format,
744
- as formats can greatly differ depending on country and FSP.
745
- - IBAN - A bank account number or FSP account ID is used as reference to a
746
- participant. The IBAN identifier can consist of up to 34 alphanumeric
747
- characters and should be entered without whitespace.
748
- - ALIAS An alias is used as reference to a participant. The alias should be
749
- created in the FSP as an alternative reference to an account owner.
750
- Another example of an alias is a username in the FSP system.
751
- The ALIAS identifier can be in any format. It is also possible to use the
752
- PartySubIdOrType element for identifying an account under an Alias defined
753
- by the PartyIdentifier.
754
- - CONSENT - TBD
755
- - THIRD_PARTY_LINK - TBD
756
- enum:
757
- - MSISDN
758
- - EMAIL
759
- - PERSONAL_ID
760
- - BUSINESS
761
- - DEVICE
762
- - ACCOUNT_ID
763
- - IBAN
764
- - ALIAS
765
- - CONSENT
766
- - THIRD_PARTY_LINK
767
- example: PERSONAL_ID
768
- title: PartyIdType
769
- type: string
770
- PartyIdentifier:
771
- description: Identifier of the Party.
772
- example: '16135551212'
773
- maxLength: 128
774
- minLength: 1
775
- title: PartyIdentifier
776
- type: string
777
- PartyName:
778
- description: Name of the Party. Could be a real name or a nickname.
779
- maxLength: 128
780
- minLength: 1
781
- title: PartyName
782
- type: string
783
- PartyPersonalInfo:
784
- description: Data model for the complex type PartyPersonalInfo.
785
- properties:
786
- complexName:
787
- $ref: '#/components/schemas/PartyComplexName'
788
- dateOfBirth:
789
- $ref: '#/components/schemas/DateOfBirth'
790
- title: PartyPersonalInfo
791
- type: object
792
- PartySubIdOrType:
793
- description: Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType.
794
- maxLength: 128
795
- minLength: 1
796
- title: PartySubIdOrType
797
- type: string
798
578
  amountCurrency:
799
579
  description: Object containing Amount and Currency of the transfer.
800
580
  properties:
@@ -1085,13 +865,10 @@ components:
1085
865
  properties:
1086
866
  errorCode:
1087
867
  $ref: '#/components/schemas/errorCode'
1088
- description: Specific error number.
1089
868
  errorDescription:
1090
869
  $ref: '#/components/schemas/errorDescription'
1091
- description: Error description string.
1092
870
  extensionList:
1093
871
  $ref: '#/components/schemas/extensionListComplex'
1094
- description: Optional list of extensions, specific to deployment.
1095
872
  required:
1096
873
  - errorCode
1097
874
  - errorDescription
@@ -1156,15 +933,10 @@ components:
1156
933
  properties:
1157
934
  completedTimestamp:
1158
935
  $ref: '#/components/schemas/timestamp'
1159
- description: Time and date when the transaction was completed.
1160
- example: '2020-05-19T08:38:08.699-04:00'
1161
936
  extensionList:
1162
937
  $ref: '#/components/schemas/extensionList'
1163
- description: Optional extension, specific to deployment.
1164
938
  transferState:
1165
939
  $ref: '#/components/schemas/transferState'
1166
- description: State of the transfer.
1167
- example: COMMITTED
1168
940
  required:
1169
941
  - completedTimestamp
1170
942
  - transferState
@@ -1179,7 +951,7 @@ components:
1179
951
  initiatedTimestamp:
1180
952
  $ref: '#/components/schemas/timestamp'
1181
953
  lastError:
1182
- $ref: '#/components/schemas/transferError'
954
+ $ref: '../components/schemas/transferError.yaml'
1183
955
  prepare:
1184
956
  properties:
1185
957
  body:
@@ -1253,33 +1025,21 @@ components:
1253
1025
  maxLength: 128
1254
1026
  minLength: 1
1255
1027
  type: string
1256
- ilpFulfilment:
1257
- description: Fulfilment that must be attached to the transfer by the Payee.
1258
- example: WLctttbu2HvTsa1XWvUoGRcQozHsqeu9Ahl2JW9Bsu8
1259
- maxLength: 48
1260
- pattern: ^[A-Za-z0-9-_]{43}$
1261
- title: ilpFulfilment
1262
- type: string
1263
1028
  ilpPacketData:
1264
1029
  description: Object containing transfer object.
1265
1030
  properties:
1266
1031
  amount:
1267
1032
  $ref: '#/components/schemas/amountCurrency'
1268
- description: Amount and currency of the transaction
1269
1033
  payee:
1270
- $ref: '#/components/schemas/Party'
1271
- description: Information about the Payee in the proposed financial transaction.
1034
+ $ref: '../components/schemas/Party.yaml'
1272
1035
  payer:
1273
- $ref: '#/components/schemas/Party'
1274
- description: Information about the Payer in the proposed financial transaction.
1036
+ $ref: '../components/schemas/Party.yaml'
1275
1037
  quoteId:
1276
1038
  $ref: '#/components/schemas/quoteId'
1277
1039
  transactionId:
1278
1040
  $ref: '#/components/schemas/transactionId'
1279
- description: Identifier for the transaction, decided by the Payer FSP during the creation of the quote.
1280
1041
  transactionType:
1281
1042
  $ref: '#/components/schemas/transactionTypeObject'
1282
- description: Information about type of transaction and initiator.
1283
1043
  required:
1284
1044
  - quoteId
1285
1045
  - transactionId
@@ -1308,11 +1068,6 @@ components:
1308
1068
  description: The API data type Longitude is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons.
1309
1069
  pattern: ^(\+|-)?(?:180(?:(?:\.0{1,6})?)|(?:[0-9]|[1-9][0-9]|1[0-7][0-9])(?:(?:\.[0-9]{1,6})?))$
1310
1070
  type: string
1311
- mojaloopError:
1312
- properties:
1313
- errorInformation:
1314
- $ref: '#/components/schemas/errorInformation'
1315
- type: object
1316
1071
  money:
1317
1072
  pattern: ^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$
1318
1073
  type: string
@@ -1345,34 +1100,26 @@ components:
1345
1100
  properties:
1346
1101
  amount:
1347
1102
  $ref: '#/components/schemas/money'
1348
- description: Depending on `amountType`. If SEND - The amount the Payer would like to send, that is, the amount that should be withdrawn from the Payer account including any fees. The amount is updated by each participating entity in the transaction. If RECEIVE - The amount the Payee should receive, that is, the amount that should be sent to the receiver exclusive any fees. The amount is not updated by any of the participating entities.
1349
1103
  amountType:
1350
1104
  $ref: '#/components/schemas/amountType'
1351
- description: SEND for send amount, RECEIVE for receive amount.
1352
1105
  currency:
1353
1106
  $ref: '#/components/schemas/currency'
1354
1107
  expiration:
1355
1108
  $ref: '#/components/schemas/timestamp'
1356
- description: An optional deadline for responding to the quote request.
1357
1109
  extensionList:
1358
1110
  $ref: '#/components/schemas/extensionList'
1359
1111
  feesAmount:
1360
1112
  $ref: '#/components/schemas/money'
1361
- description: The fees in the transaction. The fees element should be empty if fees should be non-disclosed. The fees element should be non-empty if fees should be disclosed.
1362
1113
  feesCurrency:
1363
1114
  $ref: '#/components/schemas/currency'
1364
1115
  from:
1365
1116
  $ref: '#/components/schemas/transferParty'
1366
- description: Information about the Payer in the proposed financial transaction.
1367
1117
  geoCode:
1368
1118
  $ref: '#/components/schemas/geoCode'
1369
- description: Longitude and Latitude of the initiating party. Can be used to detect fraud.
1370
1119
  initiator:
1371
1120
  $ref: '#/components/schemas/initiator'
1372
- description: Specifies if the initiator of the transfer is the Payer or Payee.
1373
1121
  initiatorType:
1374
1122
  $ref: '#/components/schemas/initiatorType'
1375
- description: Specifies the type of the transaction initiator.
1376
1123
  note:
1377
1124
  description: An optional note associated with the requested transfer.
1378
1125
  maxLength: 128
@@ -1381,16 +1128,13 @@ components:
1381
1128
  quoteId:
1382
1129
  $ref: '#/components/schemas/quoteId'
1383
1130
  subScenario:
1384
- $ref: '#/components/schemas/transactionSubScenario'
1131
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
1385
1132
  to:
1386
1133
  $ref: '#/components/schemas/transferParty'
1387
- description: Information about the Payee in the proposed financial transaction.
1388
1134
  transactionId:
1389
1135
  $ref: '#/components/schemas/transactionId'
1390
- description: Identifier for the transaction, decided by the Payer FSP during the creation of the quote.
1391
1136
  transactionType:
1392
1137
  $ref: '#/components/schemas/transactionType'
1393
- description: Type of transaction for which the quote is requested.
1394
1138
  required:
1395
1139
  - quoteId
1396
1140
  - transactionId
@@ -1408,42 +1152,30 @@ components:
1408
1152
  properties:
1409
1153
  expiration:
1410
1154
  $ref: '#/components/schemas/timestamp'
1411
- description: Timestamp specifying the validity period of the quotation.
1412
1155
  extensionList:
1413
1156
  $ref: '#/components/schemas/extensionList'
1414
1157
  geoCode:
1415
1158
  $ref: '#/components/schemas/geoCode'
1416
- description: Longitude and Latitude of the Payee. Can be used to detect fraud.
1417
1159
  payeeFspCommissionAmount:
1418
1160
  $ref: '#/components/schemas/money'
1419
- description: Transaction commission from the Payee FSP.
1420
1161
  payeeFspCommissionAmountCurrency:
1421
1162
  $ref: '#/components/schemas/currency'
1422
- description: Currency of the `payeeFspCommissionAmount`.
1423
1163
  payeeFspFeeAmount:
1424
1164
  $ref: '#/components/schemas/money'
1425
- description: Payee FSP’s part of the transaction fee.
1426
1165
  payeeFspFeeAmountCurrency:
1427
1166
  $ref: '#/components/schemas/currency'
1428
- description: The currency of the `payeeFspFeeAmount`.
1429
1167
  payeeReceiveAmount:
1430
1168
  $ref: '#/components/schemas/money'
1431
- description: The amount that the Payee should receive in the end-to-end transaction. Optional as the Payee FSP might not want to disclose any optional Payee fees.
1432
1169
  payeeReceiveAmountCurrency:
1433
1170
  $ref: '#/components/schemas/currency'
1434
- description: The currency of the `payeeReceiveAmount`.
1435
1171
  quoteId:
1436
1172
  $ref: '#/components/schemas/quoteId'
1437
- description: ID of the quote that this response relates to.
1438
1173
  transactionId:
1439
1174
  $ref: '#/components/schemas/transactionId'
1440
- description: Identifier for the transaction, decided by the Payer FSP during the creation of the quote.
1441
1175
  transferAmount:
1442
1176
  $ref: '#/components/schemas/money'
1443
- description: The amount of money that the Payer FSP should transfer to the Payee FSP.
1444
1177
  transferAmountCurrency:
1445
1178
  $ref: '#/components/schemas/currency'
1446
- description: The currency of the `transferAmount`.
1447
1179
  required:
1448
1180
  - quoteId
1449
1181
  - transactionId
@@ -1491,7 +1223,7 @@ components:
1491
1223
  transactionType:
1492
1224
  $ref: '#/components/schemas/transactionType'
1493
1225
  subScenario:
1494
- $ref: '#/components/schemas/transactionSubScenario'
1226
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
1495
1227
  required:
1496
1228
  - transactionRequestId
1497
1229
  - to
@@ -1543,11 +1275,10 @@ components:
1543
1275
  $ref: '#/components/schemas/initiator'
1544
1276
  initiatorType:
1545
1277
  $ref: '#/components/schemas/initiatorType'
1546
- description: Specifies the type of the transaction initiator.
1547
1278
  scenario:
1548
1279
  $ref: '#/components/schemas/scenario'
1549
1280
  subScenario:
1550
- $ref: '#/components/schemas/transactionSubScenario'
1281
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
1551
1282
  required:
1552
1283
  - scenario
1553
1284
  - initiator
@@ -1572,7 +1303,7 @@ components:
1572
1303
  maxLength: 128
1573
1304
  type: string
1574
1305
  subScenario:
1575
- $ref: '#/components/schemas/transactionSubScenario'
1306
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
1576
1307
  timestamp:
1577
1308
  $ref: '#/components/schemas/timestamp'
1578
1309
  to:
@@ -1592,16 +1323,6 @@ components:
1592
1323
  - transactionType
1593
1324
  - timestamp
1594
1325
  type: object
1595
- transferError:
1596
- description: This object represents a Mojaloop API error received at any time during the transfer process.
1597
- properties:
1598
- httpStatusCode:
1599
- description: The HTTP status code returned to the caller. This is the same as the actual HTTP status code returned with the response.
1600
- type: integer
1601
- mojaloopError:
1602
- $ref: '#/components/schemas/mojaloopError'
1603
- 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.
1604
- type: object
1605
1326
  transferId:
1606
1327
  description: A Mojaloop API transfer identifier (UUID).
1607
1328
  pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
@@ -1668,7 +1389,7 @@ components:
1668
1389
  quoteRequestExtensions:
1669
1390
  $ref: '#/components/schemas/extensionList'
1670
1391
  subScenario:
1671
- $ref: '#/components/schemas/transactionSubScenario'
1392
+ $ref: '../components/schemas/TransactionSubScenario.yaml'
1672
1393
  to:
1673
1394
  $ref: '#/components/schemas/transferParty'
1674
1395
  transactionType:
@@ -1690,18 +1411,13 @@ components:
1690
1411
  properties:
1691
1412
  completedTimestamp:
1692
1413
  $ref: '#/components/schemas/timestamp'
1693
- description: Completed timestamp from the DFSP backend, used for testing purposes to inject a given completed timestamp via a rule.
1694
- example: '2020-05-19T08:38:08.699-04:00'
1695
1414
  fulfilment:
1696
- $ref: '#/components/schemas/ilpFulfilment'
1697
- description: Fulfilment from the DFSP backend, used for testing purposes to inject an invalid fulfilment via a rule.
1415
+ $ref: '../components/schemas/IlpFulfilment.yaml'
1698
1416
  homeTransactionId:
1699
1417
  description: Transaction ID from the DFSP backend, used to reconcile transactions between the Switch and DFSP backend systems.
1700
1418
  type: string
1701
1419
  transferState:
1702
1420
  $ref: '#/components/schemas/transferState'
1703
- description: Transfer state from the DFSP backend, used for testing purposes to inject an desired transfer state via a rule.
1704
- example: ABORTED
1705
1421
  required:
1706
1422
  - homeTransactionId
1707
1423
  type: object
@@ -1,11 +1,6 @@
1
1
  type: object
2
2
  required:
3
3
  - homeTransactionId
4
- - transferId
5
- - to
6
- - amountType
7
- - currency
8
- - amount
9
4
  properties:
10
5
  transferId:
11
6
  $ref: ./CorrelationId.yaml
@@ -32,7 +27,7 @@ properties:
32
27
  quoteId:
33
28
  $ref: ./CorrelationId.yaml
34
29
  quoteResponse:
35
- $ref: ./QuotesIDPutResponse.yaml
30
+ type: object
36
31
  fulfil:
37
32
  $ref: ./TransfersIDPutResponse.yaml
38
33
  quoteExtensions:
@@ -22,10 +22,12 @@ info:
22
22
  paths:
23
23
  /:
24
24
  $ref: paths.yaml
25
- /transfers:
26
- $ref: paths/transfers.yaml
27
- /transfers/{transferId}:
28
- $ref: paths/transfers_transferId.yaml
25
+ /accounts:
26
+ $ref: paths/accounts.yaml
27
+ /bulkQuotes:
28
+ $ref: paths/bulkQuotes.yaml
29
+ /bulkQuotes/{bulkQuoteId}:
30
+ $ref: paths/bulkQuotes_bulkQuoteId.yaml
29
31
  /bulkTransactions:
30
32
  $ref: paths/bulkTransactions.yaml
31
33
  /bulkTransactions/{bulkTransactionId}:
@@ -34,23 +36,21 @@ paths:
34
36
  $ref: paths/bulkTransfers.yaml
35
37
  /bulkTransfers/{bulkTransferId}:
36
38
  $ref: paths/bulkTransfers_bulkTransferId.yaml
37
- /bulkQuotes:
38
- $ref: paths/bulkQuotes.yaml
39
- /bulkQuotes/{bulkQuoteId}:
40
- $ref: paths/bulkQuotes_bulkQuoteId.yaml
41
- /requestToPay:
42
- $ref: paths/requestToPay.yaml
43
- /requestToPayTransfer:
44
- $ref: paths/requestToPayTransfer.yaml
45
- /requestToPayTransfer/{requestToPayTransactionId}:
46
- $ref: paths/requestToPayTransfer_requestToPayTransactionId.yaml
47
- /accounts:
48
- $ref: paths/accounts.yaml
49
39
  /parties/{Type}/{ID}:
50
40
  $ref: paths/parties_Type_ID.yaml
51
41
  /parties/{Type}/{ID}/{SubId}:
52
42
  $ref: paths/parties_Type_ID_SubId.yaml
53
43
  /quotes:
54
44
  $ref: paths/quotes.yaml
45
+ /requestToPay:
46
+ $ref: paths/requestToPay.yaml
47
+ /requestToPayTransfer:
48
+ $ref: paths/requestToPayTransfer.yaml
49
+ /requestToPayTransfer/{requestToPayTransactionId}:
50
+ $ref: paths/requestToPayTransfer_requestToPayTransactionId.yaml
55
51
  /simpleTransfers:
56
52
  $ref: paths/simpleTransfers.yaml
53
+ /transfers:
54
+ $ref: paths/transfers.yaml
55
+ /transfers/{transferId}:
56
+ $ref: paths/transfers_transferId.yaml