Guest User

Untitled

a guest
Jun 26th, 2019
308
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 194.92 KB | None | 0 0
  1. {
  2. "openapi": "3.0.1",
  3. "info": {
  4. "title": "BACAR Open API",
  5. "version": "1.3 Dec 20th 2018",
  6. "description": "# Summary\nThis document provides the specification of Banco Carregosa's Open API.\n\nThe PSD2 section follows the 1.3 release of the Berlin Group XS2A specifications, containing the REST-API definitions for requests from PISP's.\n\nBanco Carregosa only supports the Redirect SCA Approach.\n\nIf there is a name field \"Accept\", \"Content-Type\" or \"Authorization\" in the \"header\", the parameter definition SHALL be ignored.\n \nThe element \"Accept\" will not be defined in this file at any place.\n \nThe elements \"Content-Type\" and \"Authorization\" are implicitly defined by the OpenApi tags \"content\" and \"security\".\n \n## General Remarks on Data Types\n\nThe PSD2 API supports at least the following characters\n\na b c d e f g h i j k l m n o p q r s t u v w x y z\n\nA B C D E F G H I J K L M N O P Q R S T U V W X Y Z\n\n0 1 2 3 4 5 6 7 8 9\n\n/ - ? : ( ) . , ' +\n\nSpace\n\n## Important Notes\n\nBanco Carregosa has a multi-currency and sub-account structure.\nInformation consents are granted for an account identified by an IBAN.\n\n\nThis API extends the Berlin Group XS2A in regards to internal transfers according.\n\nFund-Confirmations should be accessed through the Account Information Service with a valid consent and accountId.\n",
  7. "license": {
  8. "name": "Creative Commons Attribution 4.0 International Public License",
  9. "url": "https://creativecommons.org/licenses/by/4.0/"
  10. },
  11. "contact": {
  12. "name": "Banco Carregosa SA",
  13. "url": "https://www.bancocarregosa.com",
  14. "email": "geral@bancocarregosa.com"
  15. }
  16. },
  17. "externalDocs": {
  18. "description": "Full Documentation of NextGenPSD2 Access to Account Interoperability Framework\n(General Introduction Paper, Operational Rules, Implementation Guidelines)\n",
  19. "url": "https://www.berlin-group.org/nextgenpsd2-downloads"
  20. },
  21. "servers": [
  22. {
  23. "url": "https://api.testbank.com/psd2",
  24. "description": "PSD2 server"
  25. },
  26. {
  27. "url": "https://test-api.testbank.com/psd2",
  28. "description": "Optional PSD2 test server"
  29. }
  30. ],
  31. "paths": {
  32. "/V2/accounts": {
  33. "get": {
  34. "summary": "Read Account List",
  35. "description": "Read the identifiers of the available payment accounts.\n\nBalances and transactions require an explicit request to these account references.\n\nIt is assumed that a consent of the PSU to this access is already given and stored on the ASPSP system. \nThe addressed list of accounts depends then on the PSU ID and the stored consent addressed by consentId.\n\nReturns all identifiers of the accounts, to which an account access has been granted to through \nthe /consents endpoint by the PSU. \nIn addition, relevant information about the accounts and hyperlinks to corresponding account \ninformation resources are provided if a related consent has been already granted.\n",
  36. "operationId": "getAccountList",
  37. "tags": [
  38. "Account Information Service (AIS)"
  39. ],
  40. "security": [
  41. {},
  42. {
  43. "BearerAuthOAuth": []
  44. }
  45. ],
  46. "parameters": [
  47. {
  48. "$ref": "#/components/parameters/withBalanceQuery"
  49. },
  50. {
  51. "$ref": "#/components/parameters/X-Request-ID"
  52. },
  53. {
  54. "$ref": "#/components/parameters/Digest"
  55. },
  56. {
  57. "$ref": "#/components/parameters/Signature"
  58. },
  59. {
  60. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  61. },
  62. {
  63. "$ref": "#/components/parameters/consentId_HEADER_mandatory"
  64. },
  65. {
  66. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  67. },
  68. {
  69. "$ref": "#/components/parameters/PSU-IP-Port"
  70. },
  71. {
  72. "$ref": "#/components/parameters/PSU-Accept"
  73. },
  74. {
  75. "$ref": "#/components/parameters/PSU-Accept-Charset"
  76. },
  77. {
  78. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  79. },
  80. {
  81. "$ref": "#/components/parameters/PSU-Accept-Language"
  82. },
  83. {
  84. "$ref": "#/components/parameters/PSU-User-Agent"
  85. },
  86. {
  87. "$ref": "#/components/parameters/PSU-Http-Method"
  88. },
  89. {
  90. "$ref": "#/components/parameters/PSU-Device-ID"
  91. },
  92. {
  93. "$ref": "#/components/parameters/PSU-Geo-Location"
  94. }
  95. ],
  96. "responses": {
  97. "200": {
  98. "$ref": "#/components/responses/OK_200_AccountList"
  99. },
  100. "400": {
  101. "$ref": "#/components/responses/BAD_REQUEST_400"
  102. },
  103. "401": {
  104. "$ref": "#/components/responses/UNAUTHORIZED_401"
  105. },
  106. "403": {
  107. "$ref": "#/components/responses/FORBIDDEN_403"
  108. },
  109. "404": {
  110. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  111. },
  112. "405": {
  113. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  114. },
  115. "408": {
  116. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  117. },
  118. "429": {
  119. "$ref": "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
  120. },
  121. "500": {
  122. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  123. },
  124. "503": {
  125. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  126. }
  127. }
  128. }
  129. },
  130. "/V2/accounts/{accountId}": {
  131. "get": {
  132. "summary": "Read Account Details",
  133. "description": "Reads details about an account, with balances where required. \nIt is assumed that a consent of the PSU to \nthis access is already given and stored on the ASPSP system. \nThe addressed details of this account depends then on the stored consent addressed by consentId, \nrespectively the OAuth2 access token.\n\n**NOTE:** The accountId can represent a multicurrency account. \nIn this case the currency code is set to \"XXX\".\n\nGive detailed information about the addressed account.\n\nGive detailed information about the addressed account together with balance information\n",
  134. "operationId": "readAccountDetails",
  135. "tags": [
  136. "Account Information Service (AIS)"
  137. ],
  138. "security": [
  139. {},
  140. {
  141. "BearerAuthOAuth": []
  142. }
  143. ],
  144. "parameters": [
  145. {
  146. "$ref": "#/components/parameters/accountId"
  147. },
  148. {
  149. "$ref": "#/components/parameters/withBalanceQuery"
  150. },
  151. {
  152. "$ref": "#/components/parameters/X-Request-ID"
  153. },
  154. {
  155. "$ref": "#/components/parameters/Digest"
  156. },
  157. {
  158. "$ref": "#/components/parameters/Signature"
  159. },
  160. {
  161. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  162. },
  163. {
  164. "$ref": "#/components/parameters/consentId_HEADER_mandatory"
  165. },
  166. {
  167. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  168. },
  169. {
  170. "$ref": "#/components/parameters/PSU-IP-Port"
  171. },
  172. {
  173. "$ref": "#/components/parameters/PSU-Accept"
  174. },
  175. {
  176. "$ref": "#/components/parameters/PSU-Accept-Charset"
  177. },
  178. {
  179. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  180. },
  181. {
  182. "$ref": "#/components/parameters/PSU-Accept-Language"
  183. },
  184. {
  185. "$ref": "#/components/parameters/PSU-User-Agent"
  186. },
  187. {
  188. "$ref": "#/components/parameters/PSU-Http-Method"
  189. },
  190. {
  191. "$ref": "#/components/parameters/PSU-Device-ID"
  192. },
  193. {
  194. "$ref": "#/components/parameters/PSU-Geo-Location"
  195. }
  196. ],
  197. "responses": {
  198. "200": {
  199. "$ref": "#/components/responses/OK_200_AccountList"
  200. },
  201. "400": {
  202. "$ref": "#/components/responses/BAD_REQUEST_400"
  203. },
  204. "401": {
  205. "$ref": "#/components/responses/UNAUTHORIZED_401"
  206. },
  207. "403": {
  208. "$ref": "#/components/responses/FORBIDDEN_403"
  209. },
  210. "404": {
  211. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  212. },
  213. "405": {
  214. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  215. },
  216. "408": {
  217. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  218. },
  219. "429": {
  220. "$ref": "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
  221. },
  222. "500": {
  223. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  224. },
  225. "503": {
  226. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  227. }
  228. }
  229. }
  230. },
  231. "/V2/accounts/{accountId}/balances": {
  232. "get": {
  233. "summary": "Read Balance",
  234. "description": "Reads account data from a given account addressed by \"accountId\". \n\ninformation might be logged on intermediary servers within the ASPSP sphere. \nThis accountId then can be retrieved by the \"GET Account List\" call.\n\nThe accountId is constant at least throughout the lifecycle of a given consent.\n\nBalances have been extended by including a subaccount reference.\n",
  235. "operationId": "getBalances",
  236. "tags": [
  237. "Account Information Service (AIS)"
  238. ],
  239. "security": [
  240. {},
  241. {
  242. "BearerAuthOAuth": []
  243. }
  244. ],
  245. "parameters": [
  246. {
  247. "$ref": "#/components/parameters/accountId"
  248. },
  249. {
  250. "$ref": "#/components/parameters/X-Request-ID"
  251. },
  252. {
  253. "$ref": "#/components/parameters/Digest"
  254. },
  255. {
  256. "$ref": "#/components/parameters/Signature"
  257. },
  258. {
  259. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  260. },
  261. {
  262. "$ref": "#/components/parameters/consentId_HEADER_mandatory"
  263. },
  264. {
  265. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  266. },
  267. {
  268. "$ref": "#/components/parameters/PSU-IP-Port"
  269. },
  270. {
  271. "$ref": "#/components/parameters/PSU-Accept"
  272. },
  273. {
  274. "$ref": "#/components/parameters/PSU-Accept-Charset"
  275. },
  276. {
  277. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  278. },
  279. {
  280. "$ref": "#/components/parameters/PSU-Accept-Language"
  281. },
  282. {
  283. "$ref": "#/components/parameters/PSU-User-Agent"
  284. },
  285. {
  286. "$ref": "#/components/parameters/PSU-Http-Method"
  287. },
  288. {
  289. "$ref": "#/components/parameters/PSU-Device-ID"
  290. },
  291. {
  292. "$ref": "#/components/parameters/PSU-Geo-Location"
  293. }
  294. ],
  295. "responses": {
  296. "200": {
  297. "$ref": "#/components/responses/OK_200_Balances"
  298. },
  299. "400": {
  300. "$ref": "#/components/responses/BAD_REQUEST_400"
  301. },
  302. "401": {
  303. "$ref": "#/components/responses/UNAUTHORIZED_401"
  304. },
  305. "403": {
  306. "$ref": "#/components/responses/FORBIDDEN_403"
  307. },
  308. "404": {
  309. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  310. },
  311. "405": {
  312. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  313. },
  314. "408": {
  315. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  316. },
  317. "429": {
  318. "$ref": "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
  319. },
  320. "500": {
  321. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  322. },
  323. "503": {
  324. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  325. }
  326. }
  327. }
  328. },
  329. "/V2/accounts/{accountId}/transactions/": {
  330. "get": {
  331. "summary": "Read transaction list of an account",
  332. "description": "Read transaction reports or transaction lists of a given account ddressed by \"accountId\", depending on the steering parameter \n\"bookingStatus\" together with balances.\n\nFor a given account, additional parameters are e.g. the attributes \"dateFrom\" and \"dateTo\". \nTransactions have been extended by including a subaccount reference.\n",
  333. "operationId": "getTransactionList",
  334. "tags": [
  335. "Account Information Service (AIS)"
  336. ],
  337. "security": [
  338. {},
  339. {
  340. "BearerAuthOAuth": []
  341. }
  342. ],
  343. "parameters": [
  344. {
  345. "$ref": "#/components/parameters/accountId"
  346. },
  347. {
  348. "$ref": "#/components/parameters/dateFrom"
  349. },
  350. {
  351. "$ref": "#/components/parameters/dateTo"
  352. },
  353. {
  354. "$ref": "#/components/parameters/entryReferenceFrom"
  355. },
  356. {
  357. "$ref": "#/components/parameters/bookingStatus"
  358. },
  359. {
  360. "$ref": "#/components/parameters/deltaList"
  361. },
  362. {
  363. "$ref": "#/components/parameters/withBalanceQuery"
  364. },
  365. {
  366. "$ref": "#/components/parameters/X-Request-ID"
  367. },
  368. {
  369. "$ref": "#/components/parameters/Digest"
  370. },
  371. {
  372. "$ref": "#/components/parameters/Signature"
  373. },
  374. {
  375. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  376. },
  377. {
  378. "$ref": "#/components/parameters/consentId_HEADER_mandatory"
  379. },
  380. {
  381. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  382. },
  383. {
  384. "$ref": "#/components/parameters/PSU-IP-Port"
  385. },
  386. {
  387. "$ref": "#/components/parameters/PSU-Accept"
  388. },
  389. {
  390. "$ref": "#/components/parameters/PSU-Accept-Charset"
  391. },
  392. {
  393. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  394. },
  395. {
  396. "$ref": "#/components/parameters/PSU-Accept-Language"
  397. },
  398. {
  399. "$ref": "#/components/parameters/PSU-User-Agent"
  400. },
  401. {
  402. "$ref": "#/components/parameters/PSU-Http-Method"
  403. },
  404. {
  405. "$ref": "#/components/parameters/PSU-Device-ID"
  406. },
  407. {
  408. "$ref": "#/components/parameters/PSU-Geo-Location"
  409. }
  410. ],
  411. "responses": {
  412. "200": {
  413. "$ref": "#/components/responses/OK_200_AccountsTransactions"
  414. },
  415. "400": {
  416. "$ref": "#/components/responses/BAD_REQUEST_400"
  417. },
  418. "401": {
  419. "$ref": "#/components/responses/UNAUTHORIZED_401"
  420. },
  421. "403": {
  422. "$ref": "#/components/responses/FORBIDDEN_403"
  423. },
  424. "404": {
  425. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  426. },
  427. "405": {
  428. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  429. },
  430. "408": {
  431. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  432. },
  433. "429": {
  434. "$ref": "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
  435. },
  436. "500": {
  437. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  438. },
  439. "503": {
  440. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  441. }
  442. }
  443. }
  444. },
  445. "/V2/accounts/{accountId}/transactions/{resourceId}": {
  446. "get": {
  447. "summary": "Read Transaction Details",
  448. "description": "Reads transaction details from a given transaction addressed by \"resourceId\" on a given account addressed by \"accountId\". \nThis call is only available on transactions as reported in a JSON format.\n\n**Remark:** Please note that the PATH might be already given in detail by the corresponding entry of the response of the \n\"Read Transaction List\" call within the _links subfield.\n",
  449. "operationId": "getTransactionDetails",
  450. "tags": [
  451. "Account Information Service (AIS)"
  452. ],
  453. "security": [
  454. {},
  455. {
  456. "BearerAuthOAuth": []
  457. }
  458. ],
  459. "parameters": [
  460. {
  461. "$ref": "#/components/parameters/accountId"
  462. },
  463. {
  464. "$ref": "#/components/parameters/resourceId"
  465. },
  466. {
  467. "$ref": "#/components/parameters/X-Request-ID"
  468. },
  469. {
  470. "$ref": "#/components/parameters/Digest"
  471. },
  472. {
  473. "$ref": "#/components/parameters/Signature"
  474. },
  475. {
  476. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  477. },
  478. {
  479. "$ref": "#/components/parameters/consentId_HEADER_mandatory"
  480. },
  481. {
  482. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  483. },
  484. {
  485. "$ref": "#/components/parameters/PSU-IP-Port"
  486. },
  487. {
  488. "$ref": "#/components/parameters/PSU-Accept"
  489. },
  490. {
  491. "$ref": "#/components/parameters/PSU-Accept-Charset"
  492. },
  493. {
  494. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  495. },
  496. {
  497. "$ref": "#/components/parameters/PSU-Accept-Language"
  498. },
  499. {
  500. "$ref": "#/components/parameters/PSU-User-Agent"
  501. },
  502. {
  503. "$ref": "#/components/parameters/PSU-Http-Method"
  504. },
  505. {
  506. "$ref": "#/components/parameters/PSU-Device-ID"
  507. },
  508. {
  509. "$ref": "#/components/parameters/PSU-Geo-Location"
  510. }
  511. ],
  512. "responses": {
  513. "200": {
  514. "$ref": "#/components/responses/OK_200_TransactionDetails"
  515. },
  516. "400": {
  517. "$ref": "#/components/responses/BAD_REQUEST_400"
  518. },
  519. "401": {
  520. "$ref": "#/components/responses/UNAUTHORIZED_401"
  521. },
  522. "403": {
  523. "$ref": "#/components/responses/FORBIDDEN_403"
  524. },
  525. "404": {
  526. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  527. },
  528. "405": {
  529. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  530. },
  531. "408": {
  532. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  533. },
  534. "429": {
  535. "$ref": "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
  536. },
  537. "500": {
  538. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  539. },
  540. "503": {
  541. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  542. }
  543. }
  544. }
  545. },
  546. "/V2/accounts/{accountId}/funds-confirmations": {
  547. "post": {
  548. "summary": "Confirmation of Funds Request",
  549. "description": "This request was placed under the account information service. It requires a valid consent for balance or transaction information on the selected account.",
  550. "operationId": "checkAvailabilityOfFunds",
  551. "tags": [
  552. "Account Information Service (AIS)"
  553. ],
  554. "parameters": [
  555. {
  556. "$ref": "#/components/parameters/accountId"
  557. },
  558. {
  559. "$ref": "#/components/parameters/X-Request-ID"
  560. },
  561. {
  562. "$ref": "#/components/parameters/consentId_HEADER_mandatory"
  563. },
  564. {
  565. "$ref": "#/components/parameters/Digest"
  566. },
  567. {
  568. "$ref": "#/components/parameters/Signature"
  569. },
  570. {
  571. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  572. }
  573. ],
  574. "requestBody": {
  575. "$ref": "#/components/requestBodies/confirmationOfFunds"
  576. },
  577. "responses": {
  578. "200": {
  579. "$ref": "#/components/responses/OK_200_ConfirmationOfFunds"
  580. },
  581. "400": {
  582. "$ref": "#/components/responses/BAD_REQUEST_400"
  583. },
  584. "401": {
  585. "$ref": "#/components/responses/UNAUTHORIZED_401"
  586. },
  587. "403": {
  588. "$ref": "#/components/responses/FORBIDDEN_403"
  589. },
  590. "404": {
  591. "$ref": "#/components/responses/NOT_FOUND_404_PIIS"
  592. },
  593. "405": {
  594. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  595. },
  596. "408": {
  597. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  598. },
  599. "500": {
  600. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  601. },
  602. "503": {
  603. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  604. }
  605. }
  606. }
  607. },
  608. "/V2/consents": {
  609. "post": {
  610. "summary": "Create consent",
  611. "description": "This method creates a consent resource, defining access rights to dedicated accounts of \na given PSU-ID. \n\n**Side Effects**\nWhen this Consent Request is a request where the \"recurringIndicator\" equals \"true\", \nand if it exists already a former consent for recurring access on account information \nfor the addressed PSU, then the former consent automatically expires as soon as the new \nconsent request is authorised by the PSU.\n\nAccepts a specific access on all psd2 related services for all psd2 accounts. \n",
  612. "operationId": "createConsent",
  613. "tags": [
  614. "Account Information Service (AIS)"
  615. ],
  616. "security": [
  617. {},
  618. {
  619. "BearerAuthOAuth": []
  620. }
  621. ],
  622. "parameters": [
  623. {
  624. "$ref": "#/components/parameters/X-Request-ID"
  625. },
  626. {
  627. "$ref": "#/components/parameters/Digest"
  628. },
  629. {
  630. "$ref": "#/components/parameters/Signature"
  631. },
  632. {
  633. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  634. },
  635. {
  636. "$ref": "#/components/parameters/PSU-ID"
  637. },
  638. {
  639. "$ref": "#/components/parameters/PSU-ID-Type"
  640. },
  641. {
  642. "$ref": "#/components/parameters/PSU-Corporate-ID"
  643. },
  644. {
  645. "$ref": "#/components/parameters/PSU-Corporate-ID-Type"
  646. },
  647. {
  648. "$ref": "#/components/parameters/TPP-Redirect-Preferred"
  649. },
  650. {
  651. "$ref": "#/components/parameters/TPP-Redirect-URI"
  652. },
  653. {
  654. "$ref": "#/components/parameters/TPP-Nok-Redirect-URI"
  655. },
  656. {
  657. "$ref": "#/components/parameters/TPP-Explicit-Authorisation-Preferred"
  658. },
  659. {
  660. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  661. },
  662. {
  663. "$ref": "#/components/parameters/PSU-IP-Port"
  664. },
  665. {
  666. "$ref": "#/components/parameters/PSU-Accept"
  667. },
  668. {
  669. "$ref": "#/components/parameters/PSU-Accept-Charset"
  670. },
  671. {
  672. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  673. },
  674. {
  675. "$ref": "#/components/parameters/PSU-Accept-Language"
  676. },
  677. {
  678. "$ref": "#/components/parameters/PSU-User-Agent"
  679. },
  680. {
  681. "$ref": "#/components/parameters/PSU-Http-Method"
  682. },
  683. {
  684. "$ref": "#/components/parameters/PSU-Device-ID"
  685. },
  686. {
  687. "$ref": "#/components/parameters/PSU-Geo-Location"
  688. }
  689. ],
  690. "requestBody": {
  691. "$ref": "#/components/requestBodies/consents"
  692. },
  693. "responses": {
  694. "201": {
  695. "$ref": "#/components/responses/CREATED_201_Consents"
  696. },
  697. "400": {
  698. "$ref": "#/components/responses/BAD_REQUEST_400"
  699. },
  700. "401": {
  701. "$ref": "#/components/responses/UNAUTHORIZED_401"
  702. },
  703. "403": {
  704. "$ref": "#/components/responses/FORBIDDEN_403"
  705. },
  706. "404": {
  707. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  708. },
  709. "405": {
  710. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  711. },
  712. "408": {
  713. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  714. },
  715. "500": {
  716. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  717. },
  718. "503": {
  719. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  720. }
  721. }
  722. }
  723. },
  724. "/V2/consents/{consentId}": {
  725. "get": {
  726. "summary": "Get Consent Request",
  727. "description": "Returns the content of an account information consent object. \nThis is returning the data for the TPP especially in cases, \nwhere the consent was directly managed between ASPSP and PSU e.g. in a re-direct SCA Approach.\n",
  728. "operationId": "getConsentInformation",
  729. "tags": [
  730. "Account Information Service (AIS)"
  731. ],
  732. "security": [
  733. {},
  734. {
  735. "BearerAuthOAuth": []
  736. }
  737. ],
  738. "parameters": [
  739. {
  740. "$ref": "#/components/parameters/consentId_PATH"
  741. },
  742. {
  743. "$ref": "#/components/parameters/X-Request-ID"
  744. },
  745. {
  746. "$ref": "#/components/parameters/Digest"
  747. },
  748. {
  749. "$ref": "#/components/parameters/Signature"
  750. },
  751. {
  752. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  753. },
  754. {
  755. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  756. },
  757. {
  758. "$ref": "#/components/parameters/PSU-IP-Port"
  759. },
  760. {
  761. "$ref": "#/components/parameters/PSU-Accept"
  762. },
  763. {
  764. "$ref": "#/components/parameters/PSU-Accept-Charset"
  765. },
  766. {
  767. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  768. },
  769. {
  770. "$ref": "#/components/parameters/PSU-Accept-Language"
  771. },
  772. {
  773. "$ref": "#/components/parameters/PSU-User-Agent"
  774. },
  775. {
  776. "$ref": "#/components/parameters/PSU-Http-Method"
  777. },
  778. {
  779. "$ref": "#/components/parameters/PSU-Device-ID"
  780. },
  781. {
  782. "$ref": "#/components/parameters/PSU-Geo-Location"
  783. }
  784. ],
  785. "responses": {
  786. "200": {
  787. "$ref": "#/components/responses/OK_200_ConsentInformation"
  788. },
  789. "400": {
  790. "$ref": "#/components/responses/BAD_REQUEST_400"
  791. },
  792. "401": {
  793. "$ref": "#/components/responses/UNAUTHORIZED_401"
  794. },
  795. "403": {
  796. "$ref": "#/components/responses/FORBIDDEN_403"
  797. },
  798. "404": {
  799. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  800. },
  801. "405": {
  802. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  803. },
  804. "408": {
  805. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  806. },
  807. "500": {
  808. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  809. },
  810. "503": {
  811. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  812. }
  813. }
  814. },
  815. "delete": {
  816. "summary": "Delete Consent",
  817. "description": "The TPP can delete an account information consent object if needed.",
  818. "operationId": "deleteConsent",
  819. "tags": [
  820. "Account Information Service (AIS)"
  821. ],
  822. "security": [
  823. {},
  824. {
  825. "BearerAuthOAuth": []
  826. }
  827. ],
  828. "parameters": [
  829. {
  830. "$ref": "#/components/parameters/consentId_PATH"
  831. },
  832. {
  833. "$ref": "#/components/parameters/X-Request-ID"
  834. },
  835. {
  836. "$ref": "#/components/parameters/Digest"
  837. },
  838. {
  839. "$ref": "#/components/parameters/Signature"
  840. },
  841. {
  842. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  843. },
  844. {
  845. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  846. },
  847. {
  848. "$ref": "#/components/parameters/PSU-IP-Port"
  849. },
  850. {
  851. "$ref": "#/components/parameters/PSU-Accept"
  852. },
  853. {
  854. "$ref": "#/components/parameters/PSU-Accept-Charset"
  855. },
  856. {
  857. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  858. },
  859. {
  860. "$ref": "#/components/parameters/PSU-Accept-Language"
  861. },
  862. {
  863. "$ref": "#/components/parameters/PSU-User-Agent"
  864. },
  865. {
  866. "$ref": "#/components/parameters/PSU-Http-Method"
  867. },
  868. {
  869. "$ref": "#/components/parameters/PSU-Device-ID"
  870. },
  871. {
  872. "$ref": "#/components/parameters/PSU-Geo-Location"
  873. }
  874. ],
  875. "responses": {
  876. "204": {
  877. "$ref": "#/components/responses/NO_CONTENT_204_Consents"
  878. },
  879. "400": {
  880. "$ref": "#/components/responses/BAD_REQUEST_400"
  881. },
  882. "401": {
  883. "$ref": "#/components/responses/UNAUTHORIZED_401"
  884. },
  885. "403": {
  886. "$ref": "#/components/responses/FORBIDDEN_403"
  887. },
  888. "404": {
  889. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  890. },
  891. "405": {
  892. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  893. },
  894. "408": {
  895. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  896. },
  897. "500": {
  898. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  899. },
  900. "503": {
  901. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  902. }
  903. }
  904. }
  905. },
  906. "/V2/consents/{consentId}/status": {
  907. "get": {
  908. "summary": "Consent status request",
  909. "description": "Read the status of an account information consent resource.",
  910. "operationId": "getConsentStatus",
  911. "tags": [
  912. "Account Information Service (AIS)"
  913. ],
  914. "security": [
  915. {},
  916. {
  917. "BearerAuthOAuth": []
  918. }
  919. ],
  920. "parameters": [
  921. {
  922. "$ref": "#/components/parameters/consentId_PATH"
  923. },
  924. {
  925. "$ref": "#/components/parameters/X-Request-ID"
  926. },
  927. {
  928. "$ref": "#/components/parameters/Digest"
  929. },
  930. {
  931. "$ref": "#/components/parameters/Signature"
  932. },
  933. {
  934. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  935. },
  936. {
  937. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  938. },
  939. {
  940. "$ref": "#/components/parameters/PSU-IP-Port"
  941. },
  942. {
  943. "$ref": "#/components/parameters/PSU-Accept"
  944. },
  945. {
  946. "$ref": "#/components/parameters/PSU-Accept-Charset"
  947. },
  948. {
  949. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  950. },
  951. {
  952. "$ref": "#/components/parameters/PSU-Accept-Language"
  953. },
  954. {
  955. "$ref": "#/components/parameters/PSU-User-Agent"
  956. },
  957. {
  958. "$ref": "#/components/parameters/PSU-Http-Method"
  959. },
  960. {
  961. "$ref": "#/components/parameters/PSU-Device-ID"
  962. },
  963. {
  964. "$ref": "#/components/parameters/PSU-Geo-Location"
  965. }
  966. ],
  967. "responses": {
  968. "200": {
  969. "$ref": "#/components/responses/OK_200_ConsentStatus"
  970. },
  971. "400": {
  972. "$ref": "#/components/responses/BAD_REQUEST_400"
  973. },
  974. "401": {
  975. "$ref": "#/components/responses/UNAUTHORIZED_401"
  976. },
  977. "403": {
  978. "$ref": "#/components/responses/FORBIDDEN_403"
  979. },
  980. "404": {
  981. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  982. },
  983. "405": {
  984. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  985. },
  986. "408": {
  987. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  988. },
  989. "500": {
  990. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  991. },
  992. "503": {
  993. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  994. }
  995. }
  996. }
  997. },
  998. "/V2/consents/{consentId}/authorisations": {
  999. "post": {
  1000. "summary": "Start the authorisation process for a consent",
  1001. "description": "Create an authorisation sub-resource and start the authorisation process of a consent. \nThe message might in addition transmit authentication and authorisation related data.\n\nhis method is iterated n times for a n times SCA authorisation in a \ncorporate context, each creating an own authorisation sub-endpoint for \nthe corresponding PSU authorising the consent.\n\nThe ASPSP might make the usage of this access method unnecessary, \nsince the related authorisation resource will be automatically created by \nthe ASPSP after the submission of the consent data with the first POST consents call.\n\nThe start authorisation process is a process which is needed for creating a new authorisation \nor cancellation sub-resource. \n\nThis applies in the following scenarios:\n\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding Payment \n Initiation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be \n uploaded by using the extended forms.\n * 'startAuthorisationWithPsuIdentfication', \n * 'startAuthorisationWithPsuAuthentication' #TODO\n * 'startAuthorisationWithAuthentciationMethodSelection' \n * The related payment initiation cannot yet be executed since a multilevel SCA is mandated.\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding \n Payment Cancellation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded \n by using the extended forms as indicated above.\n * The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for \n executing the cancellation.\n * The signing basket needs to be authorised yet.\n",
  1002. "operationId": "startConsentAuthorisation",
  1003. "tags": [
  1004. "Account Information Service (AIS)"
  1005. ],
  1006. "security": [
  1007. {},
  1008. {
  1009. "BearerAuthOAuth": []
  1010. }
  1011. ],
  1012. "parameters": [
  1013. {
  1014. "$ref": "#/components/parameters/consentId_PATH"
  1015. },
  1016. {
  1017. "$ref": "#/components/parameters/X-Request-ID"
  1018. },
  1019. {
  1020. "$ref": "#/components/parameters/Digest"
  1021. },
  1022. {
  1023. "$ref": "#/components/parameters/Signature"
  1024. },
  1025. {
  1026. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1027. },
  1028. {
  1029. "$ref": "#/components/parameters/PSU-ID"
  1030. },
  1031. {
  1032. "$ref": "#/components/parameters/PSU-ID-Type"
  1033. },
  1034. {
  1035. "$ref": "#/components/parameters/PSU-Corporate-ID"
  1036. },
  1037. {
  1038. "$ref": "#/components/parameters/PSU-Corporate-ID-Type"
  1039. },
  1040. {
  1041. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  1042. },
  1043. {
  1044. "$ref": "#/components/parameters/PSU-IP-Port"
  1045. },
  1046. {
  1047. "$ref": "#/components/parameters/PSU-Accept"
  1048. },
  1049. {
  1050. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1051. },
  1052. {
  1053. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1054. },
  1055. {
  1056. "$ref": "#/components/parameters/PSU-Accept-Language"
  1057. },
  1058. {
  1059. "$ref": "#/components/parameters/PSU-User-Agent"
  1060. },
  1061. {
  1062. "$ref": "#/components/parameters/PSU-Http-Method"
  1063. },
  1064. {
  1065. "$ref": "#/components/parameters/PSU-Device-ID"
  1066. },
  1067. {
  1068. "$ref": "#/components/parameters/PSU-Geo-Location"
  1069. }
  1070. ],
  1071. "responses": {
  1072. "201": {
  1073. "$ref": "#/components/responses/CREATED_201_StartScaProcess"
  1074. },
  1075. "400": {
  1076. "$ref": "#/components/responses/BAD_REQUEST_400"
  1077. },
  1078. "401": {
  1079. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1080. },
  1081. "403": {
  1082. "$ref": "#/components/responses/FORBIDDEN_403"
  1083. },
  1084. "404": {
  1085. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  1086. },
  1087. "405": {
  1088. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1089. },
  1090. "408": {
  1091. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1092. },
  1093. "429": {
  1094. "$ref": "#/components/responses/TOO_MANY_REQUESTS_429_AIS"
  1095. },
  1096. "500": {
  1097. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1098. },
  1099. "503": {
  1100. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1101. }
  1102. }
  1103. },
  1104. "get": {
  1105. "summary": "Get Consent Authorisation Sub-Resources Request",
  1106. "description": "Return a list of all authorisation subresources IDs which have been created.\n\nThis function returns an array of hyperlinks to all generated authorisation sub-resources.\n",
  1107. "operationId": "getConsentAuthorisation",
  1108. "tags": [
  1109. "Account Information Service (AIS)"
  1110. ],
  1111. "security": [
  1112. {},
  1113. {
  1114. "BearerAuthOAuth": []
  1115. }
  1116. ],
  1117. "parameters": [
  1118. {
  1119. "$ref": "#/components/parameters/consentId_PATH"
  1120. },
  1121. {
  1122. "$ref": "#/components/parameters/X-Request-ID"
  1123. },
  1124. {
  1125. "$ref": "#/components/parameters/Digest"
  1126. },
  1127. {
  1128. "$ref": "#/components/parameters/Signature"
  1129. },
  1130. {
  1131. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1132. },
  1133. {
  1134. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  1135. },
  1136. {
  1137. "$ref": "#/components/parameters/PSU-IP-Port"
  1138. },
  1139. {
  1140. "$ref": "#/components/parameters/PSU-Accept"
  1141. },
  1142. {
  1143. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1144. },
  1145. {
  1146. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1147. },
  1148. {
  1149. "$ref": "#/components/parameters/PSU-Accept-Language"
  1150. },
  1151. {
  1152. "$ref": "#/components/parameters/PSU-User-Agent"
  1153. },
  1154. {
  1155. "$ref": "#/components/parameters/PSU-Http-Method"
  1156. },
  1157. {
  1158. "$ref": "#/components/parameters/PSU-Device-ID"
  1159. },
  1160. {
  1161. "$ref": "#/components/parameters/PSU-Geo-Location"
  1162. }
  1163. ],
  1164. "responses": {
  1165. "200": {
  1166. "$ref": "#/components/responses/OK_200_Authorisations"
  1167. },
  1168. "400": {
  1169. "$ref": "#/components/responses/BAD_REQUEST_400"
  1170. },
  1171. "401": {
  1172. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1173. },
  1174. "403": {
  1175. "$ref": "#/components/responses/FORBIDDEN_403"
  1176. },
  1177. "404": {
  1178. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  1179. },
  1180. "405": {
  1181. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1182. },
  1183. "408": {
  1184. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1185. },
  1186. "500": {
  1187. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1188. },
  1189. "503": {
  1190. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1191. }
  1192. }
  1193. }
  1194. },
  1195. "/V2/consents/{consentId}/authorisations/{authorisationId}": {
  1196. "get": {
  1197. "summary": "Read the SCA status of the consent authorisation.",
  1198. "description": "This method returns the SCA status of a consent initiation's authorisation sub-resource.\n",
  1199. "operationId": "getConsentScaStatus",
  1200. "tags": [
  1201. "Account Information Service (AIS)"
  1202. ],
  1203. "security": [
  1204. {},
  1205. {
  1206. "BearerAuthOAuth": []
  1207. }
  1208. ],
  1209. "parameters": [
  1210. {
  1211. "$ref": "#/components/parameters/consentId_PATH"
  1212. },
  1213. {
  1214. "$ref": "#/components/parameters/authorisationId"
  1215. },
  1216. {
  1217. "$ref": "#/components/parameters/X-Request-ID"
  1218. },
  1219. {
  1220. "$ref": "#/components/parameters/Digest"
  1221. },
  1222. {
  1223. "$ref": "#/components/parameters/Signature"
  1224. },
  1225. {
  1226. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1227. },
  1228. {
  1229. "$ref": "#/components/parameters/PSU-IP-Address_conditionalForAis"
  1230. },
  1231. {
  1232. "$ref": "#/components/parameters/PSU-IP-Port"
  1233. },
  1234. {
  1235. "$ref": "#/components/parameters/PSU-Accept"
  1236. },
  1237. {
  1238. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1239. },
  1240. {
  1241. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1242. },
  1243. {
  1244. "$ref": "#/components/parameters/PSU-Accept-Language"
  1245. },
  1246. {
  1247. "$ref": "#/components/parameters/PSU-User-Agent"
  1248. },
  1249. {
  1250. "$ref": "#/components/parameters/PSU-Http-Method"
  1251. },
  1252. {
  1253. "$ref": "#/components/parameters/PSU-Device-ID"
  1254. },
  1255. {
  1256. "$ref": "#/components/parameters/PSU-Geo-Location"
  1257. }
  1258. ],
  1259. "responses": {
  1260. "200": {
  1261. "$ref": "#/components/responses/OK_200_ScaStatus"
  1262. },
  1263. "400": {
  1264. "$ref": "#/components/responses/BAD_REQUEST_400"
  1265. },
  1266. "401": {
  1267. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1268. },
  1269. "403": {
  1270. "$ref": "#/components/responses/FORBIDDEN_403"
  1271. },
  1272. "404": {
  1273. "$ref": "#/components/responses/NOT_FOUND_404_AIS"
  1274. },
  1275. "405": {
  1276. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1277. },
  1278. "408": {
  1279. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1280. },
  1281. "500": {
  1282. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1283. },
  1284. "503": {
  1285. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1286. }
  1287. }
  1288. }
  1289. },
  1290. "/V2/{payment-service}/{payment-product}": {
  1291. "post": {
  1292. "summary": "Payment initiation request",
  1293. "description": "This method is used to initiate a payment at the ASPSP.\n\n## Adaptation of Payment Initiation Requests\n\nPayment initiations should be sent following the JSON body implementation.\nThis service was extended to accept internal transfers.\nOnly Single SCA Processes are accepted, limiting payment initiation services to accounts that may be authenticated in such a way.\n\nThere are the following **payment products** in *JSON* format:\n - ***sepa-credit-transfers***\n - ***internal-transfers***\n\nThe request body depends on the **payment-service** which accepts:\n * ***payments***: A single payment initiation request.\n \n",
  1294. "operationId": "initiatePayment",
  1295. "tags": [
  1296. "Payment Initiation Service (PIS)"
  1297. ],
  1298. "security": [
  1299. {},
  1300. {
  1301. "BearerAuthOAuth": []
  1302. }
  1303. ],
  1304. "parameters": [
  1305. {
  1306. "$ref": "#/components/parameters/paymentService"
  1307. },
  1308. {
  1309. "$ref": "#/components/parameters/paymentProduct"
  1310. },
  1311. {
  1312. "$ref": "#/components/parameters/X-Request-ID"
  1313. },
  1314. {
  1315. "$ref": "#/components/parameters/Digest"
  1316. },
  1317. {
  1318. "$ref": "#/components/parameters/Signature"
  1319. },
  1320. {
  1321. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1322. },
  1323. {
  1324. "$ref": "#/components/parameters/PSU-ID"
  1325. },
  1326. {
  1327. "$ref": "#/components/parameters/PSU-ID-Type"
  1328. },
  1329. {
  1330. "$ref": "#/components/parameters/PSU-Corporate-ID"
  1331. },
  1332. {
  1333. "$ref": "#/components/parameters/PSU-Corporate-ID-Type"
  1334. },
  1335. {
  1336. "$ref": "#/components/parameters/consentId_HEADER_optional"
  1337. },
  1338. {
  1339. "$ref": "#/components/parameters/PSU-IP-Address_mandatory"
  1340. },
  1341. {
  1342. "$ref": "#/components/parameters/TPP-Redirect-Preferred"
  1343. },
  1344. {
  1345. "$ref": "#/components/parameters/TPP-Redirect-URI"
  1346. },
  1347. {
  1348. "$ref": "#/components/parameters/TPP-Nok-Redirect-URI"
  1349. },
  1350. {
  1351. "$ref": "#/components/parameters/TPP-Explicit-Authorisation-Preferred"
  1352. },
  1353. {
  1354. "$ref": "#/components/parameters/PSU-IP-Port"
  1355. },
  1356. {
  1357. "$ref": "#/components/parameters/PSU-Accept"
  1358. },
  1359. {
  1360. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1361. },
  1362. {
  1363. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1364. },
  1365. {
  1366. "$ref": "#/components/parameters/PSU-Accept-Language"
  1367. },
  1368. {
  1369. "$ref": "#/components/parameters/PSU-User-Agent"
  1370. },
  1371. {
  1372. "$ref": "#/components/parameters/PSU-Http-Method"
  1373. },
  1374. {
  1375. "$ref": "#/components/parameters/PSU-Device-ID"
  1376. },
  1377. {
  1378. "$ref": "#/components/parameters/PSU-Geo-Location"
  1379. }
  1380. ],
  1381. "requestBody": {
  1382. "$ref": "#/components/requestBodies/paymentInitiation"
  1383. },
  1384. "responses": {
  1385. "201": {
  1386. "$ref": "#/components/responses/CREATED_201_PaymentInitiation"
  1387. },
  1388. "400": {
  1389. "$ref": "#/components/responses/BAD_REQUEST_400"
  1390. },
  1391. "401": {
  1392. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1393. },
  1394. "403": {
  1395. "$ref": "#/components/responses/FORBIDDEN_403"
  1396. },
  1397. "404": {
  1398. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1399. },
  1400. "405": {
  1401. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1402. },
  1403. "408": {
  1404. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1405. },
  1406. "500": {
  1407. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1408. },
  1409. "503": {
  1410. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1411. }
  1412. }
  1413. }
  1414. },
  1415. "/V2/{payment-service}/{payment-product}/{paymentId}": {
  1416. "get": {
  1417. "summary": "Get Payment Information",
  1418. "description": "Returns the content of a payment object",
  1419. "operationId": "getPaymentInformation",
  1420. "tags": [
  1421. "Payment Initiation Service (PIS)"
  1422. ],
  1423. "security": [
  1424. {},
  1425. {
  1426. "BearerAuthOAuth": []
  1427. }
  1428. ],
  1429. "parameters": [
  1430. {
  1431. "$ref": "#/components/parameters/paymentService"
  1432. },
  1433. {
  1434. "$ref": "#/components/parameters/paymentProduct"
  1435. },
  1436. {
  1437. "$ref": "#/components/parameters/paymentId"
  1438. },
  1439. {
  1440. "$ref": "#/components/parameters/X-Request-ID"
  1441. },
  1442. {
  1443. "$ref": "#/components/parameters/Digest"
  1444. },
  1445. {
  1446. "$ref": "#/components/parameters/Signature"
  1447. },
  1448. {
  1449. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1450. },
  1451. {
  1452. "$ref": "#/components/parameters/PSU-IP-Address_optional"
  1453. },
  1454. {
  1455. "$ref": "#/components/parameters/PSU-IP-Port"
  1456. },
  1457. {
  1458. "$ref": "#/components/parameters/PSU-Accept"
  1459. },
  1460. {
  1461. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1462. },
  1463. {
  1464. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1465. },
  1466. {
  1467. "$ref": "#/components/parameters/PSU-Accept-Language"
  1468. },
  1469. {
  1470. "$ref": "#/components/parameters/PSU-User-Agent"
  1471. },
  1472. {
  1473. "$ref": "#/components/parameters/PSU-Http-Method"
  1474. },
  1475. {
  1476. "$ref": "#/components/parameters/PSU-Device-ID"
  1477. },
  1478. {
  1479. "$ref": "#/components/parameters/PSU-Geo-Location"
  1480. }
  1481. ],
  1482. "responses": {
  1483. "200": {
  1484. "$ref": "#/components/responses/OK_200_PaymentInitiationInformation"
  1485. },
  1486. "400": {
  1487. "$ref": "#/components/responses/BAD_REQUEST_400"
  1488. },
  1489. "401": {
  1490. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1491. },
  1492. "403": {
  1493. "$ref": "#/components/responses/FORBIDDEN_403"
  1494. },
  1495. "404": {
  1496. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1497. },
  1498. "405": {
  1499. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1500. },
  1501. "408": {
  1502. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1503. },
  1504. "500": {
  1505. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1506. },
  1507. "503": {
  1508. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1509. }
  1510. }
  1511. },
  1512. "delete": {
  1513. "summary": "Payment Cancellation Request",
  1514. "description": "This method initiates the cancellation of a payment pending authorisation. \n\nAn authorisation process is created by this request.\n",
  1515. "operationId": "cancelPayment",
  1516. "tags": [
  1517. "Payment Initiation Service (PIS)"
  1518. ],
  1519. "security": [
  1520. {},
  1521. {
  1522. "BearerAuthOAuth": []
  1523. }
  1524. ],
  1525. "parameters": [
  1526. {
  1527. "$ref": "#/components/parameters/paymentService"
  1528. },
  1529. {
  1530. "$ref": "#/components/parameters/paymentProduct"
  1531. },
  1532. {
  1533. "$ref": "#/components/parameters/paymentId"
  1534. },
  1535. {
  1536. "$ref": "#/components/parameters/X-Request-ID"
  1537. },
  1538. {
  1539. "$ref": "#/components/parameters/Digest"
  1540. },
  1541. {
  1542. "$ref": "#/components/parameters/Signature"
  1543. },
  1544. {
  1545. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1546. },
  1547. {
  1548. "$ref": "#/components/parameters/PSU-IP-Address_optional"
  1549. },
  1550. {
  1551. "$ref": "#/components/parameters/PSU-IP-Port"
  1552. },
  1553. {
  1554. "$ref": "#/components/parameters/PSU-Accept"
  1555. },
  1556. {
  1557. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1558. },
  1559. {
  1560. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1561. },
  1562. {
  1563. "$ref": "#/components/parameters/PSU-Accept-Language"
  1564. },
  1565. {
  1566. "$ref": "#/components/parameters/PSU-User-Agent"
  1567. },
  1568. {
  1569. "$ref": "#/components/parameters/PSU-Http-Method"
  1570. },
  1571. {
  1572. "$ref": "#/components/parameters/PSU-Device-ID"
  1573. },
  1574. {
  1575. "$ref": "#/components/parameters/PSU-Geo-Location"
  1576. }
  1577. ],
  1578. "responses": {
  1579. "204": {
  1580. "$ref": "#/components/responses/NO_CONTENT_204_PaymentInitiationCancel"
  1581. },
  1582. "400": {
  1583. "$ref": "#/components/responses/BAD_REQUEST_400"
  1584. },
  1585. "401": {
  1586. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1587. },
  1588. "403": {
  1589. "$ref": "#/components/responses/FORBIDDEN_403"
  1590. },
  1591. "404": {
  1592. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1593. },
  1594. "405": {
  1595. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1596. },
  1597. "408": {
  1598. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1599. },
  1600. "500": {
  1601. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1602. },
  1603. "503": {
  1604. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1605. }
  1606. }
  1607. }
  1608. },
  1609. "/V2/{payment-service}/{payment-product}/{paymentId}/status": {
  1610. "get": {
  1611. "summary": "Payment initiation status request",
  1612. "description": "Check the transaction status of a payment initiation.",
  1613. "operationId": "getPaymentInitiationStatus",
  1614. "tags": [
  1615. "Payment Initiation Service (PIS)"
  1616. ],
  1617. "security": [
  1618. {},
  1619. {
  1620. "BearerAuthOAuth": []
  1621. }
  1622. ],
  1623. "parameters": [
  1624. {
  1625. "$ref": "#/components/parameters/paymentService"
  1626. },
  1627. {
  1628. "$ref": "#/components/parameters/paymentProduct"
  1629. },
  1630. {
  1631. "$ref": "#/components/parameters/paymentId"
  1632. },
  1633. {
  1634. "$ref": "#/components/parameters/X-Request-ID"
  1635. },
  1636. {
  1637. "$ref": "#/components/parameters/Digest"
  1638. },
  1639. {
  1640. "$ref": "#/components/parameters/Signature"
  1641. },
  1642. {
  1643. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1644. },
  1645. {
  1646. "$ref": "#/components/parameters/PSU-IP-Address_optional"
  1647. },
  1648. {
  1649. "$ref": "#/components/parameters/PSU-IP-Port"
  1650. },
  1651. {
  1652. "$ref": "#/components/parameters/PSU-Accept"
  1653. },
  1654. {
  1655. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1656. },
  1657. {
  1658. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1659. },
  1660. {
  1661. "$ref": "#/components/parameters/PSU-Accept-Language"
  1662. },
  1663. {
  1664. "$ref": "#/components/parameters/PSU-User-Agent"
  1665. },
  1666. {
  1667. "$ref": "#/components/parameters/PSU-Http-Method"
  1668. },
  1669. {
  1670. "$ref": "#/components/parameters/PSU-Device-ID"
  1671. },
  1672. {
  1673. "$ref": "#/components/parameters/PSU-Geo-Location"
  1674. }
  1675. ],
  1676. "responses": {
  1677. "200": {
  1678. "$ref": "#/components/responses/OK_200_PaymentInitiationStatus"
  1679. },
  1680. "400": {
  1681. "$ref": "#/components/responses/BAD_REQUEST_400"
  1682. },
  1683. "401": {
  1684. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1685. },
  1686. "403": {
  1687. "$ref": "#/components/responses/FORBIDDEN_403"
  1688. },
  1689. "404": {
  1690. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1691. },
  1692. "405": {
  1693. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1694. },
  1695. "408": {
  1696. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1697. },
  1698. "500": {
  1699. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1700. },
  1701. "503": {
  1702. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1703. }
  1704. }
  1705. }
  1706. },
  1707. "/V2/{payment-service}/{payment-product}/{paymentId}/authorisations": {
  1708. "post": {
  1709. "summary": "Start the authorisation process for a payment initiation",
  1710. "description": "Create an authorisation sub-resource and start the authorisation process. \nThe message might in addition transmit authentication and authorisation related data. \n\nThis method is iterated n times for a n times SCA authorisation in a \ncorporate context, each creating an own authorisation sub-endpoint for \nthe corresponding PSU authorising the transaction.\n\nThe ASPSP might make the usage of this access method unnecessary in case \nof only one SCA process needed, since the related authorisation resource \nmight be automatically created by the ASPSP after the submission of the \npayment data with the first POST payments/{payment-product} call.\n\nThe start authorisation process is a process which is needed for creating a new authorisation \nor cancellation sub-resource. \n\nThis applies in the following scenarios:\n\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding Payment \n Initiation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be \n uploaded by using the extended forms.\n * 'startAuthorisationWithPsuIdentfication', \n * 'startAuthorisationWithPsuAuthentication' #TODO\n * 'startAuthorisationWithAuthentciationMethodSelection' \n * The related payment initiation cannot yet be executed since a multilevel SCA is mandated.\n * The ASPSP has indicated with an 'startAuthorisation' hyperlink in the preceeding \n Payment Cancellation Response that an explicit start of the authorisation process is needed by the TPP. \n The 'startAuthorisation' hyperlink can transport more information about data which needs to be uploaded \n by using the extended forms as indicated above.\n * The related payment cancellation request cannot be applied yet since a multilevel SCA is mandate for \n executing the cancellation.\n * The signing basket needs to be authorised yet.\n",
  1711. "operationId": "startPaymentAuthorisation",
  1712. "tags": [
  1713. "Payment Initiation Service (PIS)"
  1714. ],
  1715. "security": [
  1716. {},
  1717. {
  1718. "BearerAuthOAuth": []
  1719. }
  1720. ],
  1721. "parameters": [
  1722. {
  1723. "$ref": "#/components/parameters/paymentService"
  1724. },
  1725. {
  1726. "$ref": "#/components/parameters/paymentProduct"
  1727. },
  1728. {
  1729. "$ref": "#/components/parameters/paymentId"
  1730. },
  1731. {
  1732. "$ref": "#/components/parameters/X-Request-ID"
  1733. },
  1734. {
  1735. "$ref": "#/components/parameters/PSU-ID"
  1736. },
  1737. {
  1738. "$ref": "#/components/parameters/PSU-ID-Type"
  1739. },
  1740. {
  1741. "$ref": "#/components/parameters/PSU-Corporate-ID"
  1742. },
  1743. {
  1744. "$ref": "#/components/parameters/PSU-Corporate-ID-Type"
  1745. },
  1746. {
  1747. "$ref": "#/components/parameters/Digest"
  1748. },
  1749. {
  1750. "$ref": "#/components/parameters/Signature"
  1751. },
  1752. {
  1753. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1754. },
  1755. {
  1756. "$ref": "#/components/parameters/PSU-IP-Address_optional"
  1757. },
  1758. {
  1759. "$ref": "#/components/parameters/PSU-IP-Port"
  1760. },
  1761. {
  1762. "$ref": "#/components/parameters/PSU-Accept"
  1763. },
  1764. {
  1765. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1766. },
  1767. {
  1768. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1769. },
  1770. {
  1771. "$ref": "#/components/parameters/PSU-Accept-Language"
  1772. },
  1773. {
  1774. "$ref": "#/components/parameters/PSU-User-Agent"
  1775. },
  1776. {
  1777. "$ref": "#/components/parameters/PSU-Http-Method"
  1778. },
  1779. {
  1780. "$ref": "#/components/parameters/PSU-Device-ID"
  1781. },
  1782. {
  1783. "$ref": "#/components/parameters/PSU-Geo-Location"
  1784. }
  1785. ],
  1786. "responses": {
  1787. "201": {
  1788. "$ref": "#/components/responses/CREATED_201_StartScaProcess"
  1789. },
  1790. "400": {
  1791. "$ref": "#/components/responses/BAD_REQUEST_400"
  1792. },
  1793. "401": {
  1794. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1795. },
  1796. "403": {
  1797. "$ref": "#/components/responses/FORBIDDEN_403"
  1798. },
  1799. "404": {
  1800. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1801. },
  1802. "405": {
  1803. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1804. },
  1805. "408": {
  1806. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1807. },
  1808. "500": {
  1809. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1810. },
  1811. "503": {
  1812. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1813. }
  1814. }
  1815. },
  1816. "get": {
  1817. "summary": "Get Payment Initiation Authorisation Sub-Resources Request",
  1818. "description": "Read a list of all authorisation subresources IDs which have been created.\n\nThis function returns an array of hyperlinks to all generated authorisation sub-resources.\n",
  1819. "operationId": "getPaymentInitiationAuthorisation",
  1820. "tags": [
  1821. "Payment Initiation Service (PIS)"
  1822. ],
  1823. "security": [
  1824. {},
  1825. {
  1826. "BearerAuthOAuth": []
  1827. }
  1828. ],
  1829. "parameters": [
  1830. {
  1831. "$ref": "#/components/parameters/paymentService"
  1832. },
  1833. {
  1834. "$ref": "#/components/parameters/paymentProduct"
  1835. },
  1836. {
  1837. "$ref": "#/components/parameters/paymentId"
  1838. },
  1839. {
  1840. "$ref": "#/components/parameters/X-Request-ID"
  1841. },
  1842. {
  1843. "$ref": "#/components/parameters/Digest"
  1844. },
  1845. {
  1846. "$ref": "#/components/parameters/Signature"
  1847. },
  1848. {
  1849. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1850. },
  1851. {
  1852. "$ref": "#/components/parameters/PSU-IP-Address_optional"
  1853. },
  1854. {
  1855. "$ref": "#/components/parameters/PSU-IP-Port"
  1856. },
  1857. {
  1858. "$ref": "#/components/parameters/PSU-Accept"
  1859. },
  1860. {
  1861. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1862. },
  1863. {
  1864. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1865. },
  1866. {
  1867. "$ref": "#/components/parameters/PSU-Accept-Language"
  1868. },
  1869. {
  1870. "$ref": "#/components/parameters/PSU-User-Agent"
  1871. },
  1872. {
  1873. "$ref": "#/components/parameters/PSU-Http-Method"
  1874. },
  1875. {
  1876. "$ref": "#/components/parameters/PSU-Device-ID"
  1877. },
  1878. {
  1879. "$ref": "#/components/parameters/PSU-Geo-Location"
  1880. }
  1881. ],
  1882. "responses": {
  1883. "200": {
  1884. "$ref": "#/components/responses/OK_200_Authorisations"
  1885. },
  1886. "400": {
  1887. "$ref": "#/components/responses/BAD_REQUEST_400"
  1888. },
  1889. "401": {
  1890. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1891. },
  1892. "403": {
  1893. "$ref": "#/components/responses/FORBIDDEN_403"
  1894. },
  1895. "404": {
  1896. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1897. },
  1898. "405": {
  1899. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  1900. },
  1901. "408": {
  1902. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  1903. },
  1904. "500": {
  1905. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  1906. },
  1907. "503": {
  1908. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  1909. }
  1910. }
  1911. }
  1912. },
  1913. "/V2/{payment-service}/{payment-product}/{paymentId}/authorisations/{authorisationId}": {
  1914. "get": {
  1915. "summary": "Read the SCA Status of the payment authorisation",
  1916. "description": "This method returns the SCA status of a payment initiation's authorisation sub-resource, including payment cancels.\n",
  1917. "operationId": "getPaymentInitiationScaStatus",
  1918. "tags": [
  1919. "Payment Initiation Service (PIS)"
  1920. ],
  1921. "security": [
  1922. {},
  1923. {
  1924. "BearerAuthOAuth": []
  1925. }
  1926. ],
  1927. "parameters": [
  1928. {
  1929. "$ref": "#/components/parameters/paymentService"
  1930. },
  1931. {
  1932. "$ref": "#/components/parameters/paymentProduct"
  1933. },
  1934. {
  1935. "$ref": "#/components/parameters/paymentId"
  1936. },
  1937. {
  1938. "$ref": "#/components/parameters/authorisationId"
  1939. },
  1940. {
  1941. "$ref": "#/components/parameters/X-Request-ID"
  1942. },
  1943. {
  1944. "$ref": "#/components/parameters/Digest"
  1945. },
  1946. {
  1947. "$ref": "#/components/parameters/Signature"
  1948. },
  1949. {
  1950. "$ref": "#/components/parameters/TPP-Signature-Certificate"
  1951. },
  1952. {
  1953. "$ref": "#/components/parameters/PSU-IP-Address_optional"
  1954. },
  1955. {
  1956. "$ref": "#/components/parameters/PSU-IP-Port"
  1957. },
  1958. {
  1959. "$ref": "#/components/parameters/PSU-Accept"
  1960. },
  1961. {
  1962. "$ref": "#/components/parameters/PSU-Accept-Charset"
  1963. },
  1964. {
  1965. "$ref": "#/components/parameters/PSU-Accept-Encoding"
  1966. },
  1967. {
  1968. "$ref": "#/components/parameters/PSU-Accept-Language"
  1969. },
  1970. {
  1971. "$ref": "#/components/parameters/PSU-User-Agent"
  1972. },
  1973. {
  1974. "$ref": "#/components/parameters/PSU-Http-Method"
  1975. },
  1976. {
  1977. "$ref": "#/components/parameters/PSU-Device-ID"
  1978. },
  1979. {
  1980. "$ref": "#/components/parameters/PSU-Geo-Location"
  1981. }
  1982. ],
  1983. "responses": {
  1984. "200": {
  1985. "$ref": "#/components/responses/OK_200_ScaStatus"
  1986. },
  1987. "400": {
  1988. "$ref": "#/components/responses/BAD_REQUEST_400"
  1989. },
  1990. "401": {
  1991. "$ref": "#/components/responses/UNAUTHORIZED_401"
  1992. },
  1993. "403": {
  1994. "$ref": "#/components/responses/FORBIDDEN_403"
  1995. },
  1996. "404": {
  1997. "$ref": "#/components/responses/NOT_FOUND_404_PIS"
  1998. },
  1999. "405": {
  2000. "$ref": "#/components/responses/METHOD_NOT_ALLOWED_405"
  2001. },
  2002. "408": {
  2003. "$ref": "#/components/responses/REQUEST_TIMEOUT_408"
  2004. },
  2005. "500": {
  2006. "$ref": "#/components/responses/INTERNAL_SERVER_ERROR_500"
  2007. },
  2008. "503": {
  2009. "$ref": "#/components/responses/SERVICE_UNAVAILABLE_503"
  2010. }
  2011. }
  2012. }
  2013. }
  2014. },
  2015. "components": {
  2016. "securitySchemes": {
  2017. "BearerAuthOAuth": {
  2018. "description": "Bearer Token. \n\nIs contained only, if an OAuth2 based authentication was performed in a pre-step or \nan OAuth2 based SCA was performed in an preceding AIS service in the same session.\n",
  2019. "type": "http",
  2020. "scheme": "bearer"
  2021. }
  2022. },
  2023. "schemas": {
  2024. "paymentId": {
  2025. "description": "Resource identification of the generated payment initiation resource.",
  2026. "type": "string",
  2027. "example": "1234-wertiq-983"
  2028. },
  2029. "authorisationId": {
  2030. "description": "Resource identification of the related SCA",
  2031. "type": "string",
  2032. "example": "123auth456"
  2033. },
  2034. "authenticationMethodId": {
  2035. "description": "An identification provided by the ASPSP for the later identification of the authentication method selection.\n",
  2036. "type": "string",
  2037. "maxLength": 35,
  2038. "example": "myAuthenticationID"
  2039. },
  2040. "accountId": {
  2041. "description": "This identification is denoting the addressed account, where the transaction has been performed.",
  2042. "type": "string",
  2043. "example": "qwer3456tzui7890"
  2044. },
  2045. "consentId": {
  2046. "description": "ID of the corresponding consent object as returned by an Account Information Consent Request.\n",
  2047. "type": "string"
  2048. },
  2049. "resourceId": {
  2050. "description": "This identification is given by the attribute resourceId of the corresponding entry of a transaction list.\n",
  2051. "type": "string",
  2052. "example": "3dc3d5b3-7023-4848-9853-f5400a64e80f"
  2053. },
  2054. "cancellationId": {
  2055. "description": "Identification for cancellation resource",
  2056. "type": "string",
  2057. "example": "123auth456"
  2058. },
  2059. "entryReference": {
  2060. "description": "Is the identification of the transaction as used e.g. for reference for deltafunction on application level.\n",
  2061. "type": "string",
  2062. "maxLength": 35
  2063. },
  2064. "transactionStatus": {
  2065. "description": "The transaction status is filled with codes of the ISO 20022 data table:\n- 'ACCC': 'AcceptedSettlementCompleted' -\n Settlement on the creditor's account has been completed.\n- 'ACCP': 'AcceptedCustomerProfile' - \n Preceding check of technical validation was successful. \n Customer profile check was also successful.\n- 'ACSC': 'AcceptedSettlementCompleted' - \n Settlement on the debtor\ufffds account has been completed.\n \n **Usage:** this can be used by the first agent to report to the debtor that the transaction has been completed. \n \n **Warning:** this status is provided for transaction status reasons, not for financial information. \n It can only be used after bilateral agreement.\n- 'ACSP': 'AcceptedSettlementInProcess' - \n All preceding checks such as technical validation and customer profile were successful and therefore the payment initiation has been accepted for execution.\n- 'ACTC': 'AcceptedTechnicalValidation' - \n Authentication and syntactical and semantical validation are successful.\n- 'ACWC': 'AcceptedWithChange' - \n Instruction is accepted but a change will be made, such as date or remittance not sent.\n- 'ACWP': 'AcceptedWithoutPosting' - \n Payment instruction included in the credit transfer is accepted without being posted to the creditor customer\ufffds account.\n- 'RCVD': 'Received' - \n Payment initiation has been received by the receiving agent.\n- 'PDNG': 'Pending' - \n Payment initiation or individual transaction included in the payment initiation is pending. \n Further checks and status update will be performed.\n- 'RJCT': 'Rejected' - \n Payment initiation or individual transaction included in the payment initiation has been rejected.\n- 'CANC': 'Cancelled'\n Payment initiation has been cancelled before execution\n Remark: This code is still requested from ISO20022.\n- 'ACFC': 'AcceptedFundsChecked' -\n Preceeding check of technical validation and customer profile was successful and an automatic funds check was positive .\n Remark: This code is still requested from ISO20022.\n- 'PATC': 'PartiallyAcceptedTechnical'\n Correct The payment initiation needs multiple authentications, where some but not yet all have been performed. Syntactical and semantical validations are successful.\n Remark: This code is still requested from ISO20022.\n",
  2066. "type": "string",
  2067. "enum": [
  2068. "ACCC",
  2069. "ACCP",
  2070. "ACSC",
  2071. "ACSP",
  2072. "ACTC",
  2073. "ACWC",
  2074. "ACWP",
  2075. "RCVD",
  2076. "PDNG",
  2077. "RJCT",
  2078. "CANC",
  2079. "ACFC",
  2080. "PATC"
  2081. ],
  2082. "example": "ACCP"
  2083. },
  2084. "scaStatus": {
  2085. "description": "This data element is containing information about the status of the SCA method applied. \n\nThe following codes are defined for this data type.\n\n * 'psuAuthenticated':\n The PSU related to the authorisation resource has been identified and authenticated e.g. by a password.\n * 'scaMethodSelected':\n First status to be reported instead since method is predetermined.\n * 'finalised':\n The SCA routine has been finalised successfully.\n * 'failed':\n The SCA routine failed\n * 'exempted':\n SCA was exempted for the related transaction, the related authorisation is successful.\n",
  2086. "type": "string",
  2087. "enum": [
  2088. "psuAuthenticated",
  2089. "scaMethodSelected",
  2090. "finalised",
  2091. "failed",
  2092. "exempted"
  2093. ],
  2094. "example": "psuAuthenticated"
  2095. },
  2096. "scaAuthenticationData": {
  2097. "description": "SCA authentication data, depending on the chosen authentication method. \nIf the data is binary, then it is base64 encoded.\n",
  2098. "type": "string"
  2099. },
  2100. "consentStatus": {
  2101. "description": "This is the overall lifecycle status of the consent.\n\nValid values are:\n - 'received': The consent data have been received and are technically correct. \n The data is not authorised yet.\n - 'rejected': The consent data have been rejected e.g. since no successful authorisation has taken place.\n - 'valid': The consent is accepted and valid for GET account data calls and others as specified in the consent object.\n - 'revokedByPsu': The consent has been revoked by the PSU towards the ASPSP.\n - 'expired': The consent expired.\n - 'terminatedByTpp': The corresponding TPP has terminated the consent by applying the DELETE method to the consent resource.\n\nThe ASPSP might add further codes. These codes then shall be contained in the ASPSP's documentation of the XS2A interface \nand has to be added to this API definition as well.\n",
  2102. "type": "string",
  2103. "enum": [
  2104. "received",
  2105. "rejected",
  2106. "valid",
  2107. "revokedByPsu",
  2108. "expired",
  2109. "terminatedByTpp"
  2110. ]
  2111. },
  2112. "transactionFeeIndicator": {
  2113. "description": "If equals 'true', the transaction will involve specific transaction cost as shown by the ASPSP in\ntheir public price list or as agreed between ASPSP and PSU.\nIf equals 'false', the transaction will not involve additional specific transaction costs to the PSU.\n",
  2114. "type": "boolean"
  2115. },
  2116. "recurringIndicator": {
  2117. "description": "\"true\", if the consent is for recurring access to the account data.\n\n\"false\", if the consent is for one access to the account data.\n",
  2118. "type": "boolean",
  2119. "example": false
  2120. },
  2121. "authenticationType": {
  2122. "description": "Type of the authentication method.\n\nMore authentication types might be added during implementation projects and documented in the ASPSP documentation.\n\n - 'SMS_OTP': An SCA method, where an OTP linked to the transaction to be authorised is sent to the PSU through a SMS channel.\n - 'CHIP_OTP': An SCA method, where an OTP is generated by a chip card, e.g. an TOP derived from an EMV cryptogram. \n To contact the card, the PSU normally needs a (handheld) device. \n With this device, the PSU either reads the challenging data through a visual interface like flickering or \n the PSU types in the challenge through the device key pad. \n The device then derives an OTP from the challenge data and displays the OTP to the PSU.\n - 'PHOTO_OTP': An SCA method, where the challenge is a QR code or similar encoded visual data \n which can be read in by a consumer device or specific mobile app. \n The device resp. the specific app than derives an OTP from the visual challenge data and displays \n the OTP to the PSU.\n - 'PUSH_OTP': An OTP is pushed to a dedicated authentication APP and displayed to the PSU.\n",
  2123. "type": "string",
  2124. "enum": [
  2125. "SMS_OTP",
  2126. "CHIP_OTP",
  2127. "PHOTO_OTP",
  2128. "PUSH_OTP"
  2129. ]
  2130. },
  2131. "hrefType": {
  2132. "description": "Link to a resource",
  2133. "type": "string",
  2134. "example": "/V2/payments/sepa-credit-transfers/1234-wertiq-983"
  2135. },
  2136. "hrefTypeAccount": {
  2137. "description": "Link to an account detail",
  2138. "type": "string",
  2139. "example": "/V2/accounts/1234-wertiq-983"
  2140. },
  2141. "hrefTypeAccountList": {
  2142. "description": "Link to the account list",
  2143. "type": "string",
  2144. "example": "/V2/accounts"
  2145. },
  2146. "hrefTypeSCT": {
  2147. "description": "Link to an SCT",
  2148. "type": "string",
  2149. "example": "/V2/payments/sepa-credit-transfers/1234-wertiq-983"
  2150. },
  2151. "hrefTypeIT": {
  2152. "description": "Link to an IT",
  2153. "type": "string",
  2154. "example": "/V2/payments/internal-transfers/1234-wertiq-983"
  2155. },
  2156. "hrefTypeBalances": {
  2157. "description": "Link to balances",
  2158. "type": "string",
  2159. "example": "/V2/accounts/1234-wertiq-983/balances"
  2160. },
  2161. "hrefTypeTransactions": {
  2162. "description": "Link to transactions",
  2163. "type": "string",
  2164. "example": "/V2/accounts/1234-wertiq-983/transactions"
  2165. },
  2166. "hrefTypeTransactionDetails": {
  2167. "description": "Link to a transaction detail",
  2168. "type": "string",
  2169. "example": "/V2/accounts/1234-wertiq-983/transactions/1234-wertiq-983"
  2170. },
  2171. "hrefTypeSCARedirect": {
  2172. "description": "Link to a resource",
  2173. "type": "string",
  2174. "example": "/V2/payments/sepa-credit-transfers/1234-wertiq-983/authorisations/1234-wertiq-983/redirect"
  2175. },
  2176. "hrefTypeSCAStatus": {
  2177. "description": "Link to a resource",
  2178. "type": "string",
  2179. "example": "/V2/payments/sepa-credit-transfers/1234-wertiq-983/authorisations/1234-wertiq-983/status"
  2180. },
  2181. "hrefTypeStatus": {
  2182. "description": "Link to a resource",
  2183. "type": "string",
  2184. "example": "/V2/payments/sepa-credit-transfers/1234-wertiq-983/authorisations/1234-wertiq-983/status"
  2185. },
  2186. "authorisationsList": {
  2187. "description": "An array of all authorisationIds",
  2188. "type": "array",
  2189. "items": {
  2190. "$ref": "#/components/schemas/authorisationId"
  2191. }
  2192. },
  2193. "authorisations": {
  2194. "description": "An array of all authorisationIds",
  2195. "type": "object",
  2196. "required": [
  2197. "authorisationIds"
  2198. ],
  2199. "properties": {
  2200. "authorisationIds": {
  2201. "$ref": "#/components/schemas/authorisationsList"
  2202. }
  2203. }
  2204. },
  2205. "accountReference": {
  2206. "description": "Reference to an account by either\n * IBAN, of a payment accounts\n",
  2207. "type": "object",
  2208. "properties": {
  2209. "iban": {
  2210. "$ref": "#/components/schemas/iban"
  2211. }
  2212. }
  2213. },
  2214. "subAccountReference": {
  2215. "description": "Reference to a subaccount by an ASPSP reference\n",
  2216. "type": "object",
  2217. "properties": {
  2218. "subAccountId": {
  2219. "$ref": "#/components/schemas/subAccountId"
  2220. },
  2221. "subAccountName": {
  2222. "$ref": "#/components/schemas/subAccountName"
  2223. }
  2224. }
  2225. },
  2226. "subAccountId": {
  2227. "description": "Reference to a subaccount by an ASPSP reference\n",
  2228. "type": "string",
  2229. "example": "0"
  2230. },
  2231. "subAccountName": {
  2232. "description": "Name of the subaccount\n",
  2233. "type": "string",
  2234. "example": "DO"
  2235. },
  2236. "balanceType": {
  2237. "description": "The following balance types are defined:\n - \"closingBooked\": \n Balance of the account at the end of the pre-agreed account reporting period. \n It is the sum of the opening booked balance at the beginning of the period and all entries booked \n to the account during the pre-agreed account reporting period.\n \n - \"valueDate\":\n Value date balance composed of booked entries and pending items known at the time of calculation , \n which projects the end of day balance for interest calculation if everything is booked on the account and no other entry is posted. \n \n - \"expected\":\n Balance composed of booked entries and pending items known at the time of calculation, \n which projects the end of day balance if everything is booked on the account and no other entry is posted.\n \n - \"available\":\n The Value Date balance deducted of credits awayting good collection, capital market buys and other debits pending settlement. \n \n - \"authorised\":\n The available balance together with the value of a pre-approved credit line the ASPSP makes permanently available to the user.\n \n",
  2238. "type": "string",
  2239. "enum": [
  2240. "closingBooked",
  2241. "expected",
  2242. "authorised",
  2243. "available",
  2244. "valueDate"
  2245. ]
  2246. },
  2247. "accountAccess": {
  2248. "description": "Requested access services for a consent.\n",
  2249. "type": "object",
  2250. "properties": {
  2251. "accounts": {
  2252. "description": "Is asking for detailed account information. \n",
  2253. "type": "array",
  2254. "items": {
  2255. "$ref": "#/components/schemas/accountReference"
  2256. }
  2257. },
  2258. "balances": {
  2259. "description": "Is asking for balances of the addressed accounts.\n",
  2260. "type": "array",
  2261. "items": {
  2262. "$ref": "#/components/schemas/accountReference"
  2263. }
  2264. },
  2265. "transactions": {
  2266. "description": "Is asking for transactions of the addressed accounts. \n",
  2267. "type": "array",
  2268. "items": {
  2269. "$ref": "#/components/schemas/accountReference"
  2270. }
  2271. },
  2272. "availableAccounts": {
  2273. "description": "Not supported by API provider.\n",
  2274. "type": "string",
  2275. "enum": [
  2276. "allAccounts",
  2277. "allAccountsWithBalances"
  2278. ]
  2279. },
  2280. "allPsd2": {
  2281. "description": "Supported by API provider.\n\nOnly the value \"allAccounts\" is admitted.\n",
  2282. "type": "string",
  2283. "enum": [
  2284. "allAccounts"
  2285. ]
  2286. }
  2287. }
  2288. },
  2289. "cashAccountType": {
  2290. "description": "ExternalCashAccountType1Code from ISO 20022.\n",
  2291. "type": "string"
  2292. },
  2293. "accountStatus": {
  2294. "description": "Account status. The value is one of the following:\n - \"enabled\": account is available\n - \"deleted\": account is terminated\n - \"blocked\": account is blocked e.g. for legal reasons\nIf this field is not used, than the account is available in the sense of this specification.\n",
  2295. "type": "string",
  2296. "enum": [
  2297. "enabled",
  2298. "deleted",
  2299. "blocked"
  2300. ]
  2301. },
  2302. "accountDetails": {
  2303. "description": "The ASPSP shall give the following account reference identifiers:\n - iban\n",
  2304. "type": "object",
  2305. "required": [
  2306. "currency"
  2307. ],
  2308. "properties": {
  2309. "resourceId": {
  2310. "description": "This shall be filled, if addressable resource are created by the ASPSP on the /accounts endpoint.",
  2311. "type": "string"
  2312. },
  2313. "iban": {
  2314. "$ref": "#/components/schemas/iban"
  2315. },
  2316. "name": {
  2317. "description": "Name of the account given by the bank or the PSU in online-banking.",
  2318. "type": "string",
  2319. "maxLength": 35
  2320. },
  2321. "product": {
  2322. "description": "Product name of the bank for this account, proprietary definition.",
  2323. "type": "string",
  2324. "maxLength": 35
  2325. },
  2326. "cashAccountType": {
  2327. "$ref": "#/components/schemas/cashAccountType"
  2328. },
  2329. "status": {
  2330. "$ref": "#/components/schemas/accountStatus"
  2331. },
  2332. "bic": {
  2333. "$ref": "#/components/schemas/bicfi"
  2334. },
  2335. "linkedAccounts": {
  2336. "description": "Case of a set of pending card transactions, the APSP will provide the relevant cash account the card is set up on.",
  2337. "type": "string",
  2338. "maxLength": 70
  2339. },
  2340. "usage": {
  2341. "description": "Specifies the usage of the account\n * PRIV: private personal account\n * ORGA: professional account\n",
  2342. "type": "string",
  2343. "maxLength": 4,
  2344. "enum": [
  2345. "PRIV",
  2346. "ORGA"
  2347. ]
  2348. },
  2349. "details": {
  2350. "description": "Specifications that might be provided by the ASPSP\n - characteristics of the account\n - characteristics of the relevant card\n",
  2351. "type": "string",
  2352. "maxLength": 140
  2353. },
  2354. "_links": {
  2355. "$ref": "#/components/schemas/_linksAccountDetails"
  2356. }
  2357. }
  2358. },
  2359. "accountList": {
  2360. "description": "List of accounts with details.\n",
  2361. "type": "object",
  2362. "properties": {
  2363. "accounts": {
  2364. "type": "array",
  2365. "items": {
  2366. "$ref": "#/components/schemas/accountDetails"
  2367. }
  2368. }
  2369. }
  2370. },
  2371. "accountReport": {
  2372. "description": "JSON based account report.\nThis account report contains transactions resulting from the query parameters.\n\n'booked' shall be contained if bookingStatus parameter is set to \"booked\" or \"both\".\n\n'pending' is not contained if the bookingStatus parameter is set to \"booked\".\n",
  2373. "type": "object",
  2374. "required": [
  2375. "_links"
  2376. ],
  2377. "properties": {
  2378. "booked": {
  2379. "$ref": "#/components/schemas/transactionList"
  2380. },
  2381. "pending": {
  2382. "$ref": "#/components/schemas/transactionList"
  2383. },
  2384. "_links": {
  2385. "$ref": "#/components/schemas/_linksAccountReport"
  2386. }
  2387. }
  2388. },
  2389. "transactionList": {
  2390. "description": "Array of transaction details",
  2391. "type": "array",
  2392. "items": {
  2393. "$ref": "#/components/schemas/transactionDetails"
  2394. }
  2395. },
  2396. "transactionDetails": {
  2397. "description": "Transaction details",
  2398. "type": "object",
  2399. "required": [
  2400. "transactionAmount"
  2401. ],
  2402. "properties": {
  2403. "transactionId": {
  2404. "description": "the Transaction Id can be used as access-ID in the API, where more details on an transaction is offered. \nIf this data attribute is provided this shows that the AIS can get access on more details about this \ntransaction using the GET Transaction Details Request \n",
  2405. "type": "string"
  2406. },
  2407. "entryReference": {
  2408. "description": "Is the identification of the transaction as used e.g. for reference for deltafunction on application level. \n",
  2409. "type": "string",
  2410. "maxLength": 35
  2411. },
  2412. "endToEndId": {
  2413. "description": "Unique end to end identity.",
  2414. "type": "string",
  2415. "maxLength": 35
  2416. },
  2417. "mandateId": {
  2418. "description": "Identification of Mandates, e.g. a SEPA Mandate ID.",
  2419. "type": "string",
  2420. "maxLength": 35
  2421. },
  2422. "checkId": {
  2423. "description": "Identification of a Cheque.",
  2424. "type": "string",
  2425. "maxLength": 35
  2426. },
  2427. "creditorId": {
  2428. "description": "Identification of Creditors, e.g. a SEPA Creditor ID.",
  2429. "type": "string",
  2430. "maxLength": 35
  2431. },
  2432. "bookingDate": {
  2433. "$ref": "#/components/schemas/bookingDate"
  2434. },
  2435. "valueDate": {
  2436. "description": "The Date at which assets become available to the account owner in case of a credit.",
  2437. "type": "string",
  2438. "format": "date"
  2439. },
  2440. "transactionAmount": {
  2441. "$ref": "#/components/schemas/amount"
  2442. },
  2443. "exchangeRate": {
  2444. "$ref": "#/components/schemas/exchangeRateList"
  2445. },
  2446. "creditorName": {
  2447. "$ref": "#/components/schemas/creditorName"
  2448. },
  2449. "creditorAccount": {
  2450. "$ref": "#/components/schemas/accountReference"
  2451. },
  2452. "ultimateCreditor": {
  2453. "$ref": "#/components/schemas/ultimateCreditor"
  2454. },
  2455. "debtorName": {
  2456. "$ref": "#/components/schemas/debtorName"
  2457. },
  2458. "debtorAccount": {
  2459. "$ref": "#/components/schemas/accountReference"
  2460. },
  2461. "ultimateDebtor": {
  2462. "$ref": "#/components/schemas/ultimateDebtor"
  2463. },
  2464. "remittanceInformationUnstructured": {
  2465. "type": "string",
  2466. "maxLength": 140
  2467. },
  2468. "purposeCode": {
  2469. "$ref": "#/components/schemas/purposeCode"
  2470. },
  2471. "bankTransactionCode": {
  2472. "$ref": "#/components/schemas/bankTransactionCode"
  2473. },
  2474. "proprietaryBankTransactionCode": {
  2475. "$ref": "#/components/schemas/proprietaryBankTransactionCode"
  2476. },
  2477. "_links": {
  2478. "$ref": "#/components/schemas/_linksTransactionDetails"
  2479. }
  2480. }
  2481. },
  2482. "exchangeRateList": {
  2483. "description": "Array of exchange rates",
  2484. "type": "array",
  2485. "items": {
  2486. "$ref": "#/components/schemas/exchangeRate"
  2487. }
  2488. },
  2489. "exchangeRate": {
  2490. "description": "Exchange Rate",
  2491. "type": "object",
  2492. "required": [
  2493. "sourceCurrency",
  2494. "rate",
  2495. "unitCurrency",
  2496. "targetCurrency",
  2497. "rateDate"
  2498. ],
  2499. "properties": {
  2500. "sourceCurrency": {
  2501. "$ref": "#/components/schemas/currencyCode"
  2502. },
  2503. "rate": {
  2504. "type": "string"
  2505. },
  2506. "unitCurrency": {
  2507. "type": "string"
  2508. },
  2509. "targetCurrency": {
  2510. "$ref": "#/components/schemas/currencyCode"
  2511. },
  2512. "rateDate": {
  2513. "type": "string",
  2514. "format": "date"
  2515. },
  2516. "rateContract": {
  2517. "type": "string"
  2518. }
  2519. }
  2520. },
  2521. "balance": {
  2522. "description": "A single balance element\n",
  2523. "type": "object",
  2524. "required": [
  2525. "balanceAmount",
  2526. "balanceType",
  2527. "balanceSubAccount"
  2528. ],
  2529. "properties": {
  2530. "balanceAmount": {
  2531. "$ref": "#/components/schemas/amount"
  2532. },
  2533. "balanceType": {
  2534. "$ref": "#/components/schemas/balanceType"
  2535. },
  2536. "balanceSubAccount": {
  2537. "$ref": "#/components/schemas/subAccountReference"
  2538. },
  2539. "lastChangeDateTime": {
  2540. "description": "This data element might be used to indicate e.g. with the expected or booked balance that no action is known \non the account, which is not yet booked.\n",
  2541. "type": "string",
  2542. "format": "date-time"
  2543. },
  2544. "referenceDate": {
  2545. "description": "Reference date of the balance",
  2546. "type": "string",
  2547. "format": "date"
  2548. },
  2549. "lastCommittedTransaction": {
  2550. "description": "\"entryReference\" of the last commited transaction to support the TPP in identifying whether all \nPSU transactions are already known.\n",
  2551. "type": "string",
  2552. "maxLength": 35
  2553. }
  2554. }
  2555. },
  2556. "balanceList": {
  2557. "description": "A list of balances regarding this account, e.g. the current balance, the last booked balance.\nThe list migght be restricted to the current ballance.\n",
  2558. "type": "array",
  2559. "items": {
  2560. "$ref": "#/components/schemas/balance"
  2561. }
  2562. },
  2563. "cancellationList": {
  2564. "description": "An array of all cancellationIds connected to this resource.",
  2565. "type": "array",
  2566. "items": {
  2567. "$ref": "#/components/schemas/cancellationId"
  2568. }
  2569. },
  2570. "bicfi": {
  2571. "description": "BICFI\n",
  2572. "type": "string",
  2573. "pattern": "[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}",
  2574. "example": "AAAADEBBXXX"
  2575. },
  2576. "iban": {
  2577. "type": "string",
  2578. "description": "IBAN of an account",
  2579. "pattern": "[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}",
  2580. "example": "FR7612345987650123456789014"
  2581. },
  2582. "address": {
  2583. "type": "object",
  2584. "required": [
  2585. "country"
  2586. ],
  2587. "properties": {
  2588. "street": {
  2589. "type": "string",
  2590. "maxLength": 70
  2591. },
  2592. "buildingNumber": {
  2593. "type": "string"
  2594. },
  2595. "city": {
  2596. "type": "string"
  2597. },
  2598. "postalCode": {
  2599. "type": "string"
  2600. },
  2601. "country": {
  2602. "$ref": "#/components/schemas/countryCode"
  2603. }
  2604. },
  2605. "example": {
  2606. "street": "rue blue",
  2607. "buildingnNumber": "89",
  2608. "city": "Paris",
  2609. "postalCode": "75000",
  2610. "country": "FR"
  2611. }
  2612. },
  2613. "countryCode": {
  2614. "description": "ISO 3166 ALPHA2 country code",
  2615. "type": "string",
  2616. "pattern": "[A-Z]{2}",
  2617. "example": "SE"
  2618. },
  2619. "amount": {
  2620. "type": "object",
  2621. "required": [
  2622. "currency",
  2623. "amount"
  2624. ],
  2625. "properties": {
  2626. "currency": {
  2627. "$ref": "#/components/schemas/currencyCode"
  2628. },
  2629. "amount": {
  2630. "$ref": "#/components/schemas/amountValue"
  2631. }
  2632. },
  2633. "example": {
  2634. "currency": "EUR",
  2635. "amount": "123"
  2636. }
  2637. },
  2638. "currencyCode": {
  2639. "description": "ISO 4217 Alpha 3 currency code\n",
  2640. "type": "string",
  2641. "pattern": "[A-Z]{3}",
  2642. "example": "EUR"
  2643. },
  2644. "amountValue": {
  2645. "description": "The amount given with fractional digits, where fractions must be compliant to the currency definition.\nUp to 14 significant figures. Negative amounts are signed by minus.\nThe decimal separator is a dot.\n\n**Example:**\nValid representations for EUR with up to two decimals are:\n\n * 1056\n * 5768.2\n * -1.50\n * 5877.78\n",
  2646. "type": "string",
  2647. "pattern": "-?[0-9]{1,14}(\\.[0-9]{1,3})?",
  2648. "example": "5877.78"
  2649. },
  2650. "remittanceInformationUnstructured": {
  2651. "description": "Unstructured remittance information\n",
  2652. "type": "string",
  2653. "maxLength": 140,
  2654. "example": "Ref Number Merchant"
  2655. },
  2656. "purposeCode": {
  2657. "description": "ExternalPurpose1Code from ISO 20022.\n\nValues from ISO 20022 External Code List ExternalCodeSets_1Q2018 June 2018.\n",
  2658. "type": "string",
  2659. "enum": [
  2660. "BKDF",
  2661. "BKFE",
  2662. "BKFM",
  2663. "BKIP",
  2664. "BKPP",
  2665. "CBLK",
  2666. "CDCB",
  2667. "CDCD",
  2668. "CDCS",
  2669. "CDDP",
  2670. "CDOC",
  2671. "CDQC",
  2672. "ETUP",
  2673. "FCOL",
  2674. "MTUP",
  2675. "ACCT",
  2676. "CASH",
  2677. "COLL",
  2678. "CSDB",
  2679. "DEPT",
  2680. "INTC",
  2681. "LIMA",
  2682. "NETT",
  2683. "BFWD",
  2684. "CCIR",
  2685. "CCPC",
  2686. "CCPM",
  2687. "CCSM",
  2688. "CRDS",
  2689. "CRPR",
  2690. "CRSP",
  2691. "CRTL",
  2692. "EQPT",
  2693. "EQUS",
  2694. "EXPT",
  2695. "EXTD",
  2696. "FIXI",
  2697. "FWBC",
  2698. "FWCC",
  2699. "FWSB",
  2700. "FWSC",
  2701. "MARG",
  2702. "MBSB",
  2703. "MBSC",
  2704. "MGCC",
  2705. "MGSC",
  2706. "OCCC",
  2707. "OPBC",
  2708. "OPCC",
  2709. "OPSB",
  2710. "OPSC",
  2711. "OPTN",
  2712. "OTCD",
  2713. "REPO",
  2714. "RPBC",
  2715. "RPCC",
  2716. "RPSB",
  2717. "RPSC",
  2718. "RVPO",
  2719. "SBSC",
  2720. "SCIE",
  2721. "SCIR",
  2722. "SCRP",
  2723. "SHBC",
  2724. "SHCC",
  2725. "SHSL",
  2726. "SLEB",
  2727. "SLOA",
  2728. "SWBC",
  2729. "SWCC",
  2730. "SWPT",
  2731. "SWSB",
  2732. "SWSC",
  2733. "TBAS",
  2734. "TBBC",
  2735. "TBCC",
  2736. "TRCP",
  2737. "AGRT",
  2738. "AREN",
  2739. "BEXP",
  2740. "BOCE",
  2741. "COMC",
  2742. "CPYR",
  2743. "GDDS",
  2744. "GDSV",
  2745. "GSCB",
  2746. "LICF",
  2747. "MP2B",
  2748. "POPE",
  2749. "ROYA",
  2750. "SCVE",
  2751. "SERV",
  2752. "SUBS",
  2753. "SUPP",
  2754. "TRAD",
  2755. "CHAR",
  2756. "COMT",
  2757. "MP2P",
  2758. "ECPG",
  2759. "ECPR",
  2760. "ECPU",
  2761. "EPAY",
  2762. "CLPR",
  2763. "COMP",
  2764. "DBTC",
  2765. "GOVI",
  2766. "HLRP",
  2767. "HLST",
  2768. "INPC",
  2769. "INPR",
  2770. "INSC",
  2771. "INSU",
  2772. "INTE",
  2773. "LBRI",
  2774. "LIFI",
  2775. "LOAN",
  2776. "LOAR",
  2777. "PENO",
  2778. "PPTI",
  2779. "RELG",
  2780. "RINP",
  2781. "TRFD",
  2782. "FORW",
  2783. "FXNT",
  2784. "ADMG",
  2785. "ADVA",
  2786. "BCDM",
  2787. "BCFG",
  2788. "BLDM",
  2789. "BNET",
  2790. "CBFF",
  2791. "CBFR",
  2792. "CCRD",
  2793. "CDBL",
  2794. "CFEE",
  2795. "CGDD",
  2796. "CORT",
  2797. "COST",
  2798. "CPKC",
  2799. "DCRD",
  2800. "DSMT",
  2801. "DVPM",
  2802. "EDUC",
  2803. "FACT",
  2804. "FAND",
  2805. "FCPM",
  2806. "FEES",
  2807. "GOVT",
  2808. "ICCP",
  2809. "IDCP",
  2810. "IHRP",
  2811. "INSM",
  2812. "IVPT",
  2813. "MCDM",
  2814. "MCFG",
  2815. "MSVC",
  2816. "NOWS",
  2817. "OCDM",
  2818. "OCFG",
  2819. "OFEE",
  2820. "OTHR",
  2821. "PADD",
  2822. "PTSP",
  2823. "RCKE",
  2824. "RCPT",
  2825. "REBT",
  2826. "REFU",
  2827. "RENT",
  2828. "REOD",
  2829. "RIMB",
  2830. "RPNT",
  2831. "RRBN",
  2832. "RVPM",
  2833. "SLPI",
  2834. "SPLT",
  2835. "STDY",
  2836. "TBAN",
  2837. "TBIL",
  2838. "TCSC",
  2839. "TELI",
  2840. "TMPG",
  2841. "TPRI",
  2842. "TPRP",
  2843. "TRNC",
  2844. "TRVC",
  2845. "WEBI",
  2846. "ANNI",
  2847. "CAFI",
  2848. "CFDI",
  2849. "CMDT",
  2850. "DERI",
  2851. "DIVD",
  2852. "FREX",
  2853. "HEDG",
  2854. "INVS",
  2855. "PRME",
  2856. "SAVG",
  2857. "SECU",
  2858. "SEPI",
  2859. "TREA",
  2860. "UNIT",
  2861. "FNET",
  2862. "FUTR",
  2863. "ANTS",
  2864. "CVCF",
  2865. "DMEQ",
  2866. "DNTS",
  2867. "HLTC",
  2868. "HLTI",
  2869. "HSPC",
  2870. "ICRF",
  2871. "LTCF",
  2872. "MAFC",
  2873. "MARF",
  2874. "MDCS",
  2875. "VIEW",
  2876. "CDEP",
  2877. "SWFP",
  2878. "SWPP",
  2879. "SWRS",
  2880. "SWUF",
  2881. "ADCS",
  2882. "AEMP",
  2883. "ALLW",
  2884. "ALMY",
  2885. "BBSC",
  2886. "BECH",
  2887. "BENE",
  2888. "BONU",
  2889. "CCHD",
  2890. "COMM",
  2891. "CSLP",
  2892. "GFRP",
  2893. "GVEA",
  2894. "GVEB",
  2895. "GVEC",
  2896. "GVED",
  2897. "GWLT",
  2898. "HREC",
  2899. "PAYR",
  2900. "PEFC",
  2901. "PENS",
  2902. "PRCP",
  2903. "RHBS",
  2904. "SALA",
  2905. "SSBE",
  2906. "LBIN",
  2907. "LCOL",
  2908. "LFEE",
  2909. "LMEQ",
  2910. "LMFI",
  2911. "LMRK",
  2912. "LREB",
  2913. "LREV",
  2914. "LSFL",
  2915. "ESTX",
  2916. "FWLV",
  2917. "GSTX",
  2918. "HSTX",
  2919. "INTX",
  2920. "NITX",
  2921. "PTXP",
  2922. "RDTX",
  2923. "TAXS",
  2924. "VATX",
  2925. "WHLD",
  2926. "TAXR",
  2927. "B112",
  2928. "BR12",
  2929. "TLRF",
  2930. "TLRR",
  2931. "AIRB",
  2932. "BUSB",
  2933. "FERB",
  2934. "RLWY",
  2935. "TRPT",
  2936. "CBTV",
  2937. "ELEC",
  2938. "ENRG",
  2939. "GASB",
  2940. "NWCH",
  2941. "NWCM",
  2942. "OTLC",
  2943. "PHON",
  2944. "UBIL",
  2945. "WTER"
  2946. ]
  2947. },
  2948. "cardAcceptorCategoryCode": {
  2949. "description": "Card Acceptor Category Code of the Card Acceptor as given in the related card transaction. \n",
  2950. "type": "string"
  2951. },
  2952. "bankTransactionCode": {
  2953. "description": "Bank transaction code as used by the ASPSP and using the sub elements of this structured code defined by ISO 20022. \n\nThis code type is concatenating the three ISO20022 Codes \n * Domain Code, \n * Family Code, and \n * SubFamiliy Code \nby hyphens, resulting in \ufffdDomainCode\ufffd-\ufffdFamilyCode\ufffd-\ufffdSubFamilyCode\ufffd.\n",
  2954. "type": "string",
  2955. "example": "PMNT-RCDT-ESCT"
  2956. },
  2957. "proprietaryBankTransactionCode": {
  2958. "description": "Proprietary bank transaction code as used within a community or within an ASPSP e.g. \nfor MT94x based transaction reports.\n",
  2959. "type": "string",
  2960. "maxLength": 35
  2961. },
  2962. "frequencyCode": {
  2963. "description": "The following codes from the \"EventFrequency7Code\" of ISO 20022 are supported.\n- \"Daily\"\n- \"Weekly\"\n- \"EveryTwoWeeks\"\n- \"Monthly\"\n- \"EveryTwoMonths\"\n- \"Quarterly\"\n- \"SemiAnnual\"\n- \"Annual\"\n",
  2964. "type": "string",
  2965. "enum": [
  2966. "Daily",
  2967. "Weekly",
  2968. "EveryTwoWeeks",
  2969. "Monthly",
  2970. "EveryTwoMonths",
  2971. "Quarterly",
  2972. "SemiAnnual",
  2973. "Annual"
  2974. ]
  2975. },
  2976. "frequencyPerDay": {
  2977. "description": "This field indicates the requested maximum frequency for an access without PSU involvement per day.\nFor a one-off access, this attribute is set to \"1\".\n",
  2978. "type": "integer",
  2979. "example": 4
  2980. },
  2981. "dayOfExecution": {
  2982. "description": "Day of execution as string.\n\nThis string consists of up two characters.\nLeading zeroes are not allowed.\n\n31 is ultimo of the month.\n",
  2983. "type": "string",
  2984. "maxLength": 2,
  2985. "enum": [
  2986. "1",
  2987. "2",
  2988. "3",
  2989. "4",
  2990. "5",
  2991. "6",
  2992. "7",
  2993. "8",
  2994. "9",
  2995. "10",
  2996. "11",
  2997. "12",
  2998. "13",
  2999. "14",
  3000. "15",
  3001. "16",
  3002. "17",
  3003. "18",
  3004. "19",
  3005. "20",
  3006. "21",
  3007. "22",
  3008. "23",
  3009. "24",
  3010. "25",
  3011. "26",
  3012. "27",
  3013. "28",
  3014. "29",
  3015. "30",
  3016. "31"
  3017. ]
  3018. },
  3019. "executionRule": {
  3020. "description": "\"following\" or \"preceeding\" supported as values. \nThis data attribute defines the behavior when recurring payment dates falls on a weekend or bank holiday. \nThe payment is then executed either the \"preceeding\" or \"following\" working day.\nASPSP might reject the request due to the communicated value, if rules in Online-Banking are not supporting \nthis execution rule.\n",
  3021. "type": "string",
  3022. "enum": [
  3023. "following",
  3024. "preceeding"
  3025. ]
  3026. },
  3027. "psuData": {
  3028. "description": "PSU Data for Update PSU Authentication.",
  3029. "type": "object",
  3030. "required": [
  3031. "password"
  3032. ],
  3033. "properties": {
  3034. "password": {
  3035. "description": "Password",
  3036. "type": "string"
  3037. }
  3038. }
  3039. },
  3040. "psuMessageText": {
  3041. "description": "Text to be displayed to the PSU",
  3042. "type": "string",
  3043. "maxLength": 512
  3044. },
  3045. "creditorName": {
  3046. "description": "Creditor Name",
  3047. "type": "string",
  3048. "maxLength": 70,
  3049. "example": "Creditor Name"
  3050. },
  3051. "debtorName": {
  3052. "description": "Debtor Name",
  3053. "type": "string",
  3054. "maxLength": 70,
  3055. "example": "Debtor Name"
  3056. },
  3057. "ultimateDebtor": {
  3058. "description": "Ultimate Debtor",
  3059. "type": "string",
  3060. "maxLength": 70,
  3061. "example": "Ultimate Debtor"
  3062. },
  3063. "ultimateCreditor": {
  3064. "description": "Ultimate Creditor",
  3065. "type": "string",
  3066. "maxLength": 70,
  3067. "example": "Ultimate Creditor"
  3068. },
  3069. "transactionDate": {
  3070. "description": "Date of the actual card transaction",
  3071. "type": "string",
  3072. "format": "date"
  3073. },
  3074. "startDate": {
  3075. "description": "The first applicable day of execution starting from this date is the first payment.\n",
  3076. "type": "string",
  3077. "format": "date"
  3078. },
  3079. "endDate": {
  3080. "description": "The last applicable day of execution\nIf not given, it is an infinite standing order.\n",
  3081. "type": "string",
  3082. "format": "date"
  3083. },
  3084. "bookingDate": {
  3085. "description": "The Date when an entry is posted to an account on the ASPSPs books.\n",
  3086. "type": "string",
  3087. "format": "date"
  3088. },
  3089. "validUntil": {
  3090. "description": "This parameter is requesting a valid until date for the requested consent. \nThe content is the local ASPSP date in ISO-Date Format, e.g. 2017-10-30. \n\nFuture dates might get adjusted by ASPSP. \n\nIf a maximal available date is requested, a date in far future is to be used: \"9999-12-31\". \n\nIn both cases the consent object to be retrieved by the GET Consent Request will contain the adjusted date.\n",
  3091. "type": "string",
  3092. "format": "date",
  3093. "example": "2020-12-31"
  3094. },
  3095. "lastActionDate": {
  3096. "description": "This date is containing the date of the last action on the consent object either through \nthe XS2A interface or the PSU/ASPSP interface having an impact on the status.\n",
  3097. "type": "string",
  3098. "format": "date",
  3099. "example": "2018-07-01"
  3100. },
  3101. "paymentInitiationSct_json": {
  3102. "description": "Body for a SCT payment initation.\n",
  3103. "type": "object",
  3104. "required": [
  3105. "debtorAccount",
  3106. "instructedAmount",
  3107. "creditorAccount",
  3108. "creditorName"
  3109. ],
  3110. "properties": {
  3111. "endToEndIdentification": {
  3112. "type": "string",
  3113. "maxLength": 35
  3114. },
  3115. "debtorAccount": {
  3116. "$ref": "#/components/schemas/accountReference"
  3117. },
  3118. "instructedAmount": {
  3119. "$ref": "#/components/schemas/amount"
  3120. },
  3121. "creditorAccount": {
  3122. "$ref": "#/components/schemas/accountReference"
  3123. },
  3124. "creditorAgent": {
  3125. "$ref": "#/components/schemas/bicfi"
  3126. },
  3127. "creditorName": {
  3128. "$ref": "#/components/schemas/creditorName"
  3129. },
  3130. "creditorAddress": {
  3131. "$ref": "#/components/schemas/address"
  3132. },
  3133. "remittanceInformationUnstructured": {
  3134. "$ref": "#/components/schemas/remittanceInformationUnstructured"
  3135. }
  3136. }
  3137. },
  3138. "paymentInitiationIt_json": {
  3139. "description": "Body for a Internal Transfer payment initation.\n",
  3140. "type": "object",
  3141. "required": [
  3142. "account",
  3143. "fromSubAccount",
  3144. "toSubAccount",
  3145. "instructedAmount",
  3146. "currency"
  3147. ],
  3148. "properties": {
  3149. "endToEndIdentification": {
  3150. "type": "string",
  3151. "maxLength": 35
  3152. },
  3153. "account": {
  3154. "$ref": "#/components/schemas/accountReference"
  3155. },
  3156. "instructedAmount": {
  3157. "$ref": "#/components/schemas/amount"
  3158. },
  3159. "fromSubAccount": {
  3160. "$ref": "#/components/schemas/subAccountReference"
  3161. },
  3162. "toSubAccount": {
  3163. "$ref": "#/components/schemas/subAccountReference"
  3164. }
  3165. }
  3166. },
  3167. "confirmationOfFunds": {
  3168. "description": "JSON Request body for the \"Confirmation of Funds Service\"\n",
  3169. "type": "object",
  3170. "required": [
  3171. "account",
  3172. "instructedAmount"
  3173. ],
  3174. "properties": {
  3175. "subAccount": {
  3176. "$ref": "#/components/schemas/subAccountId"
  3177. },
  3178. "payee": {
  3179. "description": "Name payee",
  3180. "type": "string",
  3181. "maxLength": 70
  3182. },
  3183. "instructedAmount": {
  3184. "$ref": "#/components/schemas/amount"
  3185. }
  3186. }
  3187. },
  3188. "consents": {
  3189. "description": "Content of the body of a consent request.\n",
  3190. "type": "object",
  3191. "required": [
  3192. "access",
  3193. "recurringIndicator",
  3194. "validUntil",
  3195. "frequencyPerDay",
  3196. "combinedServiceIndicator"
  3197. ],
  3198. "properties": {
  3199. "access": {
  3200. "$ref": "#/components/schemas/accountAccess"
  3201. },
  3202. "recurringIndicator": {
  3203. "$ref": "#/components/schemas/recurringIndicator"
  3204. },
  3205. "validUntil": {
  3206. "$ref": "#/components/schemas/validUntil"
  3207. },
  3208. "frequencyPerDay": {
  3209. "$ref": "#/components/schemas/frequencyPerDay"
  3210. },
  3211. "combinedServiceIndicator": {
  3212. "description": "If \"true\" indicates that a payment initiation service will be addressed in the same \"session\".\n",
  3213. "type": "boolean",
  3214. "example": false
  3215. }
  3216. }
  3217. },
  3218. "transactionAuthorisation": {
  3219. "description": "Content of the body of a Transaction Authorisation Request\n",
  3220. "type": "object",
  3221. "required": [
  3222. "scaAuthenticationData"
  3223. ],
  3224. "properties": {
  3225. "scaAuthenticationData": {
  3226. "$ref": "#/components/schemas/scaAuthenticationData"
  3227. }
  3228. }
  3229. },
  3230. "paymentInitiationStatusResponse-200_json": {
  3231. "description": "Body of the response for a successful payment initiation status request in case of an JSON based endpoint.",
  3232. "type": "object",
  3233. "required": [
  3234. "transactionStatus"
  3235. ],
  3236. "properties": {
  3237. "transactionStatus": {
  3238. "$ref": "#/components/schemas/transactionStatus"
  3239. }
  3240. }
  3241. },
  3242. "paymentInitiationStatusResponse-200_xml": {
  3243. "description": "Body of the response for a successful payment initiation status request in case of an XML based endpoint.\n\nThe status is returned as a pain.002 structure. \n\nurn:iso:std:iso:20022:tech:xsd:pain.002.001.03\n\nThe chosen XML schema of the Status Request is following the XML schema definitions of the original pain.001 schema.\n",
  3244. "type": "string"
  3245. },
  3246. "paymentInitationRequestResponse-201": {
  3247. "description": "Body of the response for a successful payment initiation request.",
  3248. "type": "object",
  3249. "required": [
  3250. "transactionStatus",
  3251. "paymentId",
  3252. "_links"
  3253. ],
  3254. "properties": {
  3255. "transactionStatus": {
  3256. "$ref": "#/components/schemas/transactionStatus"
  3257. },
  3258. "paymentId": {
  3259. "$ref": "#/components/schemas/paymentId"
  3260. },
  3261. "transactionFees": {
  3262. "$ref": "#/components/schemas/amount"
  3263. },
  3264. "transactionFeeIndicator": {
  3265. "$ref": "#/components/schemas/transactionFeeIndicator"
  3266. },
  3267. "_links": {
  3268. "$ref": "#/components/schemas/_linksPaymentInitiation"
  3269. },
  3270. "psuMessage": {
  3271. "$ref": "#/components/schemas/psuMessageText"
  3272. },
  3273. "tppMessages": {
  3274. "type": "array",
  3275. "items": {
  3276. "$ref": "#/components/schemas/tppMessage2XX"
  3277. }
  3278. }
  3279. }
  3280. },
  3281. "paymentInitiationCancelResponse-204_202": {
  3282. "description": "Body of the response for a successful cancel payment request.",
  3283. "type": "object",
  3284. "required": [
  3285. "transactionStatus"
  3286. ],
  3287. "properties": {
  3288. "transactionStatus": {
  3289. "$ref": "#/components/schemas/transactionStatus"
  3290. },
  3291. "_links": {
  3292. "$ref": "#/components/schemas/_linksPaymentInitiationCancel"
  3293. }
  3294. }
  3295. },
  3296. "paymentInitiationSctWithStatusResponse": {
  3297. "description": "JSON response body consistion of the corresponding SCT payment initation JSON body together with an optional transaction status field.\n",
  3298. "type": "object",
  3299. "required": [
  3300. "debtorAccount",
  3301. "instructedAmount",
  3302. "creditorAccount",
  3303. "creditorName"
  3304. ],
  3305. "properties": {
  3306. "endToEndIdentification": {
  3307. "type": "string",
  3308. "maxLength": 35
  3309. },
  3310. "debtorAccount": {
  3311. "$ref": "#/components/schemas/accountReference"
  3312. },
  3313. "instructedAmount": {
  3314. "$ref": "#/components/schemas/amount"
  3315. },
  3316. "creditorAccount": {
  3317. "$ref": "#/components/schemas/accountReference"
  3318. },
  3319. "creditorAgent": {
  3320. "$ref": "#/components/schemas/bicfi"
  3321. },
  3322. "creditorName": {
  3323. "$ref": "#/components/schemas/creditorName"
  3324. },
  3325. "creditorAddress": {
  3326. "$ref": "#/components/schemas/address"
  3327. },
  3328. "remittanceInformationUnstructured": {
  3329. "$ref": "#/components/schemas/remittanceInformationUnstructured"
  3330. },
  3331. "transactionStatus": {
  3332. "$ref": "#/components/schemas/transactionStatus"
  3333. }
  3334. }
  3335. },
  3336. "paymentInitiationItWithStatusResponse": {
  3337. "description": "JSON response body consistion of the corresponding Internal Transfer payment initation JSON body together with an optional transaction status field.\n",
  3338. "type": "object",
  3339. "required": [
  3340. "account",
  3341. "instructedAmount",
  3342. "currency",
  3343. "fromSubAccount",
  3344. "toSubAccount"
  3345. ],
  3346. "properties": {
  3347. "endToEndIdentification": {
  3348. "type": "string",
  3349. "maxLength": 35
  3350. },
  3351. "account": {
  3352. "$ref": "#/components/schemas/accountReference"
  3353. },
  3354. "instructedAmount": {
  3355. "$ref": "#/components/schemas/amount"
  3356. },
  3357. "currency": {
  3358. "$ref": "#/components/schemas/currencyCode"
  3359. },
  3360. "fromSubAccount": {
  3361. "$ref": "#/components/schemas/subAccountReference"
  3362. },
  3363. "toSubAccount": {
  3364. "$ref": "#/components/schemas/subAccountReference"
  3365. },
  3366. "remittanceInformationUnstructured": {
  3367. "type": "string",
  3368. "maxLength": 140
  3369. },
  3370. "transactionStatus": {
  3371. "$ref": "#/components/schemas/transactionStatus"
  3372. }
  3373. }
  3374. },
  3375. "scaStatusResponse": {
  3376. "description": "Body of the JSON response with SCA Status",
  3377. "type": "object",
  3378. "properties": {
  3379. "scaStatus": {
  3380. "$ref": "#/components/schemas/scaStatus"
  3381. }
  3382. }
  3383. },
  3384. "startScaprocessResponse": {
  3385. "description": "Body of the JSON response for a Start SCA authorisation request.",
  3386. "type": "object",
  3387. "required": [
  3388. "scaStatus",
  3389. "_links"
  3390. ],
  3391. "properties": {
  3392. "scaStatus": {
  3393. "$ref": "#/components/schemas/scaStatus"
  3394. },
  3395. "_links": {
  3396. "$ref": "#/components/schemas/_linksStartScaProcess"
  3397. },
  3398. "psuMessage": {
  3399. "$ref": "#/components/schemas/psuMessageText"
  3400. }
  3401. }
  3402. },
  3403. "consentsResponse-201": {
  3404. "description": "Body of the JSON response for a successful conset request.",
  3405. "type": "object",
  3406. "required": [
  3407. "consentStatus",
  3408. "consentId",
  3409. "_links"
  3410. ],
  3411. "properties": {
  3412. "consentStatus": {
  3413. "$ref": "#/components/schemas/consentStatus"
  3414. },
  3415. "consentId": {
  3416. "$ref": "#/components/schemas/consentId"
  3417. },
  3418. "_links": {
  3419. "$ref": "#/components/schemas/_linksConsents"
  3420. },
  3421. "message": {
  3422. "description": "Text to be displayed to the PSU, e.g. in a Decoupled SCA Approach.",
  3423. "type": "string",
  3424. "maxLength": 512
  3425. }
  3426. }
  3427. },
  3428. "consentStatusResponse-200": {
  3429. "description": "Body of the JSON response for a successful get status request for a consent.",
  3430. "type": "object",
  3431. "required": [
  3432. "consentStatus"
  3433. ],
  3434. "properties": {
  3435. "consentStatus": {
  3436. "$ref": "#/components/schemas/consentStatus"
  3437. }
  3438. }
  3439. },
  3440. "consentInformationResponse-200_json": {
  3441. "description": "Body of the JSON response for a successfull get consent request.",
  3442. "type": "object",
  3443. "required": [
  3444. "access",
  3445. "recurringIndicator",
  3446. "validUntil",
  3447. "frequencyPerDay",
  3448. "lastActionDate",
  3449. "consentStatus"
  3450. ],
  3451. "properties": {
  3452. "access": {
  3453. "$ref": "#/components/schemas/accountAccess"
  3454. },
  3455. "recurringIndicator": {
  3456. "$ref": "#/components/schemas/recurringIndicator"
  3457. },
  3458. "validUntil": {
  3459. "$ref": "#/components/schemas/validUntil"
  3460. },
  3461. "frequencyPerDay": {
  3462. "$ref": "#/components/schemas/frequencyPerDay"
  3463. },
  3464. "lastActionDate": {
  3465. "$ref": "#/components/schemas/lastActionDate"
  3466. },
  3467. "consentStatus": {
  3468. "$ref": "#/components/schemas/consentStatus"
  3469. }
  3470. }
  3471. },
  3472. "readAccountBalanceResponse-200": {
  3473. "description": "Body of the response for a successful read balance for an account request.",
  3474. "type": "object",
  3475. "required": [
  3476. "balances"
  3477. ],
  3478. "properties": {
  3479. "account": {
  3480. "$ref": "#/components/schemas/accountReference"
  3481. },
  3482. "balances": {
  3483. "$ref": "#/components/schemas/balanceList"
  3484. }
  3485. }
  3486. },
  3487. "transactionsResponse-200_json": {
  3488. "description": "Body of the JSON response for a successful read transaction list request.\nThis account report contains transactions resulting from the query parameters.\n",
  3489. "type": "object",
  3490. "properties": {
  3491. "account": {
  3492. "$ref": "#/components/schemas/accountReference"
  3493. },
  3494. "transactions": {
  3495. "$ref": "#/components/schemas/accountReport"
  3496. },
  3497. "balances": {
  3498. "$ref": "#/components/schemas/balanceList"
  3499. },
  3500. "_links": {
  3501. "$ref": "#/components/schemas/_linksDownload"
  3502. }
  3503. }
  3504. },
  3505. "_linksAll": {
  3506. "description": "A _link object with all availabel link types\n",
  3507. "type": "object",
  3508. "properties": {
  3509. "scaRedirect": {
  3510. "$ref": "#/components/schemas/hrefType"
  3511. },
  3512. "authoriseTransaction": {
  3513. "$ref": "#/components/schemas/hrefType"
  3514. },
  3515. "self": {
  3516. "$ref": "#/components/schemas/hrefType"
  3517. },
  3518. "status": {
  3519. "$ref": "#/components/schemas/hrefTypeStatus"
  3520. },
  3521. "scaStatus": {
  3522. "$ref": "#/components/schemas/hrefTypeSCAStatus"
  3523. },
  3524. "account": {
  3525. "$ref": "#/components/schemas/hrefTypeAccount"
  3526. },
  3527. "balances": {
  3528. "$ref": "#/components/schemas/hrefTypeBalances"
  3529. },
  3530. "transactions": {
  3531. "$ref": "#/components/schemas/hrefTypeTransactions"
  3532. },
  3533. "transactionDetails": {
  3534. "$ref": "#/components/schemas/hrefTypeTransactionDetails"
  3535. },
  3536. "first": {
  3537. "$ref": "#/components/schemas/hrefType"
  3538. },
  3539. "next": {
  3540. "$ref": "#/components/schemas/hrefType"
  3541. },
  3542. "previous": {
  3543. "$ref": "#/components/schemas/hrefType"
  3544. },
  3545. "last": {
  3546. "$ref": "#/components/schemas/hrefType"
  3547. },
  3548. "download": {
  3549. "$ref": "#/components/schemas/hrefType"
  3550. }
  3551. }
  3552. },
  3553. "_linksPaymentInitiation": {
  3554. "description": "A list of hyperlinks to be recognised by the TPP.\nBanco Carregosa only accepts scaRedirect.\n\nType of links admitted in this response:\n\n* 'scaRedirect': \n The ASPSP transmits the link to which to redirect the PSU browser.\n* 'self': \n The link to the payment initiation resource created by this request.\n This link can be used to retrieve the resource data.\n* 'status': \n The link to retrieve the transaction status of the payment initiation.\n* 'scaStatus': \n The link to retrieve the scaStatus of the corresponding authorisation sub-resource. \n This link is only contained, if an authorisation sub-resource has been already created.\n",
  3555. "type": "object",
  3556. "properties": {
  3557. "scaRedirect": {
  3558. "$ref": "#/components/schemas/hrefTypeSCARedirect"
  3559. },
  3560. "self": {
  3561. "$ref": "#/components/schemas/hrefType"
  3562. },
  3563. "status": {
  3564. "$ref": "#/components/schemas/hrefTypeStatus"
  3565. },
  3566. "scaStatus": {
  3567. "$ref": "#/components/schemas/hrefTypeSCAStatus"
  3568. }
  3569. },
  3570. "example": {
  3571. "scaRedirect": {
  3572. "href": "https://www.testbank.com/asdfasdfasdf"
  3573. },
  3574. "self": {
  3575. "href": "/V2/payments/sepa-credit-transfers/1234-wertiq-983"
  3576. }
  3577. }
  3578. },
  3579. "_linksStartScaProcess": {
  3580. "description": "A list of hyperlinks to be recognised by the TPP. The actual hyperlinks used in the \nresponse depend on the dynamical decisions of the ASPSP when processing the request.\n",
  3581. "type": "object",
  3582. "properties": {
  3583. "scaRedirect": {
  3584. "$ref": "#/components/schemas/hrefType"
  3585. },
  3586. "scaStatus": {
  3587. "$ref": "#/components/schemas/hrefType"
  3588. }
  3589. }
  3590. },
  3591. "_linksPaymentInitiation_IT": {
  3592. "description": "A list of hyperlinks to be recognised by the TPP.\nBanco Carregosa only accepts scaRedirect.\n\nType of links admitted in this response:\n * 'scaRedirect': \n The ASPSP transmits the link to which to redirect the PSU browser.\n * 'self': \n The link to the payment initiation resource created by this request. This link can be used to retrieve the resource data. \n * 'status': \n The link to retrieve the transaction status of the payment initiation.\n",
  3593. "type": "object",
  3594. "properties": {
  3595. "scaRedirect": {
  3596. "$ref": "#/components/schemas/hrefTypeSCARedirect"
  3597. },
  3598. "self": {
  3599. "$ref": "#/components/schemas/hrefType"
  3600. },
  3601. "status": {
  3602. "$ref": "#/components/schemas/hrefTypeStatus"
  3603. },
  3604. "scaStatus": {
  3605. "$ref": "#/components/schemas/hrefTypeSCAStatus"
  3606. }
  3607. }
  3608. },
  3609. "_linksPaymentInitiationCancel": {
  3610. "description": "A list of hyperlinks to be recognised by the TPP.\nBanco Carregosa only accepts scaRedirect.\n\nType of links admitted in this response:\n * 'scaRedirect': \n The ASPSP transmits the link to which to redirect the PSU browser.\n",
  3611. "type": "object",
  3612. "properties": {
  3613. "scaRedirect": {
  3614. "$ref": "#/components/schemas/hrefTypeSCARedirect"
  3615. }
  3616. }
  3617. },
  3618. "_linksDownload": {
  3619. "description": "A list of hyperlinks to be recognised by the TPP.\n\nType of links admitted in this response:\n - \"download\": a link to a resource, where the transaction report might be downloaded from in \n case where transaction reports have a huge size.\n",
  3620. "type": "object",
  3621. "required": [
  3622. "download"
  3623. ],
  3624. "properties": {
  3625. "download": {
  3626. "$ref": "#/components/schemas/hrefType"
  3627. }
  3628. }
  3629. },
  3630. "_linksConsents": {
  3631. "description": "A list of hyperlinks to be recognised by the TPP.\nBanco Carregosa only accepts scaRedirect.\n\nType of links admitted in this response:\n - 'scaRedirect': \n The ASPSP transmits the link to which to redirect the PSU browser.\n - 'self': \n The link to the Establish Account Information Consent resource created by this request. \n This link can be used to retrieve the resource data. \n - 'status': \n The link to retrieve the status of the account information consent.\n - 'scaStatus': The link to retrieve the scaStatus of the corresponding authorisation sub-resource. \n This link is only contained, if an authorisation sub-resource has been already created.\n",
  3632. "type": "object",
  3633. "properties": {
  3634. "scaRedirect": {
  3635. "$ref": "#/components/schemas/hrefTypeSCARedirect"
  3636. },
  3637. "self": {
  3638. "$ref": "#/components/schemas/hrefType"
  3639. },
  3640. "status": {
  3641. "$ref": "#/components/schemas/hrefType"
  3642. },
  3643. "scaStatus": {
  3644. "$ref": "#/components/schemas/hrefType"
  3645. }
  3646. }
  3647. },
  3648. "_linksAccountReport": {
  3649. "type": "object",
  3650. "required": [
  3651. "account"
  3652. ],
  3653. "properties": {
  3654. "account": {
  3655. "$ref": "#/components/schemas/hrefType"
  3656. },
  3657. "first": {
  3658. "$ref": "#/components/schemas/hrefType"
  3659. },
  3660. "next": {
  3661. "$ref": "#/components/schemas/hrefType"
  3662. },
  3663. "previous": {
  3664. "$ref": "#/components/schemas/hrefType"
  3665. },
  3666. "last": {
  3667. "$ref": "#/components/schemas/hrefType"
  3668. }
  3669. }
  3670. },
  3671. "_linksTransactionDetails": {
  3672. "type": "object",
  3673. "required": [
  3674. "transactionDetails"
  3675. ],
  3676. "properties": {
  3677. "transactionDetails": {
  3678. "$ref": "#/components/schemas/hrefType"
  3679. }
  3680. }
  3681. },
  3682. "_linksAccountDetails": {
  3683. "description": "Links to the account, which can be directly used for retrieving account information from this dedicated account.\n\nLinks to \"balances\" and/or \"transactions\"\n\nThese links are only supported, when the corresponding consent has been already granted.\n",
  3684. "type": "object",
  3685. "properties": {
  3686. "account": {
  3687. "$ref": "#/components/schemas/hrefTypeAccount"
  3688. },
  3689. "accountList": {
  3690. "$ref": "#/components/schemas/hrefTypeAccountList"
  3691. },
  3692. "balances": {
  3693. "$ref": "#/components/schemas/hrefTypeBalances"
  3694. },
  3695. "transactions": {
  3696. "$ref": "#/components/schemas/hrefTypeTransactions"
  3697. }
  3698. }
  3699. },
  3700. "_linksAccountList": {
  3701. "description": "Links to the account, which can be directly used for retrieving account information from this dedicated account.\n\nLinks to \"balances\" and/or \"transactions\"\n\nThese links are only supported, when the corresponding consent has been already granted.\n",
  3702. "type": "object",
  3703. "properties": {
  3704. "self": {
  3705. "$ref": "#/components/schemas/hrefTypeAccountList"
  3706. },
  3707. "balances": {
  3708. "$ref": "#/components/schemas/hrefTypeBalances"
  3709. },
  3710. "transactions": {
  3711. "$ref": "#/components/schemas/hrefTypeTransactions"
  3712. }
  3713. }
  3714. },
  3715. "tppMessageCategory": {
  3716. "description": "Category of the TPP message category",
  3717. "type": "string",
  3718. "enum": [
  3719. "ERROR",
  3720. "WARNING"
  3721. ]
  3722. },
  3723. "MessageCode2XX": {
  3724. "description": "Message codes for HTTP Error codes 2XX.",
  3725. "type": "string",
  3726. "enum": [
  3727. "WARNING"
  3728. ]
  3729. },
  3730. "MessageCode400": {
  3731. "description": "Message codes defined for HTTP Error code 400 (BAD_REQUEST).",
  3732. "type": "string",
  3733. "enum": [
  3734. "FORMAT_ERROR"
  3735. ]
  3736. },
  3737. "MessageCode401": {
  3738. "description": "Message codes defined for HTTP Error code 401 (UNAUTHORIZED).",
  3739. "type": "string",
  3740. "enum": [
  3741. "CERTIFICATE_INVALID",
  3742. "CERTIFICATE_EXPIRED",
  3743. "CERTIFICATE_BLOCKED",
  3744. "CERTIFICATE_REVOKE",
  3745. "CERTIFICATE_MISSING",
  3746. "SIGNATURE_INVALID",
  3747. "SIGNATURE_MISSING",
  3748. "CORPORATE_ID_INVALID",
  3749. "PSU_CREDENTIALS_INVALID",
  3750. "CONSENT_INVALID",
  3751. "CONSENT_EXPIRED",
  3752. "TOKEN_UNKNOWN",
  3753. "TOKEN_INVALID",
  3754. "TOKEN_EXPIRED"
  3755. ]
  3756. },
  3757. "MessageCode403": {
  3758. "description": "Message codes defined defined for HTTP Error code 403 (FORBIDDEN).",
  3759. "type": "string",
  3760. "enum": [
  3761. "CONSENT_UNKNOWN",
  3762. "SERVICE_BLOCKED",
  3763. "RESOURCE_UNKNOWN",
  3764. "RESOURCE_EXPIRED",
  3765. "PRODUCT_INVALID"
  3766. ]
  3767. },
  3768. "MessageCode404_AIS": {
  3769. "description": "Message codes defined for AIS for HTTP Error code 404 (NOT FOUND).",
  3770. "type": "string",
  3771. "enum": [
  3772. "RESOURCE_UNKNOWN"
  3773. ]
  3774. },
  3775. "MessageCode404_PIS": {
  3776. "description": "Message codes defined for PIS for HTTP Error code 404 (NOT FOUND).",
  3777. "type": "string",
  3778. "enum": [
  3779. "RESOURCE_UNKNOWN",
  3780. "PRODUCT_UNKNOWN"
  3781. ]
  3782. },
  3783. "MessageCode404_PIIS": {
  3784. "description": "Message codes defined for PIIS for HTTP Error code 404 (NOT FOUND).",
  3785. "type": "string",
  3786. "enum": [
  3787. "RESOURCE_UNKNOWN"
  3788. ]
  3789. },
  3790. "MessageCode405": {
  3791. "description": "Message codes defined for payment cancelations PIS for HTTP Error code 405 (METHOD NOT ALLOWED).",
  3792. "type": "string",
  3793. "enum": [
  3794. "SERVICE_INVALID"
  3795. ]
  3796. },
  3797. "MessageCode429_AIS": {
  3798. "description": "Message codes for HTTP Error code 429 (TOO MANY REQUESTS).",
  3799. "type": "string",
  3800. "enum": [
  3801. "ACCESS_EXCEEDED"
  3802. ]
  3803. },
  3804. "tppMessageText": {
  3805. "description": "Additional explaining text to the TPP.",
  3806. "type": "string",
  3807. "maxLength": 512
  3808. },
  3809. "tppMessage2XX": {
  3810. "type": "object",
  3811. "required": [
  3812. "category",
  3813. "code"
  3814. ],
  3815. "properties": {
  3816. "category": {
  3817. "$ref": "#/components/schemas/tppMessageCategory"
  3818. },
  3819. "code": {
  3820. "$ref": "#/components/schemas/MessageCode2XX"
  3821. },
  3822. "path": {
  3823. "type": "string"
  3824. },
  3825. "text": {
  3826. "$ref": "#/components/schemas/tppMessageText"
  3827. }
  3828. }
  3829. },
  3830. "tppMessage400": {
  3831. "type": "object",
  3832. "required": [
  3833. "category",
  3834. "code"
  3835. ],
  3836. "properties": {
  3837. "category": {
  3838. "$ref": "#/components/schemas/tppMessageCategory"
  3839. },
  3840. "code": {
  3841. "$ref": "#/components/schemas/MessageCode400"
  3842. },
  3843. "path": {
  3844. "type": "string"
  3845. },
  3846. "text": {
  3847. "$ref": "#/components/schemas/tppMessageText"
  3848. }
  3849. }
  3850. },
  3851. "tppMessage401": {
  3852. "type": "object",
  3853. "required": [
  3854. "category",
  3855. "code"
  3856. ],
  3857. "properties": {
  3858. "category": {
  3859. "$ref": "#/components/schemas/tppMessageCategory"
  3860. },
  3861. "code": {
  3862. "$ref": "#/components/schemas/MessageCode401"
  3863. },
  3864. "path": {
  3865. "type": "string"
  3866. },
  3867. "text": {
  3868. "$ref": "#/components/schemas/tppMessageText"
  3869. }
  3870. }
  3871. },
  3872. "tppMessage403": {
  3873. "type": "object",
  3874. "required": [
  3875. "category",
  3876. "code"
  3877. ],
  3878. "properties": {
  3879. "category": {
  3880. "$ref": "#/components/schemas/tppMessageCategory"
  3881. },
  3882. "code": {
  3883. "$ref": "#/components/schemas/MessageCode403"
  3884. },
  3885. "path": {
  3886. "type": "string"
  3887. },
  3888. "text": {
  3889. "$ref": "#/components/schemas/tppMessageText"
  3890. }
  3891. }
  3892. },
  3893. "tppMessage404_PIS": {
  3894. "type": "object",
  3895. "required": [
  3896. "category",
  3897. "code"
  3898. ],
  3899. "properties": {
  3900. "category": {
  3901. "$ref": "#/components/schemas/tppMessageCategory"
  3902. },
  3903. "code": {
  3904. "$ref": "#/components/schemas/MessageCode404_PIS"
  3905. },
  3906. "path": {
  3907. "type": "string"
  3908. },
  3909. "text": {
  3910. "$ref": "#/components/schemas/tppMessageText"
  3911. }
  3912. }
  3913. },
  3914. "tppMessage404_AIS": {
  3915. "type": "object",
  3916. "required": [
  3917. "category",
  3918. "code"
  3919. ],
  3920. "properties": {
  3921. "category": {
  3922. "$ref": "#/components/schemas/tppMessageCategory"
  3923. },
  3924. "code": {
  3925. "$ref": "#/components/schemas/MessageCode404_AIS"
  3926. },
  3927. "path": {
  3928. "type": "string"
  3929. },
  3930. "text": {
  3931. "$ref": "#/components/schemas/tppMessageText"
  3932. }
  3933. }
  3934. },
  3935. "tppMessage404_PIIS": {
  3936. "type": "object",
  3937. "required": [
  3938. "category",
  3939. "code"
  3940. ],
  3941. "properties": {
  3942. "category": {
  3943. "$ref": "#/components/schemas/tppMessageCategory"
  3944. },
  3945. "code": {
  3946. "$ref": "#/components/schemas/MessageCode404_PIIS"
  3947. },
  3948. "path": {
  3949. "type": "string"
  3950. },
  3951. "text": {
  3952. "$ref": "#/components/schemas/tppMessageText"
  3953. }
  3954. }
  3955. },
  3956. "tppMessage405": {
  3957. "type": "object",
  3958. "required": [
  3959. "category",
  3960. "code"
  3961. ],
  3962. "properties": {
  3963. "category": {
  3964. "$ref": "#/components/schemas/tppMessageCategory"
  3965. },
  3966. "code": {
  3967. "$ref": "#/components/schemas/MessageCode405"
  3968. },
  3969. "path": {
  3970. "type": "string"
  3971. },
  3972. "text": {
  3973. "$ref": "#/components/schemas/tppMessageText"
  3974. }
  3975. }
  3976. },
  3977. "tppMessage429_AIS": {
  3978. "type": "object",
  3979. "required": [
  3980. "category",
  3981. "code"
  3982. ],
  3983. "properties": {
  3984. "category": {
  3985. "$ref": "#/components/schemas/tppMessageCategory"
  3986. },
  3987. "code": {
  3988. "$ref": "#/components/schemas/MessageCode429_AIS"
  3989. },
  3990. "path": {
  3991. "type": "string"
  3992. },
  3993. "text": {
  3994. "$ref": "#/components/schemas/tppMessageText"
  3995. }
  3996. }
  3997. },
  3998. "tppErrorTitle": {
  3999. "description": "Short human readable description of error type. \nCould be in local language. \nTo be provided by ASPSPs.\n",
  4000. "type": "string",
  4001. "maxLength": 70
  4002. },
  4003. "tppErrorDetail": {
  4004. "description": "Detailed human readable text specific to this instance of the error. \nXPath might be used to point to the issue generating the error in addition.\nRemark for Future: In future, a dedicated field might be introduced for the XPath.\n",
  4005. "type": "string",
  4006. "maxLength": 512
  4007. },
  4008. "Error400": {
  4009. "description": "Specific definition of reporting error information in case of a HTTP error code 400.\n",
  4010. "type": "object",
  4011. "properties": {
  4012. "tppMessages": {
  4013. "type": "array",
  4014. "items": {
  4015. "$ref": "#/components/schemas/tppMessage400"
  4016. }
  4017. }
  4018. }
  4019. },
  4020. "Error401": {
  4021. "description": "Specific definition of reporting error information in case of a HTTP error code 401.\n",
  4022. "type": "object",
  4023. "properties": {
  4024. "tppMessages": {
  4025. "type": "array",
  4026. "items": {
  4027. "$ref": "#/components/schemas/tppMessage401"
  4028. }
  4029. }
  4030. }
  4031. },
  4032. "Error403": {
  4033. "description": "Specific definition of reporting error information in case of a HTTP error code 403.\n",
  4034. "type": "object",
  4035. "properties": {
  4036. "tppMessages": {
  4037. "type": "array",
  4038. "items": {
  4039. "$ref": "#/components/schemas/tppMessage403"
  4040. }
  4041. }
  4042. }
  4043. },
  4044. "Error404_NG_PIS": {
  4045. "description": "NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.\n",
  4046. "type": "object",
  4047. "properties": {
  4048. "tppMessages": {
  4049. "type": "array",
  4050. "items": {
  4051. "$ref": "#/components/schemas/tppMessage404_PIS"
  4052. }
  4053. },
  4054. "_links": {
  4055. "$ref": "#/components/schemas/_linksAll"
  4056. }
  4057. }
  4058. },
  4059. "Error404_NG_AIS": {
  4060. "description": "NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.\n",
  4061. "type": "object",
  4062. "properties": {
  4063. "tppMessages": {
  4064. "type": "array",
  4065. "items": {
  4066. "$ref": "#/components/schemas/tppMessage404_AIS"
  4067. }
  4068. },
  4069. "_links": {
  4070. "$ref": "#/components/schemas/_linksAccountDetails"
  4071. }
  4072. }
  4073. },
  4074. "Error404_NG_PIIS": {
  4075. "description": "NextGenPSD2 specific definition of reporting error information in case of a HTTP error code 404.\n",
  4076. "type": "object",
  4077. "properties": {
  4078. "tppMessages": {
  4079. "type": "array",
  4080. "items": {
  4081. "$ref": "#/components/schemas/tppMessage404_PIIS"
  4082. }
  4083. },
  4084. "_links": {
  4085. "$ref": "#/components/schemas/_linksAll"
  4086. }
  4087. }
  4088. },
  4089. "Error405": {
  4090. "description": "Specific definition of reporting error information in case of a HTTP error code 401.\n",
  4091. "type": "object",
  4092. "properties": {
  4093. "tppMessages": {
  4094. "type": "array",
  4095. "items": {
  4096. "$ref": "#/components/schemas/tppMessage405"
  4097. }
  4098. }
  4099. }
  4100. },
  4101. "Error429_NG_AIS": {
  4102. "description": "Specific definition of reporting error information in case of a HTTP error code 429.\n",
  4103. "type": "object",
  4104. "properties": {
  4105. "tppMessages": {
  4106. "type": "array",
  4107. "items": {
  4108. "$ref": "#/components/schemas/tppMessage429_AIS"
  4109. }
  4110. },
  4111. "_links": {
  4112. "$ref": "#/components/schemas/_linksAll"
  4113. }
  4114. },
  4115. "example": [
  4116. {
  4117. "category": "ERROR",
  4118. "code": "ACCESS_EXCEEDED",
  4119. "text": "additional text information of the ASPSP up to 512 characters"
  4120. }
  4121. ]
  4122. }
  4123. },
  4124. "parameters": {
  4125. "paymentService": {
  4126. "name": "payment-service",
  4127. "in": "path",
  4128. "description": "Payment service:\n\nPossible values are:\n* payments\n",
  4129. "required": true,
  4130. "schema": {
  4131. "type": "string",
  4132. "enum": [
  4133. "payments"
  4134. ]
  4135. }
  4136. },
  4137. "paymentProduct": {
  4138. "name": "payment-product",
  4139. "in": "path",
  4140. "description": "The addressed payment product endpoint, e.g. for SEPA Credit Transfers (SCT).\n\nThe following payment products are supported:\n - sepa-credit-transfers\n - internal-transfers\n",
  4141. "required": true,
  4142. "schema": {
  4143. "type": "string",
  4144. "enum": [
  4145. "sepa-credit-transfers",
  4146. "internal-transfers"
  4147. ]
  4148. }
  4149. },
  4150. "paymentId": {
  4151. "name": "paymentId",
  4152. "in": "path",
  4153. "description": "Resource identification of the generated payment initiation resource.",
  4154. "required": true,
  4155. "schema": {
  4156. "$ref": "#/components/schemas/paymentId"
  4157. }
  4158. },
  4159. "cancellationId": {
  4160. "name": "cancellationId",
  4161. "in": "path",
  4162. "description": "Identification for cancellation resource.",
  4163. "required": true,
  4164. "schema": {
  4165. "$ref": "#/components/schemas/cancellationId"
  4166. }
  4167. },
  4168. "authorisationId": {
  4169. "name": "authorisationId",
  4170. "in": "path",
  4171. "description": "Resource identification of the related SCA.",
  4172. "required": true,
  4173. "schema": {
  4174. "$ref": "#/components/schemas/authorisationId"
  4175. }
  4176. },
  4177. "accountId": {
  4178. "name": "accountId",
  4179. "in": "path",
  4180. "description": "This identification is denoting the addressed account. \nThe accountId is retrieved by using a \"Read Account List\" call. \nThe accountId is the \"id\" attribute of the account structure. \nIts value is constant at least throughout the lifecycle of a given consent.\n",
  4181. "required": true,
  4182. "schema": {
  4183. "$ref": "#/components/schemas/accountId"
  4184. }
  4185. },
  4186. "resourceId": {
  4187. "name": "resourceId",
  4188. "in": "path",
  4189. "description": "This identification is given by the attribute resourceId of the corresponding entry of a transaction list.\n",
  4190. "required": true,
  4191. "schema": {
  4192. "$ref": "#/components/schemas/resourceId"
  4193. }
  4194. },
  4195. "consentId_PATH": {
  4196. "name": "consentId",
  4197. "in": "path",
  4198. "description": "ID of the corresponding consent object as returned by an Account Information Consent Request.\n",
  4199. "required": true,
  4200. "schema": {
  4201. "$ref": "#/components/schemas/consentId"
  4202. }
  4203. },
  4204. "consentId_HEADER_optional": {
  4205. "name": "ConsentId",
  4206. "in": "header",
  4207. "description": "This data element may be contained, if the payment initiation transaction is part of a session, i.e. combined AIS/PIS/PIIS service.\nThis then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.\n",
  4208. "required": false,
  4209. "schema": {
  4210. "$ref": "#/components/schemas/consentId"
  4211. }
  4212. },
  4213. "consentId_HEADER_mandatory": {
  4214. "name": "ConsentId",
  4215. "in": "header",
  4216. "description": "This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.\n",
  4217. "required": true,
  4218. "schema": {
  4219. "$ref": "#/components/schemas/consentId"
  4220. }
  4221. },
  4222. "withBalanceQuery": {
  4223. "name": "withBalance",
  4224. "in": "query",
  4225. "description": "Ignored by the ASPSP. \n",
  4226. "required": false,
  4227. "schema": {
  4228. "type": "boolean"
  4229. }
  4230. },
  4231. "dateFrom": {
  4232. "name": "dateFrom",
  4233. "in": "query",
  4234. "description": "Conditional: Starting date (inclusive the date dateFrom) of the transaction list, mandated if no delta access is required.\n\nFor booked transactions, the relevant date is the booking date. \n\nFor pending transactions, the relevant date is the entry date, which may not be transparent \nneither in this API nor other channels of the ASPSP.\n",
  4235. "required": false,
  4236. "schema": {
  4237. "type": "string",
  4238. "format": "date"
  4239. }
  4240. },
  4241. "dateTo": {
  4242. "name": "dateTo",
  4243. "in": "query",
  4244. "description": "End date (inclusive the data dateTo) of the transaction list, default is \"now\" if not given. \n\nMight be ignored if a delta function is used.\n\nFor booked transactions, the relevant date is the booking date. \n\nFor pending transactions, the relevant date is the entry date, which may not be transparent \nneither in this API nor other channels of the ASPSP.\n",
  4245. "required": false,
  4246. "schema": {
  4247. "type": "string",
  4248. "format": "date"
  4249. }
  4250. },
  4251. "entryReferenceFrom": {
  4252. "name": "entryReferenceFrom",
  4253. "in": "query",
  4254. "description": "This data attribute is indicating that the AISP is in favour to get all transactions after \nthe transaction with identification entryReferenceFrom alternatively to the above defined period. \nThis is a implementation of a delta access. \nIf this data element is contained, the entries \"dateFrom\" and \"dateTo\" might be ignored by the ASPSP \nif a delta report is supported.\n\nOptional if supported by API provider.\n",
  4255. "required": false,
  4256. "schema": {
  4257. "type": "string"
  4258. }
  4259. },
  4260. "bookingStatus": {
  4261. "name": "bookingStatus",
  4262. "in": "query",
  4263. "description": "Permitted codes are \n * \"booked\",\n * \"pending\" and \n * \"both\"\n\"booked\" shall be supported by the ASPSP.\nTo support the \"pending\" and \"both\" feature is optional for the ASPSP, \nError code if not supported in the online banking frontend\n",
  4264. "required": true,
  4265. "schema": {
  4266. "type": "string",
  4267. "enum": [
  4268. "booked",
  4269. "pending",
  4270. "both"
  4271. ]
  4272. }
  4273. },
  4274. "deltaList": {
  4275. "name": "deltaList",
  4276. "in": "query",
  4277. "description": "This data attribute is indicating that the AISP is in favour to get all transactions after the last report access for this PSU on the addressed account. This is another implementation of a delta access-report.\nThis delta indicator might be rejected by the ASPSP if this function is not supported.\nOptional if supported by API provider",
  4278. "schema": {
  4279. "type": "boolean"
  4280. }
  4281. },
  4282. "X-Request-ID": {
  4283. "name": "X-Request-ID",
  4284. "in": "header",
  4285. "description": "ID of the request, unique to the call, as determined by the initiating party.",
  4286. "required": true,
  4287. "example": "99391c7e-ad88-49ec-a2ad-99ddcb1f7721",
  4288. "schema": {
  4289. "type": "string",
  4290. "format": "uuid"
  4291. }
  4292. },
  4293. "Digest": {
  4294. "name": "Digest",
  4295. "in": "header",
  4296. "description": "Is contained if and only if the \"Signature\" element is contained in the header of the request.",
  4297. "schema": {
  4298. "type": "string"
  4299. },
  4300. "required": false,
  4301. "example": "SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A="
  4302. },
  4303. "Signature": {
  4304. "name": "Signature",
  4305. "in": "header",
  4306. "description": "A signature of the request by the TPP on application level. This might be mandated by ASPSP.\n",
  4307. "schema": {
  4308. "type": "string"
  4309. },
  4310. "required": false,
  4311. "example": "keyId=\"SN=9FA1,CA=CN=D-TRUST%20CA%202-1%202015,O=D-Trust%20GmbH,C=DE\",algorithm=\"rsa-sha256\", headers=\"Digest X-Request-ID PSU-ID TPP-Redirect-URI Date\", signature=\"Base64(RSA-SHA256(signing string))\"\n"
  4312. },
  4313. "TPP-Signature-Certificate": {
  4314. "name": "TPP-Signature-Certificate",
  4315. "in": "header",
  4316. "description": "The certificate used for signing the request, in base64 encoding. \nMust be contained if a signature is contained.\n",
  4317. "schema": {
  4318. "type": "string",
  4319. "format": "byte"
  4320. },
  4321. "required": false
  4322. },
  4323. "TPP-Redirect-Preferred": {
  4324. "name": "TPP-Redirect-Preferred",
  4325. "in": "header",
  4326. "description": "Ignored by ASPSP\n",
  4327. "schema": {
  4328. "type": "string",
  4329. "enum": [
  4330. "true",
  4331. "false"
  4332. ]
  4333. },
  4334. "required": false
  4335. },
  4336. "TPP-Redirect-URI": {
  4337. "name": "TPP-Redirect-URI",
  4338. "in": "header",
  4339. "description": "URI of the TPP, where the transaction flow shall be redirected to after a Redirect.\n\nIt is recommended to always use this header field.\n\n**Remark for Future:** \nThis field might be changed to mandatory in the next version of the specification.\n",
  4340. "schema": {
  4341. "type": "string",
  4342. "format": "uri"
  4343. },
  4344. "required": false
  4345. },
  4346. "TPP-Nok-Redirect-URI": {
  4347. "name": "TPP-Nok-Redirect-URI",
  4348. "in": "header",
  4349. "description": "Ignored by the ASPSP.\n",
  4350. "schema": {
  4351. "type": "string",
  4352. "format": "uri"
  4353. },
  4354. "required": false
  4355. },
  4356. "TPP-Explicit-Authorisation-Preferred": {
  4357. "name": "TPP-Explicit-Authorisation-Preferred",
  4358. "in": "header",
  4359. "description": "Ignored by the ASPSP. TPP should assume a direct authorisation of the transaction in the next step.\n",
  4360. "schema": {
  4361. "type": "string",
  4362. "enum": [
  4363. "true",
  4364. "false"
  4365. ]
  4366. },
  4367. "required": false
  4368. },
  4369. "PSU-ID": {
  4370. "name": "PSU-ID",
  4371. "in": "header",
  4372. "description": "Client ID of the PSU in the ASPSP client interface. Might be mandated in the ASPSP's documentation.\nIs not contained if an OAuth2 based authentication was performed in a pre-step or an OAuth2 based SCA was performed in an preceeding\nAIS service in the same session.\n",
  4373. "schema": {
  4374. "type": "string"
  4375. },
  4376. "required": false,
  4377. "example": "PSU-1234"
  4378. },
  4379. "PSU-ID-Type": {
  4380. "name": "PSU-ID-Type",
  4381. "in": "header",
  4382. "description": "Type of the PSU-ID, needed in scenarios where PSUs have several PSU-IDs as access possibility.\n",
  4383. "schema": {
  4384. "type": "string"
  4385. },
  4386. "required": false
  4387. },
  4388. "PSU-Corporate-ID": {
  4389. "name": "PSU-Corporate-ID",
  4390. "in": "header",
  4391. "description": "Might be mandated in the ASPSP's documentation. Only used in a corporate context.\n",
  4392. "schema": {
  4393. "type": "string"
  4394. },
  4395. "required": false
  4396. },
  4397. "PSU-Corporate-ID-Type": {
  4398. "name": "PSU-Corporate-ID-Type",
  4399. "in": "header",
  4400. "description": "Might be mandated in the ASPSP's documentation. Only used in a corporate context.\n",
  4401. "schema": {
  4402. "type": "string"
  4403. },
  4404. "required": false
  4405. },
  4406. "PSU-IP-Address_mandatory": {
  4407. "name": "PSU-IP-Address",
  4408. "in": "header",
  4409. "description": "The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP.\n",
  4410. "schema": {
  4411. "type": "string",
  4412. "format": "ipv4"
  4413. },
  4414. "required": true,
  4415. "example": "192.168.8.78"
  4416. },
  4417. "PSU-IP-Address_optional": {
  4418. "name": "PSU-IP-Address",
  4419. "in": "header",
  4420. "description": "The forwarded IP Address header field consists of the corresponding http request IP Address field between PSU and TPP.\n",
  4421. "schema": {
  4422. "type": "string",
  4423. "format": "ipv4"
  4424. },
  4425. "required": false,
  4426. "example": "192.168.8.78"
  4427. },
  4428. "PSU-IP-Address_conditionalForAis": {
  4429. "name": "PSU-IP-Address",
  4430. "in": "header",
  4431. "description": "The forwarded IP Address header field consists of the corresponding HTTP request \nIP Address field between PSU and TPP. \nIt shall be contained if and only if this request was actively initiated by the PSU.\n",
  4432. "schema": {
  4433. "type": "string",
  4434. "format": "ipv4"
  4435. },
  4436. "required": false,
  4437. "example": "192.168.8.78"
  4438. },
  4439. "PSU-IP-Port": {
  4440. "name": "PSU-IP-Port",
  4441. "in": "header",
  4442. "description": "The forwarded IP Port header field consists of the corresponding HTTP request IP Port field between PSU and TPP, if available.\n",
  4443. "schema": {
  4444. "type": "string"
  4445. },
  4446. "required": false,
  4447. "example": "1234"
  4448. },
  4449. "PSU-Accept": {
  4450. "name": "PSU-Accept",
  4451. "in": "header",
  4452. "description": "The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.\n",
  4453. "schema": {
  4454. "type": "string"
  4455. },
  4456. "required": false
  4457. },
  4458. "PSU-Accept-Charset": {
  4459. "name": "PSU-Accept-Charset",
  4460. "in": "header",
  4461. "description": "The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.\n",
  4462. "schema": {
  4463. "type": "string"
  4464. },
  4465. "required": false
  4466. },
  4467. "PSU-Accept-Encoding": {
  4468. "name": "PSU-Accept-Encoding",
  4469. "in": "header",
  4470. "description": "The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.\n",
  4471. "schema": {
  4472. "type": "string"
  4473. },
  4474. "required": false
  4475. },
  4476. "PSU-Accept-Language": {
  4477. "name": "PSU-Accept-Language",
  4478. "in": "header",
  4479. "description": "The forwarded IP Accept header fields consist of the corresponding HTTP request Accept header fields between PSU and TPP, if available.\n",
  4480. "schema": {
  4481. "type": "string"
  4482. },
  4483. "required": false
  4484. },
  4485. "PSU-User-Agent": {
  4486. "name": "PSU-User-Agent",
  4487. "in": "header",
  4488. "description": "The forwarded Agent header field of the HTTP request between PSU and TPP, if available.\n",
  4489. "schema": {
  4490. "type": "string"
  4491. },
  4492. "required": false
  4493. },
  4494. "PSU-Http-Method": {
  4495. "name": "PSU-Http-Method",
  4496. "in": "header",
  4497. "description": "HTTP method used at the PSU ? TPP interface, if available.\nValid values are:\n* GET\n* POST\n* PUT\n* PATCH\n* DELETE\n",
  4498. "schema": {
  4499. "type": "string",
  4500. "enum": [
  4501. "GET",
  4502. "POST",
  4503. "PUT",
  4504. "PATCH",
  4505. "DELETE"
  4506. ]
  4507. },
  4508. "required": false
  4509. },
  4510. "PSU-Device-ID": {
  4511. "name": "PSU-Device-ID",
  4512. "in": "header",
  4513. "description": "UUID (Universally Unique Identifier) for a device, which is used by the PSU, if available.\nUUID identifies either a device or a device dependant application installation.\nIn case of an installation identification this ID need to be unaltered until removal from device.\n",
  4514. "schema": {
  4515. "type": "string",
  4516. "format": "uuid"
  4517. },
  4518. "required": false,
  4519. "example": "99435c7e-ad88-49ec-a2ad-99ddcb1f5555"
  4520. },
  4521. "PSU-Geo-Location": {
  4522. "name": "PSU-Geo-Location",
  4523. "in": "header",
  4524. "description": "The forwarded Geo Location of the corresponding http request between PSU and TPP if available.\n",
  4525. "schema": {
  4526. "type": "string",
  4527. "pattern": "(GEO:)[0-9]{1,3}\\.[-][0-9]{6}\\,[-][0-9]{1,3}\\.[0-9]{6}"
  4528. },
  4529. "required": false,
  4530. "example": "GEO:52.506931,13.144558"
  4531. }
  4532. },
  4533. "requestBodies": {
  4534. "paymentInitiation": {
  4535. "description": "",
  4536. "required": true,
  4537. "content": {
  4538. "application/json": {
  4539. "schema": {
  4540. "oneOf": [
  4541. {
  4542. "$ref": "#/components/schemas/paymentInitiationSct_json"
  4543. },
  4544. {
  4545. "$ref": "#/components/schemas/paymentInitiationIt_json"
  4546. }
  4547. ]
  4548. },
  4549. "examples": {
  4550. "Example 1: 'payments' - 'sepa-credit-transfers'": {
  4551. "$ref": "#/components/examples/paymentInitiationSctBody_payments_json"
  4552. },
  4553. "Example 2: 'payments' - 'internal-transfers'": {
  4554. "$ref": "#/components/examples/paymentInitiationItBody_payments_json"
  4555. }
  4556. }
  4557. }
  4558. }
  4559. },
  4560. "confirmationOfFunds": {
  4561. "description": "When subaccount reference is missing funds availability is checked against main subaccount.\n",
  4562. "content": {
  4563. "application/json": {
  4564. "schema": {
  4565. "$ref": "#/components/schemas/confirmationOfFunds"
  4566. },
  4567. "examples": {
  4568. "Example": {
  4569. "$ref": "#/components/examples/confirmationOfFundsExample"
  4570. }
  4571. }
  4572. }
  4573. },
  4574. "required": true
  4575. },
  4576. "consents": {
  4577. "description": "Requestbody for a consents request\n",
  4578. "content": {
  4579. "application/json": {
  4580. "schema": {
  4581. "$ref": "#/components/schemas/consents"
  4582. },
  4583. "examples": {
  4584. "Consent Request on Dedicated Accounts": {
  4585. "$ref": "#/components/examples/consentsExample_DedicatedAccounts"
  4586. },
  4587. "Consent on Account List of Available Accounts": {
  4588. "$ref": "#/components/examples/consentsExample_AccountList"
  4589. },
  4590. "Consent Request on Account List or without Indication of dedicated Accounts": {
  4591. "$ref": "#/components/examples/consentsExample_without_Accounts"
  4592. }
  4593. }
  4594. }
  4595. }
  4596. }
  4597. },
  4598. "headers": {
  4599. "X-Request-ID": {
  4600. "description": "ID of the request, unique to the call, as determined by the initiating party.",
  4601. "required": true,
  4602. "example": "99391c7e-ad88-49ec-a2ad-99ddcb1f7721",
  4603. "schema": {
  4604. "type": "string",
  4605. "format": "uuid"
  4606. }
  4607. },
  4608. "ASPSP-SCA-Approach": {
  4609. "description": "This data element must be contained, if the SCA Approach is already fixed.\nPossible values are\n * EMBEDDED\n * DECOUPLED\n * REDIRECT\nThe OAuth SCA approach will be subsumed by REDIRECT.\n",
  4610. "schema": {
  4611. "type": "string",
  4612. "enum": [
  4613. "EMBEDDED",
  4614. "DECOUPLED",
  4615. "REDIRECT"
  4616. ],
  4617. "example": "EMBEDDED"
  4618. },
  4619. "required": false
  4620. },
  4621. "Location": {
  4622. "description": "Location of the created resource.\n",
  4623. "schema": {
  4624. "type": "string",
  4625. "format": "url"
  4626. },
  4627. "required": false
  4628. }
  4629. },
  4630. "responses": {
  4631. "OK_200_PaymentInitiationInformation": {
  4632. "description": "OK",
  4633. "headers": {
  4634. "X-Request-ID": {
  4635. "$ref": "#/components/headers/X-Request-ID"
  4636. }
  4637. },
  4638. "content": {
  4639. "application/json": {
  4640. "schema": {
  4641. "oneOf": [
  4642. {
  4643. "$ref": "#/components/schemas/paymentInitiationSctWithStatusResponse"
  4644. },
  4645. {
  4646. "$ref": "#/components/schemas/paymentInitiationItWithStatusResponse"
  4647. }
  4648. ]
  4649. }
  4650. }
  4651. }
  4652. },
  4653. "OK_200_PaymentInitiationStatus": {
  4654. "description": "OK",
  4655. "headers": {
  4656. "X-Request-ID": {
  4657. "$ref": "#/components/headers/X-Request-ID"
  4658. }
  4659. },
  4660. "content": {
  4661. "application/json": {
  4662. "schema": {
  4663. "$ref": "#/components/schemas/paymentInitiationStatusResponse-200_json"
  4664. },
  4665. "examples": {
  4666. "simple": {
  4667. "$ref": "#/components/examples/paymentInitiationStatusResponse_json_Simple"
  4668. },
  4669. "extended": {
  4670. "$ref": "#/components/examples/paymentInitiationStatusResponse_json_Extended"
  4671. }
  4672. }
  4673. }
  4674. }
  4675. },
  4676. "OK_200_Authorisations": {
  4677. "description": "OK",
  4678. "headers": {
  4679. "X-Request-ID": {
  4680. "$ref": "#/components/headers/X-Request-ID"
  4681. }
  4682. },
  4683. "content": {
  4684. "application/json": {
  4685. "schema": {
  4686. "$ref": "#/components/schemas/authorisations"
  4687. },
  4688. "examples": {
  4689. "Example": {
  4690. "$ref": "#/components/examples/authorisationListExample"
  4691. }
  4692. }
  4693. }
  4694. }
  4695. },
  4696. "OK_200_ScaStatus": {
  4697. "description": "OK",
  4698. "headers": {
  4699. "X-Request-ID": {
  4700. "$ref": "#/components/headers/X-Request-ID"
  4701. }
  4702. },
  4703. "content": {
  4704. "application/json": {
  4705. "schema": {
  4706. "$ref": "#/components/schemas/scaStatusResponse"
  4707. }
  4708. }
  4709. }
  4710. },
  4711. "OK_200_AccountList": {
  4712. "description": "OK",
  4713. "headers": {
  4714. "X-Request-ID": {
  4715. "$ref": "#/components/headers/X-Request-ID"
  4716. }
  4717. },
  4718. "content": {
  4719. "application/json": {
  4720. "schema": {
  4721. "$ref": "#/components/schemas/accountList"
  4722. },
  4723. "examples": {
  4724. "Example 1": {
  4725. "$ref": "#/components/examples/accountListExample1"
  4726. },
  4727. "Example 2": {
  4728. "$ref": "#/components/examples/accountListExample2"
  4729. },
  4730. "Example 3": {
  4731. "$ref": "#/components/examples/accountListExample3"
  4732. }
  4733. }
  4734. }
  4735. }
  4736. },
  4737. "OK_200_CancellationList": {
  4738. "description": "OK",
  4739. "headers": {
  4740. "X-Request-ID": {
  4741. "$ref": "#/components/headers/X-Request-ID"
  4742. }
  4743. },
  4744. "content": {
  4745. "application/json": {
  4746. "schema": {
  4747. "$ref": "#/components/schemas/cancellationList"
  4748. },
  4749. "examples": {
  4750. "Example 1": {
  4751. "$ref": "#/components/examples/cancellationListExample"
  4752. }
  4753. }
  4754. }
  4755. }
  4756. },
  4757. "OK_200_TransactionDetails": {
  4758. "description": "OK",
  4759. "headers": {
  4760. "X-Request-ID": {
  4761. "$ref": "#/components/headers/X-Request-ID"
  4762. }
  4763. },
  4764. "content": {
  4765. "application/json": {
  4766. "schema": {
  4767. "$ref": "#/components/schemas/transactionDetails"
  4768. },
  4769. "examples": {
  4770. "Example": {
  4771. "$ref": "#/components/examples/transactionDetailsExample"
  4772. }
  4773. }
  4774. }
  4775. }
  4776. },
  4777. "OK_200_Balances": {
  4778. "description": "OK",
  4779. "headers": {
  4780. "X-Request-ID": {
  4781. "$ref": "#/components/headers/X-Request-ID"
  4782. }
  4783. },
  4784. "content": {
  4785. "application/json": {
  4786. "schema": {
  4787. "$ref": "#/components/schemas/readAccountBalanceResponse-200"
  4788. },
  4789. "examples": {
  4790. "Example 1: Multicurrency Account": {
  4791. "$ref": "#/components/examples/balancesExample2_MulticurrencyAcount"
  4792. }
  4793. }
  4794. }
  4795. }
  4796. },
  4797. "OK_200_AccountsTransactions": {
  4798. "description": "OK",
  4799. "headers": {
  4800. "X-Request-ID": {
  4801. "$ref": "#/components/headers/X-Request-ID"
  4802. }
  4803. },
  4804. "content": {
  4805. "application/json": {
  4806. "schema": {
  4807. "$ref": "#/components/schemas/transactionsResponse-200_json"
  4808. },
  4809. "examples": {
  4810. "Example 1": {
  4811. "$ref": "#/components/examples/transactionsExample1_RegularAccount_json"
  4812. }
  4813. }
  4814. }
  4815. }
  4816. },
  4817. "OK_200_ConsentInformation": {
  4818. "description": "OK",
  4819. "headers": {
  4820. "X-Request-ID": {
  4821. "$ref": "#/components/headers/X-Request-ID"
  4822. }
  4823. },
  4824. "content": {
  4825. "application/json": {
  4826. "schema": {
  4827. "$ref": "#/components/schemas/consentInformationResponse-200_json"
  4828. },
  4829. "examples": {
  4830. "Example": {
  4831. "$ref": "#/components/examples/consentsInformationResponseExample"
  4832. }
  4833. }
  4834. }
  4835. }
  4836. },
  4837. "OK_200_ConsentStatus": {
  4838. "description": "OK",
  4839. "headers": {
  4840. "X-Request-ID": {
  4841. "$ref": "#/components/headers/X-Request-ID"
  4842. }
  4843. },
  4844. "content": {
  4845. "application/json": {
  4846. "schema": {
  4847. "$ref": "#/components/schemas/consentStatusResponse-200"
  4848. },
  4849. "examples": {
  4850. "Example": {
  4851. "$ref": "#/components/examples/consentStatusResponseExample1"
  4852. }
  4853. }
  4854. }
  4855. }
  4856. },
  4857. "OK_200_ConfirmationOfFunds": {
  4858. "description": "OK",
  4859. "headers": {
  4860. "Location": {
  4861. "$ref": "#/components/headers/Location"
  4862. },
  4863. "X-Request-ID": {
  4864. "$ref": "#/components/headers/X-Request-ID"
  4865. }
  4866. },
  4867. "content": {
  4868. "application/json": {
  4869. "schema": {
  4870. "description": "Equals \"true\" if sufficient funds are available at the time of the request, \n\"false\" otherwise.\n",
  4871. "type": "object",
  4872. "required": [
  4873. "fundsAvailable"
  4874. ],
  4875. "properties": {
  4876. "fundsAvailable": {
  4877. "type": "boolean"
  4878. }
  4879. }
  4880. },
  4881. "examples": {
  4882. "Example": {
  4883. "$ref": "#/components/examples/confirmationOfFundsResponseExample"
  4884. }
  4885. }
  4886. }
  4887. }
  4888. },
  4889. "CREATED_201_PaymentInitiation": {
  4890. "description": "CREATED",
  4891. "headers": {
  4892. "X-Request-ID": {
  4893. "$ref": "#/components/headers/X-Request-ID"
  4894. },
  4895. "Location": {
  4896. "$ref": "#/components/headers/Location"
  4897. },
  4898. "ASPSP-SCA-Approach": {
  4899. "$ref": "#/components/headers/ASPSP-SCA-Approach"
  4900. }
  4901. },
  4902. "content": {
  4903. "application/json": {
  4904. "schema": {
  4905. "oneOf": [
  4906. {
  4907. "$ref": "#/components/schemas/paymentInitationRequestResponse-201"
  4908. }
  4909. ]
  4910. },
  4911. "examples": {
  4912. "Response with redirect": {
  4913. "$ref": "#/components/examples/paymentInitiationExample_json_Redirect"
  4914. }
  4915. }
  4916. }
  4917. }
  4918. },
  4919. "CREATED_201_StartScaProcess": {
  4920. "description": "Created",
  4921. "headers": {
  4922. "X-Request-ID": {
  4923. "$ref": "#/components/headers/X-Request-ID"
  4924. },
  4925. "ASPSP-SCA-Approach": {
  4926. "$ref": "#/components/headers/ASPSP-SCA-Approach"
  4927. }
  4928. },
  4929. "content": {
  4930. "application/json": {
  4931. "schema": {
  4932. "$ref": "#/components/schemas/startScaprocessResponse"
  4933. },
  4934. "examples": {
  4935. "Example 1: payments - Decoupled Approach": {
  4936. "$ref": "#/components/examples/startScaProcessResponseExample1"
  4937. }
  4938. }
  4939. }
  4940. }
  4941. },
  4942. "CREATED_201_Consents": {
  4943. "description": "Created",
  4944. "headers": {
  4945. "Location": {
  4946. "$ref": "#/components/headers/Location"
  4947. },
  4948. "X-Request-ID": {
  4949. "$ref": "#/components/headers/X-Request-ID"
  4950. },
  4951. "ASPSP-SCA-Approach": {
  4952. "$ref": "#/components/headers/ASPSP-SCA-Approach"
  4953. }
  4954. },
  4955. "content": {
  4956. "application/json": {
  4957. "schema": {
  4958. "$ref": "#/components/schemas/consentsResponse-201"
  4959. },
  4960. "examples": {
  4961. "Response with redirect": {
  4962. "$ref": "#/components/examples/consentResponseExample1a_Redirect"
  4963. }
  4964. }
  4965. }
  4966. }
  4967. },
  4968. "NO_CONTENT_204_PaymentInitiationCancel": {
  4969. "description": "OK",
  4970. "headers": {
  4971. "X-Request-ID": {
  4972. "$ref": "#/components/headers/X-Request-ID"
  4973. }
  4974. },
  4975. "content": {
  4976. "application/json": {
  4977. "schema": {
  4978. "$ref": "#/components/schemas/paymentInitiationCancelResponse-204_202"
  4979. },
  4980. "examples": {
  4981. "Example": {
  4982. "$ref": "#/components/examples/paymentInitiationCancelResponse-204_202"
  4983. }
  4984. }
  4985. }
  4986. }
  4987. },
  4988. "NO_CONTENT_204_Consents": {
  4989. "description": "No Content",
  4990. "headers": {
  4991. "X-Request-ID": {
  4992. "$ref": "#/components/headers/X-Request-ID"
  4993. }
  4994. }
  4995. },
  4996. "BAD_REQUEST_400": {
  4997. "description": "Bad Request",
  4998. "headers": {
  4999. "Location": {
  5000. "$ref": "#/components/headers/Location"
  5001. },
  5002. "X-Request-ID": {
  5003. "$ref": "#/components/headers/X-Request-ID"
  5004. }
  5005. },
  5006. "content": {
  5007. "application/json": {
  5008. "schema": {
  5009. "$ref": "#/components/schemas/Error400"
  5010. }
  5011. }
  5012. }
  5013. },
  5014. "UNAUTHORIZED_401": {
  5015. "description": "Unauthorized",
  5016. "headers": {
  5017. "Location": {
  5018. "$ref": "#/components/headers/Location"
  5019. },
  5020. "X-Request-ID": {
  5021. "$ref": "#/components/headers/X-Request-ID"
  5022. }
  5023. },
  5024. "content": {
  5025. "application/json": {
  5026. "schema": {
  5027. "$ref": "#/components/schemas/Error401"
  5028. }
  5029. }
  5030. }
  5031. },
  5032. "FORBIDDEN_403": {
  5033. "description": "Forbidden",
  5034. "headers": {
  5035. "Location": {
  5036. "$ref": "#/components/headers/Location"
  5037. },
  5038. "X-Request-ID": {
  5039. "$ref": "#/components/headers/X-Request-ID"
  5040. }
  5041. },
  5042. "content": {
  5043. "application/json": {
  5044. "schema": {
  5045. "$ref": "#/components/schemas/Error403"
  5046. }
  5047. }
  5048. }
  5049. },
  5050. "NOT_FOUND_404_PIS": {
  5051. "description": "Not found",
  5052. "headers": {
  5053. "Location": {
  5054. "$ref": "#/components/headers/Location"
  5055. },
  5056. "X-Request-ID": {
  5057. "$ref": "#/components/headers/X-Request-ID"
  5058. }
  5059. },
  5060. "content": {
  5061. "application/json": {
  5062. "schema": {
  5063. "$ref": "#/components/schemas/Error404_NG_PIS"
  5064. }
  5065. }
  5066. }
  5067. },
  5068. "NOT_FOUND_404_AIS": {
  5069. "description": "Not found",
  5070. "headers": {
  5071. "Location": {
  5072. "$ref": "#/components/headers/Location"
  5073. },
  5074. "X-Request-ID": {
  5075. "$ref": "#/components/headers/X-Request-ID"
  5076. }
  5077. },
  5078. "content": {
  5079. "application/json": {
  5080. "schema": {
  5081. "$ref": "#/components/schemas/Error404_NG_AIS"
  5082. }
  5083. }
  5084. }
  5085. },
  5086. "NOT_FOUND_404_PIIS": {
  5087. "description": "Not found",
  5088. "headers": {
  5089. "Location": {
  5090. "$ref": "#/components/headers/Location"
  5091. },
  5092. "X-Request-ID": {
  5093. "$ref": "#/components/headers/X-Request-ID"
  5094. }
  5095. },
  5096. "content": {
  5097. "application/json": {
  5098. "schema": {
  5099. "$ref": "#/components/schemas/Error404_NG_PIIS"
  5100. }
  5101. }
  5102. }
  5103. },
  5104. "METHOD_NOT_ALLOWED_405": {
  5105. "description": "Method Not Allowed",
  5106. "headers": {
  5107. "Location": {
  5108. "$ref": "#/components/headers/Location"
  5109. },
  5110. "X-Request-ID": {
  5111. "$ref": "#/components/headers/X-Request-ID"
  5112. }
  5113. },
  5114. "content": {
  5115. "application/json": {
  5116. "schema": {
  5117. "$ref": "#/components/schemas/Error405"
  5118. }
  5119. }
  5120. }
  5121. },
  5122. "REQUEST_TIMEOUT_408": {
  5123. "description": "Request Timeout",
  5124. "headers": {
  5125. "Location": {
  5126. "$ref": "#/components/headers/Location"
  5127. },
  5128. "X-Request-ID": {
  5129. "$ref": "#/components/headers/X-Request-ID"
  5130. }
  5131. }
  5132. },
  5133. "TOO_MANY_REQUESTS_429_AIS": {
  5134. "description": "Too Many Requests",
  5135. "headers": {
  5136. "Location": {
  5137. "$ref": "#/components/headers/Location"
  5138. },
  5139. "X-Request-ID": {
  5140. "$ref": "#/components/headers/X-Request-ID"
  5141. }
  5142. },
  5143. "content": {
  5144. "application/json": {
  5145. "schema": {
  5146. "$ref": "#/components/schemas/Error429_NG_AIS"
  5147. }
  5148. }
  5149. }
  5150. },
  5151. "INTERNAL_SERVER_ERROR_500": {
  5152. "description": "Internal Server Error",
  5153. "headers": {
  5154. "Location": {
  5155. "$ref": "#/components/headers/Location"
  5156. },
  5157. "X-Request-ID": {
  5158. "$ref": "#/components/headers/X-Request-ID"
  5159. }
  5160. }
  5161. },
  5162. "SERVICE_UNAVAILABLE_503": {
  5163. "description": "Service Unavailable",
  5164. "headers": {
  5165. "Location": {
  5166. "$ref": "#/components/headers/Location"
  5167. },
  5168. "X-Request-ID": {
  5169. "$ref": "#/components/headers/X-Request-ID"
  5170. }
  5171. }
  5172. }
  5173. },
  5174. "examples": {
  5175. "ibanExampleDe_01": {
  5176. "value": "DE02100100109307118603"
  5177. },
  5178. "ibanExampleDe_02": {
  5179. "value": "DE23100120020123456789"
  5180. },
  5181. "ibanExampleDe_03": {
  5182. "value": "DE40100100103307118608"
  5183. },
  5184. "ibanExampleDe_04": {
  5185. "value": "DE67100100101306118605"
  5186. },
  5187. "ibanExampleDe_05": {
  5188. "value": "DE87200500001234567890"
  5189. },
  5190. "ibanExampleFr_01": {
  5191. "value": "FR7612345987650123456789014"
  5192. },
  5193. "ibanExampleNl_01": {
  5194. "value": "NL76RABO0359400371"
  5195. },
  5196. "ibanExampleSe_01": {
  5197. "value": "SE9412309876543211234567"
  5198. },
  5199. "uuidExample": {
  5200. "value": "99391c7e-ad88-49ec-a2ad-99ddcb1f7721"
  5201. },
  5202. "paymentInitiationSctBody_payments_json": {
  5203. "value": {
  5204. "instructedAmount": {
  5205. "currency": "EUR",
  5206. "amount": "123.50"
  5207. },
  5208. "debtorAccount": {
  5209. "iban": "DE40100100103307118608"
  5210. },
  5211. "creditorName": "Merchant123",
  5212. "creditorAccount": {
  5213. "iban": "DE02100100109307118603"
  5214. },
  5215. "remittanceInformationUnstructured": "Ref Number Merchant"
  5216. }
  5217. },
  5218. "paymentInitiationItBody_payments_json": {
  5219. "value": {
  5220. "instructedAmount": {
  5221. "currency": "EUR",
  5222. "amount": "123.50"
  5223. },
  5224. "fromSubAccount": "1",
  5225. "toSubAccount": "2",
  5226. "remittanceInformationUnstructured": "Ref Number Merchant"
  5227. }
  5228. },
  5229. "accountListExample1": {
  5230. "summary": "Account list Example 1",
  5231. "description": "Response in case of an example, where the consent has been given on two different IBANs",
  5232. "value": {
  5233. "accounts": [
  5234. {
  5235. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
  5236. "iban": "DE2310010010123456789",
  5237. "currency": "EUR",
  5238. "product": "Girokonto",
  5239. "cashAccountType": "CurrentAccount",
  5240. "name": "Main Account",
  5241. "_links": {
  5242. "balances": {
  5243. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"
  5244. },
  5245. "transactions": {
  5246. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"
  5247. }
  5248. }
  5249. },
  5250. {
  5251. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e81g",
  5252. "iban": "DE2310010010123456788",
  5253. "currency": "USD",
  5254. "product": "Fremdw?hrungskonto",
  5255. "cashAccountType": "CurrentAccount",
  5256. "name": "US Dollar Account",
  5257. "_links": {
  5258. "balances": {
  5259. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/balances"
  5260. }
  5261. }
  5262. }
  5263. ]
  5264. }
  5265. },
  5266. "accountListExample2": {
  5267. "summary": "Account list Example 2",
  5268. "description": "Response in case of an example where consent on transactions and balances has been given to a multicurrency account which has two sub-accounts with currencies EUR and USD, and where the ASPSP is giving the data access only on sub-account level\n",
  5269. "value": {
  5270. "accounts": [
  5271. {
  5272. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
  5273. "iban": "DE2310010010123456788",
  5274. "currency": "EUR",
  5275. "product": "Girokonto",
  5276. "cashAccountType": "CurrentAccount",
  5277. "name": "Main Account",
  5278. "_links": {
  5279. "balances": {
  5280. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"
  5281. },
  5282. "transactions": {
  5283. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"
  5284. }
  5285. }
  5286. },
  5287. {
  5288. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e81g",
  5289. "iban": "DE2310010010123456788",
  5290. "currency": "USD",
  5291. "product": "Fremdw?hrungskonto",
  5292. "cashAccountType": "CurrentAccount",
  5293. "name": "US Dollar Account",
  5294. "_links": {
  5295. "balances": {
  5296. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/balances"
  5297. },
  5298. "transactions": {
  5299. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/transactions"
  5300. }
  5301. }
  5302. }
  5303. ]
  5304. }
  5305. },
  5306. "accountListExample3": {
  5307. "summary": "Account list Example 3",
  5308. "description": "Account list response in case of an example where consent on balances and transactions has been given to \na multicurrency account which has two sub-accounts with currencies EUR and USD and where the ASPSP is giving \nthe data access on aggregation level and on sub-account level\n",
  5309. "value": {
  5310. "accounts": [
  5311. {
  5312. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
  5313. "iban": "DE2310010010123456788",
  5314. "currency": "XXX",
  5315. "product": "Multi currency account",
  5316. "cashAccountType": "CurrentAccount",
  5317. "name": "Aggregation Account",
  5318. "_links": {
  5319. "balances": {
  5320. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e333/balances"
  5321. },
  5322. "transactions": {
  5323. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e333/transactions"
  5324. }
  5325. }
  5326. },
  5327. {
  5328. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e80f",
  5329. "iban": "DE2310010010123456788",
  5330. "currency": "EUR",
  5331. "product": "Girokonto",
  5332. "cashAccountType": "CurrentAccount",
  5333. "name": "Main Account",
  5334. "_links": {
  5335. "balances": {
  5336. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/balances"
  5337. },
  5338. "transactions": {
  5339. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f/transactions"
  5340. }
  5341. }
  5342. },
  5343. {
  5344. "resourceId": "3dc3d5b3-7023-4848-9853-f5400a64e81g",
  5345. "iban": "DE2310010010123456788",
  5346. "currency": "USD",
  5347. "product": "Fremdw?hrungskonto",
  5348. "cashAccountType": "CurrentAccount",
  5349. "name": "US Dollar Account",
  5350. "_links": {
  5351. "balances": {
  5352. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/balances"
  5353. },
  5354. "transactions": {
  5355. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e81g/transactions"
  5356. }
  5357. }
  5358. }
  5359. ]
  5360. }
  5361. },
  5362. "startScaProcessResponseExample1": {
  5363. "value": {
  5364. "scaStatus": "received",
  5365. "psuMessage": "Please use your BankApp for transaction Authorisation.",
  5366. "_links": {
  5367. "scaStatus": {
  5368. "href": "/V2/payments/qwer3456tzui7890/authorisations/123auth456"
  5369. }
  5370. }
  5371. }
  5372. },
  5373. "consentsExample_DedicatedAccounts": {
  5374. "description": "Consent request on dedicated accounts",
  5375. "value": {
  5376. "access": {
  5377. "balances": [
  5378. {
  5379. "iban": "DE40100100103307118608"
  5380. },
  5381. {
  5382. "iban": "DE02100100109307118603",
  5383. "currency": "USD"
  5384. },
  5385. {
  5386. "iban": "DE67100100101306118605"
  5387. }
  5388. ],
  5389. "transactions": [
  5390. {
  5391. "iban": "DE40100100103307118608"
  5392. },
  5393. {
  5394. "maskedPan": "123456xxxxxx1234"
  5395. }
  5396. ]
  5397. },
  5398. "recurringIndicator": "true",
  5399. "validUntil": "2017-11-01",
  5400. "frequencyPerDay": "4"
  5401. }
  5402. },
  5403. "consentsExample_AccountList": {
  5404. "description": "Consent on Account List of Available Accounts",
  5405. "value": {
  5406. "access": {
  5407. "availableAccounts": "allAccounts"
  5408. },
  5409. "recurringIndicator": "false",
  5410. "validUntil": "2017-08-06",
  5411. "frequencyPerDay": "1"
  5412. }
  5413. },
  5414. "consentsExample_without_Accounts": {
  5415. "description": "Consent request on account list or without indication of accounts",
  5416. "value": {
  5417. "access": {
  5418. "balances": [],
  5419. "transactions": []
  5420. },
  5421. "recurringIndicator": "true",
  5422. "validUntil": "2017-11-01",
  5423. "frequencyPerDay": "4"
  5424. }
  5425. },
  5426. "consentsInformationResponseExample": {
  5427. "description": "Consent request on account list or without indication of accounts",
  5428. "value": {
  5429. "access": {
  5430. "balances": [
  5431. {
  5432. "iban": "DE2310010010123456789"
  5433. }
  5434. ],
  5435. "transactions": [
  5436. {
  5437. "iban": "DE2310010010123456789"
  5438. },
  5439. {
  5440. "pan": "123456xxxxxx3457"
  5441. }
  5442. ]
  5443. },
  5444. "recurringIndicator": "true",
  5445. "validUntil": "2017-11-01",
  5446. "frequencyPerDay": "4",
  5447. "consentStatus": "valid",
  5448. "_links": {
  5449. "account": {
  5450. "href": "/V2/accounts"
  5451. }
  5452. }
  5453. }
  5454. },
  5455. "consentResponseExample1a_Redirect": {
  5456. "description": "Consent request Response in case of a redirect",
  5457. "value": {
  5458. "consentStatus": "received",
  5459. "consentId": "1234-wertiq-983",
  5460. "_links": {
  5461. "scaRedirect": {
  5462. "href": "https://www.testbank.com/authentication/1234-wertiq-983"
  5463. },
  5464. "status": {
  5465. "href": "/V2/consents/1234-wertiq-983/status"
  5466. },
  5467. "scaStatus": {
  5468. "href": "V2/consents/1234-wertiq-983/authorisations/123auth567"
  5469. }
  5470. }
  5471. }
  5472. },
  5473. "consentResponseExample1b_Redirect": {
  5474. "description": "Consent request Response in case of a redirect with a dedicated start of the authorisation process",
  5475. "value": {
  5476. "consentStatus": "received",
  5477. "consentId": "1234-wertiq-983",
  5478. "_links": {
  5479. "startAuthorisation": {
  5480. "href": "V2/consents/1234-wertiq-983/authorisations"
  5481. }
  5482. }
  5483. }
  5484. },
  5485. "consentStatusResponseExample1": {
  5486. "description": "Response for a consent status request.",
  5487. "value": {
  5488. "consentStatus": "valid"
  5489. }
  5490. },
  5491. "paymentInitiationExample_json_Redirect": {
  5492. "description": "Response in case of a redirect with an implicitly created authorisation sub-resource",
  5493. "value": {
  5494. "transactionStatus": "RCVD",
  5495. "paymentId": "1234-wertiq-983",
  5496. "_links": {
  5497. "scaRedirect": {
  5498. "href": "https://www.testbank.com/asdfasdfasdf"
  5499. },
  5500. "self": {
  5501. "href": "/V2/payments/sepa-credit-transfers/1234-wertiq-983"
  5502. },
  5503. "status": {
  5504. "href": "/V2/payments/1234-wertiq-983/status"
  5505. },
  5506. "scaStatus": {
  5507. "href": "/V2/payments/1234-wertiq-983/authorisations/123auth456"
  5508. }
  5509. }
  5510. }
  5511. },
  5512. "paymentInitiationExample_json__RedirectExplicitAuthorisation": {
  5513. "description": "Response in case of a redirect with an explicit authorisation start",
  5514. "value": {
  5515. "transactionStatus": "RCVD",
  5516. "paymentId": "1234-wertiq-983",
  5517. "_links": {
  5518. "self": {
  5519. "href": "/V2/payments/1234-wertiq-983"
  5520. },
  5521. "status": {
  5522. "href": "/V2/payments/1234-wertiq-983/status"
  5523. },
  5524. "startAuthorisation": {
  5525. "href": "/V2/payments1234-wertiq-983/authorisations"
  5526. }
  5527. }
  5528. }
  5529. },
  5530. "paymentInitiationStatusResponse_json_Simple": {
  5531. "value": {
  5532. "transactionStatus": "ACCP"
  5533. }
  5534. },
  5535. "paymentInitiationCancelResponse-204_202": {
  5536. "value": {
  5537. "transactionStatus": "CANC"
  5538. }
  5539. },
  5540. "paymentInitiationStatusResponse_json_Extended": {
  5541. "value": "{ \n \"transactionStatus\": \"ACCP\",\n \"scaStatus\": \"Some SCA Status\"\n}\n"
  5542. },
  5543. "transactionAuthorisationResponseExample": {
  5544. "description": "Response of a Transaction Authorisation request for the embedded approach.",
  5545. "value": {
  5546. "scaStatus": "finalised"
  5547. }
  5548. },
  5549. "confirmationOfFundsExample": {
  5550. "description": "Request body for a confirmation of funds.",
  5551. "value": {
  5552. "cardNumber": "12345678901234",
  5553. "account": {
  5554. "iban": "DE23100120020123456789"
  5555. },
  5556. "instructedAmount": {
  5557. "currency": "EUR",
  5558. "amount": "123"
  5559. }
  5560. }
  5561. },
  5562. "confirmationOfFundsResponseExample": {
  5563. "description": "Response for a confirmation of funds request.",
  5564. "value": {
  5565. "fundsAvailable": "true"
  5566. }
  5567. },
  5568. "balancesExample2_MulticurrencyAcount": {
  5569. "description": "Response in case of a multicurrency account with one account in EUR, \none in USD, where the ASPSP has delivered a link to the balance endpoint relative to the aggregated \nmulticurrency account (aggregation level).\n",
  5570. "value": {
  5571. "balances": [
  5572. {
  5573. "balanceType": "closingBooked",
  5574. "balanceAmount": {
  5575. "currency": "EUR",
  5576. "amount": "500.00"
  5577. },
  5578. "subAccount": {
  5579. "subAccountID": 0,
  5580. "subAccountName": "DO"
  5581. },
  5582. "referenceDate": "2017-10-25"
  5583. },
  5584. {
  5585. "balanceType": "expected",
  5586. "balanceAmount": {
  5587. "currency": "EUR",
  5588. "amount": "900.00"
  5589. },
  5590. "subAccount": {
  5591. "subAccountID": 0,
  5592. "subAccountName": "DO"
  5593. },
  5594. "lastChangeDateTime": "2017-10-25T15:30:35.035Z"
  5595. },
  5596. {
  5597. "balanceType": "closingBooked",
  5598. "balanceAmount": {
  5599. "currency": "USD",
  5600. "amount": "350.00"
  5601. },
  5602. "subAccount": {
  5603. "subAccountID": 0,
  5604. "subAccountName": "DO"
  5605. },
  5606. "referenceDate": "2017-10-25"
  5607. },
  5608. {
  5609. "balanceType": "expected",
  5610. "balanceAmount": {
  5611. "currency": "USD",
  5612. "amount": "350.00"
  5613. },
  5614. "subAccount": {
  5615. "subAccountID": 0,
  5616. "subAccountName": "DO"
  5617. },
  5618. "lastChangeDateTime": "2017-10-24T14:30:21Z"
  5619. }
  5620. ]
  5621. }
  5622. },
  5623. "transactionsExample1_RegularAccount_json": {
  5624. "description": "Response in JSON format for an access on a regular account",
  5625. "value": {
  5626. "account": {
  5627. "iban": "DE2310010010123456788"
  5628. },
  5629. "transactions": {
  5630. "booked": [
  5631. {
  5632. "transactionId": "1234567",
  5633. "creditorName": "John Miles",
  5634. "creditorAccount": {
  5635. "iban": "DE67100100101306118605"
  5636. },
  5637. "transactionAmount": {
  5638. "currency": "EUR",
  5639. "amount": "256.67"
  5640. },
  5641. "subAccount": {
  5642. "subAccountID": 0,
  5643. "subAccountName": "DO"
  5644. },
  5645. "bookingDate": "2017-10-25",
  5646. "valueDate": "2017-10-26",
  5647. "remittanceInformationUnstructured": "Example 1"
  5648. },
  5649. {
  5650. "transactionId": "1234568",
  5651. "debtorName": "Paul Simpson",
  5652. "debtorAccount": {
  5653. "iban": "NL76RABO0359400371"
  5654. },
  5655. "transactionAmount": {
  5656. "currency": "EUR",
  5657. "amount": "343.01"
  5658. },
  5659. "subAccount": {
  5660. "subAccountID": 0,
  5661. "subAccountName": "DO"
  5662. },
  5663. "bookingDate": "2017-10-25",
  5664. "valueDate": "2017-10-26",
  5665. "remittanceInformationUnstructured": "Example 2"
  5666. }
  5667. ],
  5668. "pending": [
  5669. {
  5670. "transactionId": "1234569",
  5671. "creditorName": "Claude Renault",
  5672. "creditorAccount": {
  5673. "iban": "FR7612345987650123456789014"
  5674. },
  5675. "subAccount": {
  5676. "subAccountID": 0,
  5677. "subAccountName": "DO"
  5678. },
  5679. "transactionAmount": {
  5680. "currency": "EUR",
  5681. "amount": "-100.03"
  5682. },
  5683. "valueDate": "2017-10-26",
  5684. "remittanceInformationUnstructured": "Example 3"
  5685. }
  5686. ],
  5687. "_links": {
  5688. "account": {
  5689. "href": "/V2/accounts/3dc3d5b3-7023-4848-9853-f5400a64e80f"
  5690. }
  5691. }
  5692. }
  5693. }
  5694. },
  5695. "transactionDetailsExample": {
  5696. "description": "Example for transaction details",
  5697. "value": {
  5698. "transactionsDetails": {
  5699. "transactionId": "1234567",
  5700. "creditorName": "John Miles",
  5701. "creditorAccount": {
  5702. "iban": "DE67100100101306118605"
  5703. },
  5704. "mandateId": "Mandate-2018-04-20-1234",
  5705. "transactionAmount": {
  5706. "currency": "EUR",
  5707. "amount": "-256.67"
  5708. },
  5709. "bookingDate": "2017-10-25",
  5710. "valueDate": "2017-10-26",
  5711. "remittanceInformationUnstructured": "Example 1",
  5712. "bankTransactionCode": "PMNT-RCVD-ESDD"
  5713. }
  5714. }
  5715. },
  5716. "authorisationListExample": {
  5717. "value": {
  5718. "authorisationIds": [
  5719. "123auth456"
  5720. ]
  5721. }
  5722. },
  5723. "cancellationListExample": {
  5724. "value": {
  5725. "cancellationIds": [
  5726. "123auth456"
  5727. ]
  5728. }
  5729. }
  5730. }
  5731. },
  5732. "security": [
  5733. {}
  5734. ],
  5735. "tags": [
  5736. {
  5737. "name": "Account Information Service (AIS)",
  5738. "description": "The Account Information Service (AIS) offers the following services\n * Transaction reports for a given account including balances if applicable.\n * Balances of a given account ,\n * A list of available accounts ,\n * Account details of a given account or of the list of all accessible accounts relative to a granted consent\n"
  5739. },
  5740. {
  5741. "name": "Payment Initiation Service (PIS)",
  5742. "description": "The Decription for Payment Initiation Service (PIS) offers the following services:\n * Initiation and update of a payment request\n * Status information of a payment\n"
  5743. }
  5744. ]
  5745. }
Add Comment
Please, Sign In to add comment