openapi: 3.2.0 info: title: Pagopa Organizations API x-refined-note: - x-logo differs across the merged source definitions and was not carried version: '1.0' description: 'Operations tagged Organizations across 4 of this provider''s published API definitions: fdr_organization.json, io-functions-services.yaml, pagopa-fdr-organizations-openapi.yml, pagopa-io-services-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.platform.pagopa.it/fdr-org/service/v1 - url: https://api.io.pagopa.it/api/v1 tags: - name: Organizations description: APIs for creditor institution, used for inspection of generated flows paths: /organizations/{organizationId}/fdrs: get: tags: - Organizations summary: Get all published flow related to creditor institution description: '## Description: This API permits to search all published flows for a specific creditor institution, formatted in a paginated view. The search can be enhanced including the PSP identifier in order to filter only the flows for certain PSP. The only flows retrieved are the latest revision, as same as "nodoChiediElencoFlussiRendicontazione" primitive does. Before executing the query, the search filters are validated against entities configured for Nodo dei Pagamenti environment, in particular on PSP (if that search filter is defined). The result of the query is paginated and contains all the metadata needed for pagination purposes. Query date-time filters are defined with UTC time-zone. ## Error codes: APPLICATIVE CODE | HTTP CODE | MESSAGE - | - | - **FDR-2000** | 400 | PSP with ID [%] is invalid or unknown. **FDR-2001** | 400 | PSP with ID [%] is not enabled. **FDR-2008** | 400 | Creditor institution with ID [%] is invalid or unknown. **FDR-2009** | 400 | Creditor institution with ID [%] is not enabled. ## API properties: PROPERTY | VALUE - | - ***Internal*** | N ***External*** | Y ***Synchronous*** | Synchronous ***Authorization*** | Y (Authorizer) ***Authentication*** | Y (Subscription Key) ***TPS*** | 1.0/sec ***Idempotency*** | Y ***Stateless*** | Y ***Read/Write Intensive*** | Read ***Cacheable*** | Y' operationId: IOrganizationsController_getAllPublishedFlows parameters: - name: organizationId in: path description: The creditor institution identifier, used as a search filter required: true schema: pattern: ^(.{1,35})$ type: string example: 15376371009 - name: flowDate in: query description: A date-time to be used as a lower limit search on flow date. Defined with UTC time-zone and formatted as ISO-8601 (yyyy-MM-dd'T'HH:mm:ss'Z'). If omitted, the server uses a dynamic default equal to the start of the previous 30th day at 00:00:00Z. schema: $ref: '#/components/schemas/Instant' example: '2025-01-01T12:00:00.0000000+00:00' - name: page in: query description: The index of the page to be shown in the result schema: minimum: 1.0 type: integer format: int64 default: 1 example: 1 - name: pspId in: query description: The PSP identifier, used as a search filter schema: pattern: ^(.{1,35})$ type: string example: 88888888888 - name: publishedGt in: query description: A date-time to be used as a lower limit search on publication date. Defined with UTC time-zone and formatted as ISO-8601 (yyyy-MM-dd'T'HH:mm:ss'Z'). If omitted, the server uses a dynamic default equal to the start of the previous 30th day at 00:00:00Z. schema: $ref: '#/components/schemas/Instant' example: '2025-01-01T12:00:00.0000000+00:00' - name: size in: query description: The number of the elements of the page to be shown in the result schema: maximum: 1000.0 minimum: 1.0 type: integer format: int64 default: 1000 example: 50 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/PaginatedFlowsResponse' example: metadata: pageSize: - 25 pageNumber: - 1 totPage: - 3 count: - 100 data: - fdr: - 2025-01-0188888888888-0000001 pspId: - '88888888888' revision: - 1 published: - '2022-03-10T04:15:50.0000000+00:00' flowDate: - '2022-03-10T04:15:50.0000000+00:00' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-XXXX errors: - path: message: '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 404 httpStatusDescription: Not Found appErrorCode: FDR-XXXX errors: - message: '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. security: - apiKeyHeader: [] - apiKeyQuery: [] servers: - url: https://api.platform.pagopa.it/fdr-org/service/v1 /organizations/{organizationId}/fdrs/{fdr}/revisions/{revision}/psps/{pspId}: get: tags: - Organizations summary: Get single published flow related to creditor institution, searching by name… description: '## Description: This API permits to search a single published flows for a specific creditor institution. In order to do so, it is required to add the following search filters: - Creditor institution identifier: for filtering by specific organization - PSP identifier: for filtering by flow-related PSP - Flow name: for filtering by specific instance of the flow - Revision: for filtering by flow revision Before executing the query, the search filters are validated against entities configured for Nodo dei Pagamenti environment, in particular on creditor institution and PSP. Also, the name of the flow is validated against a specific standard format. Date-time fields in the response are defined with UTC time-zone. Business-date fields preserve the original calendar day. ## Error codes: APPLICATIVE CODE | HTTP CODE | MESSAGE - | - | - **FDR-2000** | 400 | PSP with ID [%] is invalid or unknown. **FDR-2001** | 400 | PSP with ID [%] is not enabled. **FDR-2008** | 400 | Creditor institution with ID [%] is invalid or unknown. **FDR-2009** | 400 | Creditor institution with ID [%] is not enabled. **FDR-3008** | 400 | Flow identifier [%] contains a date that is not compliant. **FDR-3009** | 400 | Flow identifier [%] contains a PSP ID that is not compliant. **FDR-3001** | 404 | Flow with ID [%] not found. ## API properties: PROPERTY | VALUE - | - ***Internal*** | N ***External*** | Y ***Synchronous*** | Synchronous ***Authorization*** | Y (Authorizer) ***Authentication*** | Y (Subscription Key) ***TPS*** | 1.0/sec ***Idempotency*** | Y ***Stateless*** | Y ***Read/Write Intensive*** | Read ***Cacheable*** | Y' operationId: IOrganizationsController_getSinglePublishedFlow parameters: - name: fdr in: path description: The flow name, used as a search filter required: true schema: type: string example: 2025-01-0188888888888-0001 - name: organizationId in: path description: The creditor institution identifier, used as a search filter required: true schema: type: string example: 15376371009 - name: pspId in: path description: The PSP identifier, used as a search filter required: true schema: type: string example: 88888888888 - name: revision in: path description: The specific revision of the flow needed required: true schema: minimum: 1.0 type: integer format: int64 example: 1 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/SingleFlowResponse' example: status: CREATED revision: - 4 created: - '2022-03-10T04:15:50.0000000+00:00' updated: - '2022-03-10T04:15:50.0000000+00:00' fdr: - 2025-01-0188888888888-0000001 fdrDate: - '2022-03-10T04:15:50.0000000+00:00' regulation: - SEPA - Bonifico X regulationDate: string bicCodePouringBank: - UNCRITMMXXX sender: type: LEGAL_PERSON id: - SELBIT2B pspId: - '60000000001' pspName: - PSP Name pspBrokerId: - '70000000001' channelId: - '80000000001' password: - password receiver: id: - APPBIT2B organizationId: - '20000000001' organizationName: - Comune di Roma published: - '2022-03-10T04:15:50.0000000+00:00' computedTotPayments: - 100 computedSumPayments: - 100.95 totPayments: - 100 sumPayments: - 100.95 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-XXXX errors: - path: message: '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 404 httpStatusDescription: Not Found appErrorCode: FDR-XXXX errors: - message: '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. security: - apiKeyHeader: [] - apiKeyQuery: [] servers: - url: https://api.platform.pagopa.it/fdr-org/service/v1 /organizations/{organizationId}/fdrs/{fdr}/revisions/{revision}/psps/{pspId}/payments: get: tags: - Organizations summary: Get all payments of single published flow related to creditor institution… description: '## Description: This API permits to search all the payments of a single published flow for a specific creditor institution, formatted in a paginated view. In order to do so, it is required to add the following search filters: - Creditor institution identifier: for filtering by specific organization - PSP identifier: for filtering by flow-related PSP - Flow name: for filtering by specific instance of the flow - Revision: for filtering by flow revision Before executing the query, the search filters are validated against entities configured for Nodo dei Pagamenti environment, in particular on creditor institution and PSP. Also, the name of the flow is validated against a specific standard format. The result of the query is paginated and contains all the metadata needed for pagination purposes. Date-time fields in the response are defined with UTC time-zone. Business-date fields preserve the original calendar day. ## Error codes: APPLICATIVE CODE | HTTP CODE | MESSAGE - | - | - **FDR-2000** | 400 | PSP with ID [%] is invalid or unknown. **FDR-2001** | 400 | PSP with ID [%] is not enabled. **FDR-2008** | 400 | Creditor institution with ID [%] is invalid or unknown. **FDR-2009** | 400 | Creditor institution with ID [%] is not enabled. **FDR-3008** | 400 | Flow identifier [%] contains a date that is not compliant. **FDR-3009** | 400 | Flow identifier [%] contains a PSP ID that is not compliant. **FDR-3001** | 404 | Flow with ID [%] not found. ## API properties: PROPERTY | VALUE - | - ***Internal*** | N ***External*** | Y ***Synchronous*** | Synchronous ***Authorization*** | Y (Authorizer) ***Authentication*** | Y (Subscription Key) ***TPS*** | 1.0/sec ***Idempotency*** | Y ***Stateless*** | Y ***Read/Write Intensive*** | Read ***Cacheable*** | Y' operationId: IOrganizationsController_getPaymentsFromPublishedFlow parameters: - name: fdr in: path description: The flow name, used as a search filter required: true schema: type: string example: 2025-01-0188888888888-0001 - name: organizationId in: path description: The creditor institution identifier, used as a search filter required: true schema: type: string example: 15376371009 - name: pspId in: path description: The PSP identifier, used as a search filter required: true schema: type: string example: 88888888888 - name: revision in: path description: The specific revision of the flow needed required: true schema: minimum: 1.0 type: integer format: int64 example: 1 - name: page in: query description: The index of the page to be shown in the result schema: minimum: 1.0 type: integer format: int64 default: 1 example: 1 - name: size in: query description: The number of the elements of the page to be shown in the result schema: minimum: 1.0 type: integer format: int64 default: 1000 example: 50 responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/PaginatedPaymentsResponse' example: metadata: pageSize: - 25 pageNumber: - 1 totPage: - 3 count: - 100 data: - index: - 1 iuv: - '17854456582215' iur: - '3354426511008' idTransfer: - 1 pay: - 0.01 payStatus: - EXECUTED payDate: - '2022-03-10T04:15:50.0000000+00:00' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 400 httpStatusDescription: Bad Request appErrorCode: FDR-XXXX errors: - path: message: '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' example: httpStatusCode: 404 httpStatusDescription: Not Found appErrorCode: FDR-XXXX errors: - message: '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. security: - apiKeyHeader: [] - apiKeyQuery: [] servers: - url: https://api.platform.pagopa.it/fdr-org/service/v1 /organizations/{organization_fiscal_code}/logo: parameters: - $ref: '#/components/parameters/OrganizationFiscalCode' put: summary: Upload organization logo description: Upsert a logo for an Organization. operationId: uploadOrganizationLogo security: - SubscriptionKey: [] responses: '202': description: Logo uploaded. '400': description: Invalid payload. content: application/json: schema: $ref: '#/components/schemas/ProblemJson' '401': description: Unauthorized. '403': description: Forbidden. '429': description: Too many requests. '500': description: The organization logo cannot be uploaded. content: application/json: schema: $ref: '#/components/schemas/ProblemJson' requestBody: content: application/json: schema: $ref: '#/components/schemas/Logo' description: A base64 string representation of the organization logo PNG image. required: true tags: - Organizations servers: - url: https://api.io.pagopa.it/api/v1 components: schemas: SingleFlowResponse: type: object properties: status: $ref: '#/components/schemas/ReportingFlowStatusEnum' revision: type: integer description: The revision (or version) of the flow. format: int64 example: - 4 created: $ref: '#/components/schemas/Instant' updated: $ref: '#/components/schemas/Instant' fdr: type: string description: The unique identifier of the flow. example: - 2025-01-0188888888888-0000001 fdrDate: $ref: '#/components/schemas/Instant' regulation: type: string description: The description related to the regulation payment related to the flow. example: - SEPA - Bonifico X regulationDate: $ref: '#/components/schemas/LocalDate' bicCodePouringBank: type: string description: The BIC code of the bank where the regulation payment related to the flow will be poured. example: - UNCRITMMXXX sender: $ref: '#/components/schemas/Sender' receiver: $ref: '#/components/schemas/Receiver' published: $ref: '#/components/schemas/Instant' computedTotPayments: type: integer description: The computed total number of payments included in the flow during the compilation. format: int64 example: - 100 computedSumPayments: pattern: ^\d{1,2147483647}[.]\d{1,2}?$ type: number description: The computed total amount of payments calculated in the flow during the compilation. format: double example: - 100.95 totPayments: type: integer description: The total number of payments to be included in the flow during the flow compilation. format: int64 example: - 100 sumPayments: pattern: ^\d{1,2147483647}[.]\d{1,2}?$ type: number description: The total amount of payments to be calculated in the flow during the flow compilation. format: double example: - 100.95 PaginatedFlowsResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer description: The number of elements that can be found in this page. format: int64 example: - 100 data: type: array items: $ref: '#/components/schemas/FlowByPSP' description: The list of flows that are included in this page. Date-time fields inside each item are defined with UTC time-zone. Receiver: required: - id - organizationId - organizationName type: object properties: id: pattern: ^(.{1,35})$ type: string description: The identifier of the Creditor Institution receiver entity.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.istitutoRicevente.identificativoUnivocoRicevente.codiceIdentificativoUnivoco]. example: - APPBIT2B organizationId: pattern: ^(.{1,35})$ type: string description: The domain identifier of the Creditor Institution receiver entity.
In the XML request for SOAP primitives, this field is mappable with the tag [NodoInviaFlussoRendicontazione.identificativoDominio]. example: - '20000000001' organizationName: pattern: ^(.{1,140})$ type: string description: The fiscal name of the Creditor Institution receiver entity.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.istitutoRicevente.denominazioneRicevente]. example: - Comune di Roma ErrorMessage: type: object properties: path: type: string description: The path reference for the specific error clause in the general response. example: - detail.path.if-exist message: type: string description: The descriptive message for the specific error clause in the general response. example: - An unexpected error has occurred. Please contact support. ReportingFlowStatusEnum: enum: - CREATED - INSERTED - PUBLISHED type: string Instant: type: string format: date-time example: - '2022-03-10T04:15:50.0000000+00:00' Sender: required: - type - id - pspId - pspName - pspBrokerId - channelId type: object properties: type: $ref: '#/components/schemas/SenderTypeEnum' id: pattern: ^(.{1,35})$ type: string description: The identifier of the PSP sender entity.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.istitutoMittente.identificativoUnivocoMittente.codiceIdentificativoUnivoco]. example: - SELBIT2B pspId: pattern: ^(.{1,35})$ type: string description: The domain identifier of the PSP sender entity.
In the XML request for SOAP primitives, this field is mappable with the tag [NodoInviaFlussoRendicontazione.identificativoPSP]. example: - '60000000001' pspName: pattern: ^(.{3,70})$ type: string description: The fiscal name of the PSP sender entity.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.istitutoMittente.denominazioneMittente]. example: - PSP Name pspBrokerId: pattern: ^(.{1,35})$ type: string description: The domain identifier of the PSP sender entity's Broker.
In the XML request for SOAP primitives, this field is mappable with the tag [NodoInviaFlussoRendicontazione.identificativoIntermediarioPSP]. example: - '70000000001' channelId: pattern: ^(.{1,35})$ type: string description: The identifier of the PSP sender entity's Channel.
In the XML request for SOAP primitives, this field is mappable with the tag [NodoInviaFlussoRendicontazione.identificativoCanale]. example: - '80000000001' password: pattern: ^(\w{8,15})$ type: string description: The password of the PSP sender entity's Channel.
In the XML request for SOAP primitives, this field is mappable with the tag [NodoInviaFlussoRendicontazione.password]. example: - password deprecated: true PaginatedPaymentsResponse: type: object properties: metadata: $ref: '#/components/schemas/Metadata' count: type: integer description: The number of elements that can be found in this page. format: int64 example: - 100 data: type: array items: $ref: '#/components/schemas/Payment' description: The list of payments that are included in this page. Date-time fields inside each item are defined with UTC time-zone. The original business day is preserved where applicable. LocalDate: type: string format: date Metadata: type: object properties: pageSize: type: integer description: The size of the current page shown in response format: int32 example: - 25 pageNumber: type: integer description: The index of the current page shown in response format: int32 example: - 1 totPage: type: integer description: The total number of the pages that can be retrieved in order to show all elements. format: int32 example: - 3 Payment: required: - index - iuv - iur - idTransfer - pay - payStatus - payDate type: object properties: index: minimum: 1.0 type: integer description: Unique index of the payment in the flow format: int64 example: - 1 iuv: pattern: ^(.{1,35})$ type: string description: The value of the 'Identificativo Univoco Versamento' code related to the payment.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.datiSingoliPagamenti.identificativoUnivocoVersamento]. example: - '17854456582215' iur: pattern: ^(.{1,35})$ type: string description: The value of the 'Identificativo Univoco Riscossione' code related to the payment in the flow.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.datiSingoliPagamenti.identificativoUnivocoRiscossione]. example: - '3354426511008' idTransfer: maximum: 5.0 minimum: 1.0 type: integer description: The value of the transfer identifier related to the payment during the payment process.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.datiSingoliPagamenti.indiceDatiSingoloPagamento]. format: int64 example: - 1 pay: pattern: ^\d{1,2147483647}[.]\d{1,2}?$ type: number description: The value of the payment amount in decimal euro.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.datiSingoliPagamenti.singoloImportoPagato]. format: double example: - 0.01 payStatus: enum: - EXECUTED - STAND_IN - STAND_IN_NO_RPT - NO_RPT type: string description: The value of the status of the payment in relation to ist completion.
In the XML request for SOAP primitives, this field is mappable with the tag [FlussoRiversamento.datiSingoliPagamenti.codiceEsitoSingoloPagamento].
The enumeration is mapped with the following values:
  • EXECUTED -> 0
  • STAND_IN -> 4
  • STAND_IN_NO_RPT -> 8
  • NO_RPT -> 9
example: - EXECUTED payDate: $ref: '#/components/schemas/Instant' FlowByPSP: type: object properties: fdr: type: string description: The unique identifier of the flow. example: - 2025-01-0188888888888-0000001 pspId: type: string description: The domain identifier of the PSP related to the flow. example: - '88888888888' revision: type: integer description: The revision (or version) of the flow. format: int64 example: - 1 published: $ref: '#/components/schemas/Instant' flowDate: $ref: '#/components/schemas/Instant' SenderTypeEnum: enum: - LEGAL_PERSON - ABI_CODE - BIC_CODE type: string ErrorResponse: type: object properties: errorId: type: string description: The unique identifier that can be used for tracking request and error response. example: - 50905466-1881-457b-b42f-fb7b2bfb1610 httpStatusCode: type: integer description: The HTTP status code related to the error message. format: int32 example: - 500 httpStatusDescription: type: string description: The descriptive name of the HTTP status code. example: - Internal Server Error appErrorCode: type: string description: The operational error code related to the error response example: - FDR-0500 errors: type: array items: $ref: '#/components/schemas/ErrorMessage' description: The list of specific errors to show for the error response. Logo: type: object properties: logo: type: string format: byte minLength: 1 required: - logo ProblemJson: type: object properties: type: type: string format: uri description: 'An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type (e.g., using HTML).' default: about:blank example: https://example.com/problem/constraint-violation title: type: string description: 'A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable' status: type: integer format: int32 description: The HTTP status code generated by the origin server for this occurrence of the problem. minimum: 100 example: 200 exclusiveMaximum: 600 detail: type: string description: 'A human readable explanation specific to this occurrence of the problem.' example: There was an error processing the request instance: type: string format: uri description: 'An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced.' parameters: OrganizationFiscalCode: name: organization_fiscal_code in: path required: true description: Organization fiscal code. x-import: italia-ts-commons/lib/strings schema: type: string format: OrganizationFiscalCode securitySchemes: apiKeyHeader: type: apiKey name: Ocp-Apim-Subscription-Key in: header apiKeyQuery: type: apiKey name: subscription-key in: query SubscriptionKey: type: apiKey name: Ocp-Apim-Subscription-Key in: header description: The API key obtained through the Backoffice IO or both getService or cmsGetServiceKeys operation. ManageSubscriptionKey: type: apiKey name: Ocp-Apim-Subscription-Key in: header description: The `manage` API key obtained through the Backoffice IO. x-refined-from: - fdr_organization.json - io-functions-services.yaml - pagopa-fdr-organizations-openapi.yml - pagopa-io-services-openapi.yml