openapi: 3.0.1 info: title: FDR - Flussi di rendicontazione (ORGS) description: FDR - Flussi di rendicontazione (ORGS) version: v1 servers: - url: https://api.uat.platform.pagopa.it/fdr-org/service/v1 - url: https://api.prf.platform.pagopa.it/fdr-org/service/v1 paths: '/organizations/{organizationId}/fdrs/{fdr}/revisions/{revision}/psps/{pspId}': get: tags: - Organizations summary: Get fdr description: Get fdr operationId: get parameters: - name: fdr in: path required: true schema: type: string - name: organizationId in: path required: true schema: type: string - name: pspId in: path required: true schema: type: string - name: revision in: path description: Format - int64. required: true schema: type: integer format: int64 responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: errorId: 50905466-1881-457b-b42f-fb7b2bfb1610 httpStatusCode: 500 httpStatusDescription: Internal Server Error appErrorCode: FDR-0500 errors: - message: An unexpected error has occurred. Please contact support. '400': description: Default app exception for status 400 content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: Error: value: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-0702 errors: - message: 'Reporting Fdr [] is invalid' Errors with path: value: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-0702 errors: - path: message: '404': description: Default app exception for status 404 content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 404 httpStatusDescription: Not Found appErrorCode: FDR-0701 errors: - message: 'Reporting Fdr [] not found' '200': description: Success content: application/json: schema: $ref: '#/components/schemas/GetResponse' example: status: CREATED revision: 4 created: '2023-04-03T12:00:30.9000000+00:00' updated: '2023-04-03T12:00:30.9000000+00:00' fdr: 2016-08-16pspTest-1178 fdrDate: '2023-04-05T09:21:37.8100000+00:00' regulation: SEPA - Bonifico xzy regulationDate: '2023-04-03T12:00:30.9000000+00:00' bicCodePouringBank: UNCRITMMXXX sender: type: LEGAL_PERSON id: SELBIT2B pspId: '60000000001' pspName: Bank pspBrokerId: '70000000001' channelId: '80000000001' password: '1234567890' receiver: id: APPBIT2B organizationId: '20000000001' organizationName: Comune di xyz published: '2023-04-03T12:00:30.9000000+00:00' computedTotPayments: 100 computedSumPayments: 100.9 totPayments: 100 sumPayments: 100.9 '/organizations/{organizationId}/fdrs/{fdr}/revisions/{revision}/psps/{pspId}/payments': get: tags: - Organizations summary: Get payments of fdr description: Get payments of fdr operationId: getPayment parameters: - name: fdr in: path required: true schema: type: string - name: organizationId in: path required: true schema: type: string - name: pspId in: path required: true schema: type: string - name: revision in: path description: Format - int64. required: true schema: type: integer format: int64 - name: page in: query description: Format - int64. schema: minimum: 1.0 type: integer format: int64 default: 1 - name: size in: query description: Format - int64. schema: minimum: 1.0 type: integer format: int64 default: 1000 responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: errorId: 50905466-1881-457b-b42f-fb7b2bfb1610 httpStatusCode: 500 httpStatusDescription: Internal Server Error appErrorCode: FDR-0500 errors: - message: An unexpected error has occurred. Please contact support. '400': description: Default app exception for status 400 content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: Error: value: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-0702 errors: - message: 'Reporting Fdr [] is invalid' Errors with path: value: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-0702 errors: - path: message: '404': description: Default app exception for status 404 content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 404 httpStatusDescription: Not Found appErrorCode: FDR-0701 errors: - message: 'Reporting Fdr [] not found' '200': description: Success content: application/json: schema: $ref: '#/components/schemas/GetPaymentResponse' example: metadata: pageSize: 25 pageNumber: 1 totPage: 3 count: 100 data: - index: 1 iuv: abcdefg iur: abcdefg idTransfer: 1 pay: 0.01 payStatus: EXECUTED payDate: '2023-02-03T12:00:30.9000000+00:00' '/organizations/{organizationId}/fdrs': get: tags: - Organizations summary: Get all fdr published description: Get all fdr published operationId: getAllPublished parameters: - name: organizationId in: path required: true schema: pattern: '^(.{1,35})$' type: string - name: page in: query description: Format - int64. schema: minimum: 1.0 type: integer format: int64 default: 1 - name: pspId in: query schema: pattern: '^(.{1,35})$' type: string - name: publishedGt in: query description: Format - date-time (as date-time in RFC3339). schema: $ref: '#/components/schemas/Instant' - name: size in: query description: Format - int64. schema: minimum: 1.0 type: integer format: int64 default: 1000 responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: errorId: 50905466-1881-457b-b42f-fb7b2bfb1610 httpStatusCode: 500 httpStatusDescription: Internal Server Error appErrorCode: FDR-0500 errors: - message: An unexpected error has occurred. Please contact support. '400': description: Default app exception for status 400 content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: Error: value: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-0702 errors: - message: 'Reporting Fdr [] is invalid' Errors with path: value: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-0702 errors: - path: message: '404': description: Default app exception for status 404 content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 404 httpStatusDescription: Not Found appErrorCode: FDR-0701 errors: - message: 'Reporting Fdr [] not found' '200': description: Success content: application/json: schema: $ref: '#/components/schemas/GetAllResponse' example: metadata: pageSize: 25 pageNumber: 1 totPage: 3 count: 100 data: - fdr: AAABBB pspId: '1' revision: 1 published: '2023-04-03T12:00:30.9000000+00:00' /info: get: tags: - Info summary: Get info of FDR description: Get info of FDR operationId: get-info responses: '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: errorId: 50905466-1881-457b-b42f-fb7b2bfb1610 httpStatusCode: 500 httpStatusDescription: Internal Server Error appErrorCode: FDR-0500 errors: - message: An unexpected error has occurred. Please contact support. '200': description: Success content: application/json: schema: $ref: '#/components/schemas/InfoResponse' example: name: pagopa-fdr version: '2003-01-02' environment: dev description: FDR - Flussi di rendicontazione errorCodes: - code: FDR-0500 description: An unexpected error has occurred. Please contact support. statusCode: 500 components: schemas: AddPaymentRequest: required: - payments type: object properties: payments: maxItems: 1000 minItems: 1 type: array items: $ref: '#/components/schemas/Payment' CreateRequest: required: - fdr - fdrDate - sender - receiver - regulation - regulationDate - totPayments - sumPayments type: object properties: fdr: pattern: '[a-zA-Z0-9\-_]{1,35}' type: string description: '[XML NodoInviaFlussoRendicontazione]=[identificativoFlusso]' example: 2016-08-16pspTest-1178 fdrDate: type: string allOf: - $ref: '#/components/schemas/Instant' description: '[XML NodoInviaFlussoRendicontazione]=[dataOraFlusso]' example: '2023-04-05T09:21:37.81Z' sender: $ref: '#/components/schemas/Sender' receiver: $ref: '#/components/schemas/Receiver' regulation: pattern: '^(.{1,35})$' type: string description: '[XML FlussoRiversamento]=[identificativoUnivocoRegolamento]' example: SEPA - Bonifico xzy regulationDate: type: string allOf: - $ref: '#/components/schemas/Instant' description: '[XML FlussoRiversamento]=[dataRegolamento]' example: '2023-04-03T12:00:30.9Z' bicCodePouringBank: pattern: '^(.{1,35})$' type: string description: '[XML FlussoRiversamento]=[codiceBicBancaDiRiversamento]' example: UNCRITMMXXX totPayments: minimum: 1.0 type: integer description: '[XML FlussoRiversamento]=[numeroTotalePagamenti]' format: int64 example: 1 sumPayments: minimum: 0.0 exclusiveMinimum: true pattern: '^\d{1,2147483647}([.]\d{1,2})?$' type: number description: '[XML FlussoRiversamento]=[importoTotalePagamenti]' format: double example: 0.01 DeletePaymentRequest: required: - indexList type: object properties: indexList: maxItems: 1000 minItems: 1 type: array items: type: integer format: int64 ErrorCode: type: object properties: code: type: string example: FDR-0500 description: type: string example: An unexpected error has occurred. Please contact support. statusCode: type: integer format: int32 example: 500 ErrorMessage: type: object properties: path: type: string example: demo.test message: type: string example: An unexpected error has occurred. Please contact support. ErrorResponse: type: object properties: errorId: type: string example: 50905466-1881-457b-b42f-fb7b2bfb1610 httpStatusCode: type: integer format: int32 example: 500 httpStatusDescription: type: string example: Internal Server Error appErrorCode: type: string example: FDR-500 errors: type: array items: $ref: '#/components/schemas/ErrorMessage' Fdr: type: object properties: fdr: type: string example: AAABBB pspId: type: string example: '1' revision: type: integer format: int64 example: 1 published: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' FdrByPspIdIuvIurBase: type: object properties: pspId: type: string organizationId: type: string fdr: type: string revision: type: integer format: int64 created: $ref: '#/components/schemas/Instant' FdrByPspIdIuvIurResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer format: int64 example: 100 data: type: array items: $ref: '#/components/schemas/FdrByPspIdIuvIurBase' FdrInserted: type: object properties: fdr: type: string example: AAABBB organizationId: type: string example: '1' revision: type: integer format: int64 example: 1 created: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' FdrPublished: type: object properties: fdr: type: string example: AAABBB organizationId: type: string example: '1' revision: type: integer format: int64 example: 1 published: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' GenericResponse: type: object properties: message: type: string example: Success GetAllCreatedResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer format: int64 example: 100 data: type: array items: $ref: '#/components/schemas/FdrInserted' GetAllPublishedResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer format: int64 example: 100 data: type: array items: $ref: '#/components/schemas/FdrPublished' GetAllResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer format: int64 example: 100 data: type: array items: $ref: '#/components/schemas/Fdr' GetCreatedResponse: type: object properties: status: type: string allOf: - $ref: '#/components/schemas/ReportingFlowStatusEnum' example: CREATED revision: type: integer format: int64 example: 4 created: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' updated: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' fdr: type: string example: 2016-08-16pspTest-1178 fdrDate: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-05T09:21:37.81Z' regulation: type: string example: SEPA - Bonifico xzy regulationDate: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' bicCodePouringBank: type: string example: UNCRITMMXXX sender: $ref: '#/components/schemas/Sender' receiver: $ref: '#/components/schemas/Receiver' computedTotPayments: type: integer format: int64 example: 100 computedSumPayments: type: number format: double example: 100.9 totPayments: type: integer format: int64 example: 100 sumPayments: type: number format: double example: 100.9 GetPaymentResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer format: int64 example: 100 data: type: array items: $ref: '#/components/schemas/Payment' GetResponse: type: object properties: status: type: string allOf: - $ref: '#/components/schemas/ReportingFlowStatusEnum' example: CREATED revision: type: integer format: int64 example: 4 created: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' updated: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' fdr: type: string example: 2016-08-16pspTest-1178 fdrDate: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-05T09:21:37.81Z' regulation: type: string example: SEPA - Bonifico xzy regulationDate: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' bicCodePouringBank: type: string example: UNCRITMMXXX sender: $ref: '#/components/schemas/Sender' receiver: $ref: '#/components/schemas/Receiver' published: type: string allOf: - $ref: '#/components/schemas/Instant' example: '2023-04-03T12:00:30.9Z' computedTotPayments: type: integer format: int64 example: 100 computedSumPayments: type: number format: double example: 100.9 totPayments: type: integer format: int64 example: 100 sumPayments: type: number format: double example: 100.9 InfoResponse: type: object properties: name: type: string example: pagopa-fdr version: type: string example: '1.2.3' environment: type: string example: dev description: type: string example: FDR - Flussi di rendicontazione errorCodes: type: array items: $ref: '#/components/schemas/ErrorCode' Instant: type: string format: date-time example: '2022-03-10T04:15:50.0000000+00:00' Metadata: type: object properties: pageSize: type: integer format: int32 example: 25 pageNumber: type: integer format: int32 example: 1 totPage: type: integer format: int32 example: 3 Payment: required: - index - iuv - iur - idTransfer - pay - payStatus - payDate type: object properties: index: minimum: 1.0 type: integer description: Identificativo del pagamento univoco nel flusso format: int64 example: 1 iuv: pattern: '^(.{1,35})$' type: string description: '[XML FlussoRiversamento]=[datiSingoliPagamenti.identificativoUnivocoVersamento]' example: abcdefg iur: pattern: '^(.{1,35})$' type: string description: '[XML FlussoRiversamento]=[datiSingoliPagamenti.identificativoUnivocoRiscossione]' example: abcdefg idTransfer: maximum: 5.0 minimum: 1.0 type: integer description: '[XML FlussoRiversamento]=[datiSingoliPagamenti.indiceDatiSingoloPagamento]' format: int64 example: 1 pay: minimum: 0.0 exclusiveMinimum: true pattern: '^\d{1,2147483647}([.]\d{1,2})?$' type: number description: '[XML FlussoRiversamento]=[datiSingoliPagamenti.singoloImportoPagato]' format: double example: 0.01 payStatus: type: string allOf: - $ref: '#/components/schemas/PaymentStatusEnum' description: "[XML FlussoRiversamento]=[datiSingoliPagamenti.codiceEsitoSingoloPagamento] \n0 -> EXECUTED\n3 -> REVOKED\n9 -> NO_RPT\n4 -> STAND_IN\n8 -> STAND_IN_NO_RPT" example: EXECUTED payDate: type: string allOf: - $ref: '#/components/schemas/Instant' description: '[XML FlussoRiversamento]=[datiSingoliPagamenti.dataEsitoSingoloPagamento]' example: '2023-02-03T12:00:30.9Z' PaymentStatusEnum: enum: - EXECUTED - REVOKED - NO_RPT - STAND_IN - STAND_IN_NO_RPT type: string Receiver: required: - id - organizationId - organizationName type: object properties: id: pattern: '^(.{1,35})$' type: string description: '[XML FlussoRiversamento]=[istitutoRicevente.identificativoUnivocoRicevente.codiceIdentificativoUnivoco]' example: APPBIT2B organizationId: pattern: '^(.{1,35})$' type: string description: '[XML NodoInviaFlussoRendicontazione]=[identificativoDominio]' example: '20000000001' organizationName: pattern: '^(.{1,140})$' type: string description: '[XML FlussoRiversamento]=[istitutoRicevente.denominazioneRicevente]' example: Comune di xyz ReportingFlowStatusEnum: enum: - CREATED - INSERTED - PUBLISHED type: string Sender: required: - type - id - pspId - pspName - pspBrokerId - channelId type: object properties: type: type: string allOf: - $ref: '#/components/schemas/SenderTypeEnum' description: "[XML FlussoRiversamento]=[istitutoMittente.identificativoUnivocoMittente.tipoIdentificativoUnivoco] \nG -> LEGAL_PERSON\nA -> ABI_CODE\nB -> BIC_CODE" example: LEGAL_PERSON id: pattern: '^(.{1,35})$' type: string description: '[XML FlussoRiversamento]=[istitutoMittente.identificativoUnivocoMittente.codiceIdentificativoUnivoco]' example: SELBIT2B pspId: pattern: '^(.{1,35})$' type: string description: '[XML NodoInviaFlussoRendicontazione]=[identificativoPSP]' example: '60000000001' pspName: pattern: '^(.{3,70})$' type: string description: '[XML FlussoRiversamento]=[istitutoMittente.denominazioneMittente]' example: Bank pspBrokerId: pattern: '^(.{1,35})$' type: string description: '[XML NodoInviaFlussoRendicontazione]=[identificativoIntermediarioPSP]' example: '70000000001' channelId: pattern: '^(.{1,35})$' type: string description: '[XML NodoInviaFlussoRendicontazione]=[identificativoCanale]' example: '80000000001' password: pattern: '^(\w{8,15})$' type: string description: '[XML NodoInviaFlussoRendicontazione]=[password]' example: '1234567890' deprecated: true SenderTypeEnum: enum: - LEGAL_PERSON - ABI_CODE - BIC_CODE type: string securitySchemes: apiKeyHeader: type: apiKey name: Ocp-Apim-Subscription-Key in: header apiKeyQuery: type: apiKey name: subscription-key in: query security: - apiKeyHeader: [ ] - apiKeyQuery: [ ] tags: - name: PSP description: PSP operations - name: Info description: Info operations - name: Organizations description: Organizations operations - name: Internal Organizations description: Organizations operations - name: Internal PSP description: PSP operations - name: Support description: Support operations