openapi: 3.2.0
info:
title: Pagopa Payment Events API
version: 1.0.0
contact:
name: 'SEND: supporto enti'
url: https://pagopa.atlassian.net/servicedesk/customer/portal/5
termsOfService: https://selfcare.notifichedigitali.it/termini-di-servizio
x-api-id: api-external-b2b-pa
x-summary: 'Piattaforma Notifiche: API B2B per le Pubbliche Amministrazioni'
description: 'Operations tagged PaymentEvents across 2 of this provider''s published API definitions: send-b2b-pa-bundle.yaml, pagopa-send-b2b-pa-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.notifichedigitali.it
description: Ambiente di produzione
- url: https://api.uat.notifichedigitali.it
description: Ambiente di collaudo
security:
- ApiKeyAuth: []
tags:
- name: PaymentEvents
description: Invocazioni per comunicare eventi di pagamento dalla PA
paths:
/delivery/events/payment/pagopa:
post:
operationId: paymentEventsRequestPagoPa
description: Questa API è a disposizione della Pubblica Amministrazione per inviare eventi di chiusura di una o più posizioni debitorie di tipo PagoPA.
tags:
- PaymentEvents
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentEventsRequestPagoPa'
responses:
'204':
description: OK
'400':
description: Invalid input
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
'404':
description: Not found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
'500':
description: Internal Server Error
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
summary: Payment events request pago pa
x-summary-source: derived
servers:
- url: https://api.notifichedigitali.it
description: Ambiente di produzione
- url: https://api.uat.notifichedigitali.it
description: Ambiente di collaudo
/delivery/events/payment/f24:
post:
deprecated: true
operationId: paymentEventsRequestF24
description: Questa API è a disposizione della Pubblica Amministrazione per inviare eventi di chiusura di una o più posizioni debitorie di tipo F24.
tags:
- PaymentEvents
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentEventsRequestF24'
responses:
'204':
description: OK
'400':
description: Invalid input
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
'404':
description: Not found
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
'500':
description: Internal Server Error
content:
application/problem+json:
schema:
$ref: '#/components/schemas/Problem'
summary: Payment events request F24
x-summary-source: derived
servers:
- url: https://api.notifichedigitali.it
description: Ambiente di produzione
- url: https://api.uat.notifichedigitali.it
description: Ambiente di collaudo
components:
schemas:
PaymentEventsRequestPagoPa:
title: Invio eventi di pagamento da PA a PN
description: Richiesta contenente un array di eventi di pagamento di tipo PagoPA di cui una Pubblica Amministrazione deve avvisare Piattaforma Notifiche.
type: object
required:
- events
properties:
events:
description: Elenco degli eventi di pagamento
type: array
items:
$ref: '#/components/schemas/PaymentEventPagoPa'
PaymentEventsRequestF24:
title: Invio eventi di pagamento da PA a PN
description: Richiesta contenente un array di eventi di pagamento di tipo F24 di cui una Pubblica Amministrazione deve avvisare Piattaforma Notifiche.
type: object
required:
- events
properties:
events:
description: Elenco degli eventi di pagamento
type: array
items:
$ref: '#/components/schemas/PaymentEventF24'
PaymentEventPagoPa:
title: Evento di pagamento PagoPa
description: "Comprende:
\n - _noticeCode_: \"codice avviso pagoPA\" di pagamento del sistema pagoPA, usato per pagamento online.
\n - _creditorTaxId_: codice fiscale dell'ente a cui fa riferimento il \"codice avviso pagoPA\".
\n - data e ora del pagamento.
\n - importo del pagamento in eurocent.
"
type: object
required:
- noticeCode
- creditorTaxId
- paymentDate
- amount
properties:
noticeCode:
$ref: '#/components/schemas/noticeCode'
creditorTaxId:
$ref: '#/components/schemas/paTaxId'
paymentDate:
type: string
pattern: ^([0-9]{4})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2}):([0-9]{2})(\.[0-9]+)?(Z|([+\-][0-9]{2}):([0-9]{2}))$
description: data e ora in formato ISO 8601
amount:
type: integer
format: int32
TaxId:
description: C.F. persona fisica o persona giuridica
type: string
minLength: 11
maxLength: 16
pattern: ^([A-Z]{6}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{2}[A-Z]{1}[0-9LMNPQRSTUV]{3}[A-Z]{1})|([0-9]{11})$
noticeCode:
description: Payment notice number numero avviso
example: '302000100000019421'
type: string
maxLength: 18
minLength: 18
pattern: ^\d+$
paTaxId:
description: Payment PA fiscal code
example: '77777777777'
type: string
maxLength: 11
minLength: 11
pattern: ^\d+$
Problem:
properties:
type:
description: URI reference of type definition
type: string
status:
description: The HTTP status code generated by the origin server for this occurrence of the problem.
type: integer
format: int32
example: 503
minimum: 100
exclusiveMaximum: 600
title:
description: A short, summary of the problem type. Written in english and readable
example: Service Unavailable
maxLength: 64
pattern: ^[ -~]{0,64}$
type: string
detail:
description: A human readable explanation of the problem.
example: Request took too long to complete.
maxLength: 4096
pattern: ^.{0,4096}$
type: string
traceId:
description: Internal support identifier associated to error
example: 123e4567-e89b-12d3-a456-426614174000
type: string
timestamp:
description: date and time referred to UTC
example: '2022-07-27T12:22:33.444Z'
type: string
format: date-time
errors:
type: array
minItems: 1
items:
$ref: '#/components/schemas/ProblemError'
required:
- status
- errors
ProblemError:
properties:
code:
description: Internal code of the error, in human-readable format
example: PN_PARAMETER_TOO_LONG | PN_PARAMETER_TOO_SHORT | PN_DUPLICATE_ENTRY | etc...
type: string
element:
description: Parameter or request body field name for validation error
example: body.order.item[2].quantity
type: string
detail:
description: A human readable explanation specific to this occurrence of the problem.
example: Parameter not valid
maxLength: 1024
type: string
required:
- code
PaymentEventF24:
title: Evento di pagamento F24
description: "Comprende:
\n - lo _IUN_ della notifica pagata,
\n - data e ora del pagamento,
\n - il codice fiscale del destinatario pagatore,
\n - la tipologia del destinatario pagatore (PF / PG),
\n - importo del pagamento in eurocent.
"
type: object
required:
- iun
- paymentDate
- recipientTaxId
- recipientType
- amount
properties:
iun:
type: string
minLength: 25
maxLength: 25
pattern: ^[A-Z]{4}-[A-Z]{4}-[A-Z]{4}-[0-9]{6}-[A-Z]{1}-[0-9]{1}$
paymentDate:
type: string
format: date-time
recipientTaxId:
$ref: '#/components/schemas/TaxId'
recipientType:
type: string
minLength: 2
maxLength: 2
pattern: PF|PG
amount:
type: integer
format: int32
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: x-api-key
x-refined-from:
- send-b2b-pa-bundle.yaml
- pagopa-send-b2b-pa-openapi.yml