Versione 2.0

JSON Evento Pagamento

{
  "id": "68dada78-2398-4a11-b80a-98aaede3371c",
  "user_id": "5b00796e-ef10-4c98-b9f5-b0f7ffd7a17d",
  "type": "PAGOPA",
  "tenant_id": "60e35f02-1509-408c-b101-3b1a28109329",
  "service_id": "b21c4429-95e4-45d5-930f-44eb74136625",
  "created_at": "2023-06-06T11:59:11+02:00",
  "updated_at": "2023-06-12T00:10:16+02:00",
  "status": "PAYMENT_STARTED",
  "reason": "79501b2a-c9ad-41f8-a9e7-a885f2d570a2 - BNRMHL75C06G702B",
  "remote_id": "79501b2a-c9ad-41f8-a9e7-a885f2d570a2",
  "payment": {
    "transaction_id": null,
    "paid_at": null,
    "expire_at": "2023-09-04T11:59:05+02:00",
    "amount": 1.34,
    "currency": "EUR",
    "notice_code": "001550000000024427",
    "iud": "68dada7823984a11b80a98aaede3371c",
    "iuv": "550000000024427",
    "split": [
      {
        "code": "c_1",
        "amount": 1.00,
        "meta": {}
      },
      {
        "code": "c_2",
        "amount": 0.34,
        "meta": {}
      }
    ]
  },
  "links": {
    "online_payment_begin": {
      "url": "https://iris-proxy-qa.boat.opencontent.io/online-payment/68dada78-2398-4a11-b80a-98aaede3371c?gw=https://iristest.rete.toscana.it/gateway/PaymentAuthentication?token=1686045553436001U132&expire_at=2023-06-06T12:13:13",
      "last_opened_at": "2023-06-06T11:59:26+02:00",
      "method": "GET"
    },
    "online_payment_landing": {
      "url": "https://servizi.comune-qa.bugliano.pi.it/lang/it/pratiche/79501b2a-c9ad-41f8-a9e7-a885f2d570a2/detail",
      "last_opened_at": "2023-06-06T11:59:57+02:00",
      "method": "GET"
    },
    "offline_payment": {
      "url": "https://iris-proxy-qa.boat.opencontent.io/notice/68dada78-2398-4a11-b80a-98aaede3371c",
      "last_opened_at": "2023-06-06T11:59:20+02:00",
      "method": "GET"
    },
    "receipt": {
      "url": null,
      "last_opened_at": null,
      "method": "GET"
    },
    "notify": [
      {
        "url": "https://servizi.comune-qa.bugliano.pi.it/lang/api/applications/79501b2a-c9ad-41f8-a9e7-a885f2d570a2/payment",
        "method": "POST",
        "sent_at": null
      }
    ],
    "update": {
      "url": "http://iris-proxy-qa.boat-backplane.opencontent.io/update/68dada78-2398-4a11-b80a-98aaede3371c",
      "last_check_at": "2023-06-12T00:10:16+02:00",
      "next_check_at": "2023-06-12T01:10:16+02:00",
      "method": "GET"
    }
  },
  "payer": {
    "type": "human",
    "tax_identification_number": "BNRMHL75C06G702B",
    "name": "Michelangelo",
    "family_name": "Buonarroti",
    "street_name": "Cesare Battisti",
    "building_number": "",
    "postal_code": "38010",
    "town_name": "Bugliano",
    "country_subdivision": "PI",
    "country": "IT",
    "email": "lorenzo.bertoli@opencitylabs.it"
  },
  "event_id": "e0b25e33-9d38-4781-823a-ed04753aea01",
  "event_version": "2.0",
  "event_created_at": "2023-06-12T00:10:16+02:00",
  "app_id": "iris-payment-proxy-qa:1.2.8"
}

Validazione campi

Payment

CampoTipoObbligatorioValidazione

id

UUID

user_id

UUID

type

string(50)

Ogni proxy deve implementare un tipo di pagamento. Se per esempio, il proxy in questione gestisce pagamenti pagopa allora il campo va validato verificando che esso sia valorizzato a PAGOPA. In caso contrario si scarta l'evento e si emette un log di errore.

tenant_id

UUID

service_id

UUID

created_at

Datetime

ISO8601

updated_at

Datetime

ISO8601

status

Enum

Valori permessi: CREATION_PENDING CREATION_FAILED PAYMENT_PENDING PAYMENT_STARTED PAYMENT_CONFIRMED PAYMENT_FAILED NOTIFICATION_PENDING

COMPLETE EXPIRED

reason

string(140)

Causale del pagamento. Non può eccedere i 140 caratteri.

remote_id

UUID

payment

PaymentData

links

Links

payer

Payer

event_id

UUID

event_version

string(10)

L'attuale versione dell'evento deve essere "1.0". Ogni proxy deve validare la versione dell'evento in modo da sapere se processarlo o meno.

event_created_at

Datetime

ISO8601

app_id

string(100)

Valorizzarlo nel formato <nome-proxy>:<versione-proxy> Es. iris-payment-proxy:1.3.0

PaymentData

CampoTipoObbligatorioValidazione

transaction_id

string(255)

Fornito dall'intermediario di pagamento. La lunghezza dunque può essere variabile

paid_at

Datetime

ISO8601

expire_at

Datetime

ISO8601 E' già valorizzato a priori, quindi non viene gestito dal proxy

amount

float

E' già valorizzato a priori, quindi non viene gestito dal proxy

currency

string(3)

ISO4217

notice_code

string(50)

iud

string(50)

iuv

string(50)

split

List[PaymentDataSplit]

PaymentDataSplit

CampoTipoObbligatorioValidazione

code

string(50)

amount

float

meta

json

CampoTipoObbligatorioValidazione

online_payment_begin

UrlData

online_payment_landing

UrlData

offline_payment

UrlData

receipt

UrlData

notify

List[Notify]

update

Update

UrlData

CampoTipoObbligatorioValidazione

url

string

last_opened_at

Datetime

ISO8601

method

Enum

Valori permessi: GET POST

Notify

CampoTipoObbligatorioValidazione

url

string

method

Enum

Valori permessi: GET POST

sent_at

Datetime

ISO8601

Update

CampoTipoObbligatorioValidazione

url

string

last_check_at

Datetime

ISO8601

next_check_at

Datetime

ISO8601

method

Enum

Valori permessi: GET POST

Payer

CampoTipoObbligatorioValidazione

type

Enum

Valori permessi: human legal

tax_identification_number

string(255)

name

string(255)

family_name

string(255)

street_name

string(255)

building_number

string(255)

postal_code

string(255)

town_name

string(255)

country_subdivision

string(2)

ISO 3166-2

country

string(2)

ISO 3166-1 alpha-2

email

string(255)

Last updated

Logo

Documentazione Opencity Italia