Versione 3.0 (Work In Progress)

Interventi principali

Generalizzazione dell'identificativo della configurazione del pagamento

Fino a questo momento questa era denominata service_id, e richiamava una relazione 1 a 1 con l'identificativo del servizio sull'area personale. Data la necessità di configurare più pagamenti sullo stesso servizio, è necessario disaccoppiare ulteriormente la configurazione del pagamento dal servizio, introducendo la remote_collection che definisce una relazione 1 a molti tra servizio dell'area personale e configurazione di pagamento sul payment proxy

{

  "remote_collection": {
    "id": "68dada78-2398-4a11-b80a-98aaede3371c",
    "type": "application"
  }

}

Aumento della molteplicità dei versamenti per ogni pagamento da 1 a un massimo di 5.

{
...  
  "payment": {
    "transaction_id": null,
    "paid_at": null,
    "expire_at": "2023-09-04T11:59:05+02:00",
    "total_amount": 16.34,
    "currency": "EUR",
    "items": [
      {
        "type": "PAGOPA",
        "amount": 0.34,
        "reason": "bla",
        "notice_code": "001550000000024427",
        "iud": "68dada7823984a11b80a98aaede3371c",
        "iuv": "550000000024427",
        "receivers": {
          "tax_identification_number": "777777777",
          "name": "Comune di BlaBla",
          "iban": "IT60X0542811101000000123456",
          "address": "Via Del Campo",
          "building_number": "12",
          "postal_code": "38022",
          "town_name": "Roma",
          "country_subdivision": "RM",
          "country": "IT",
        },
        "due_type": "TARI",
        "pagopa_category": "9/12129/TS",
        "document": null,
        "split": []
      },
      {
        "type": "STAMP",
        "amount": 16,
        "reason": "bla",
        "notice_code": "001550000000024427",
        "iud": "68dada7823984a11b80a98aaede3371c",
        "iuv": "550000000024427",
        "receiver": {
          "tax_identification_number": "777777777",
          "name": "Comune di BlaBla",
          "iban": "IT60X0542811101000000123456",
          "address": "Via Del Campo",
          "building_number": "12",
          "postal_code": "38022",
          "town_name": "Roma",
          "country_subdivision": "RM",
          "country": "IT",
        },
        "due_type": "TARI",
        "pagopa_category": "9/12129/TS",
        "document": {
          "id": "123",
          "url": "http://example.com/api/documents/123",
          "sha256": "12398r4o32kjm534om543523489k23jn"
        },
        "split": []
      }
    ]
  }
...
}

Supporto del pagamento multi-beneficiario

{
...
  "receiver": {
    "tax_identification_number": "777777777",
    "name": "Comune di BlaBla",
    "iban": "IT60X0542811101000000123456",
    "address": "Via Del Campo",
    "building_number": "12",
    "postal_code": "38022",
    "town_name": "Roma",
    "country_subdivision": "RM",
    "country": "IT",
  }
...
}

Supporto del versamento della marca da bollo digitale

{
...  
      {
        "type": "STAMP",
        "amount": 16,
        "reason": "bla",
        "notice_code": "001550000000024427",
        "iud": "68dada7823984a11b80a98aaede3371c",
        "iuv": "550000000024427",
        "receiver": {
          "tax_identification_number": "777777777",
          "name": "Comune di BlaBla",
          "iban": "IT60X0542811101000000123456",
          "address": "Via Del Campo",
          "building_number": "12",
          "postal_code": "38022",
          "town_name": "Roma",
          "country_subdivision": "RM",
          "country": "IT",
        },
        "due_type": "TARI",
        "pagopa_category": "9/12129/TS",
        "document": {
          "id": "123",
          "url": "http://example.com/api/documents/123",
          "sha256": "12398r4o32kjm534om543523489k23jn"
        },
        "split": []
      }
...
}

Introduzione campo fault per tracciare eventuali errori dell'intermediario di pagamento

{
...
  "fault": {
    "detail": "string",
    "instance": "string",
    "status": 0,
    "title": "string",
    "type": "string"
  }
...
}

Introduzione dati anagrafici del versante oltre a quelli pagatore

{
...  
  "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"
  },
  "debtor": {
    "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"
  }
...
}

JSON Evento Pagamento Completo

{
  "id": "4a75de49-0462-4d8f-8f32-b377544faf98",
  "user_id": "f3323b10-db62-4aeb-95de-a87c1f678dad",
  "tenant_id": "60e35f02-1509-408c-b101-3b1a28109329",
  "remote_collection": {
    "id": "68dada78-2398-4a11-b80a-98aaede3371c",
    "type": "application"
  },
  "created_at": "2024-02-19T15:50:23+01:00",
  "updated_at": "2024-02-20T15:05:16+01:00",
  "status": "PAYMENT_PENDING",
  "fault": null,
  "remote_id": "218d7772-a747-4d5f-8c56-bbc7cfeab1a0",
  "payment": {
    "transaction_id": null,
    "paid_at": null,
    "expire_at": "2023-09-04T11:59:05+02:00",
    "total_amount": 17.34,
    "currency": "EUR",
    "items": [
      {
        "type": "PAGOPA",
        "amount": 1,
        "reason": "bla",
        "notice_code": "001550000000024427",
        "iud": "68dada7823984a11b80a98aaede3371c",
        "iuv": "550000000024427",
        "receiver": {
          "tax_identification_number": "777777777",
          "name": "Comune di BlaBla",
          "iban": "IT60X0542811101000000123456",
          "address": "Via Del Campo",
          "building_number": "12",
          "postal_code": "38022",
          "town_name": "Roma",
          "country_subdivision": "RM",
          "country": "IT",
        },
        "due_type": "TARI",
        "pagopa_category": "9/12129/TS",
        "document": null,
        "split": [
          {
            "code": "c_1",
            "amount": 0.5,
            "meta": {}
          },
          {
            "code": "c_2",
            "amount": 0.5,
            "meta": {}
          }
        ]
      },
      {
        "type": "PAGOPA",
        "amount": 0.34,
        "reason": "bla",
        "notice_code": "001550000000024427",
        "iud": "68dada7823984a11b80a98aaede3371c",
        "iuv": "550000000024427",
        "receiver": {
          "tax_identification_number": "777777777",
          "name": "Comune di BlaBla",
          "iban": "IT60X0542811101000000123456",
          "address": "Via Del Campo",
          "building_number": "12",
          "postal_code": "38022",
          "town_name": "Roma",
          "country_subdivision": "RM",
          "country": "IT",
        },
        "due_type": "TARI",
        "pagopa_category": "9/12129/TS",
        "document": null,
        "split": []
      },
      {
        "type": "STAMP",
        "amount": 16,
        "reason": "bla",
        "notice_code": "001550000000024427",
        "iud": "68dada7823984a11b80a98aaede3371c",
        "iuv": "550000000024427",
        "receiver": {
          "tax_identification_number": "777777777",
          "name": "Comune di BlaBla",
          "iban": "IT60X0542811101000000123456",
          "address": "Via Del Campo",
          "building_number": "12",
          "postal_code": "38022",
          "town_name": "Roma",
          "country_subdivision": "RM",
          "country": "IT",
        },
        "due_type": "TARI",
        "pagopa_category": "9/12129/TS",
        "document": {
          "id": "123",
          "url": "http://example.com/api/documents/123",
          "sha256": "12398r4o32kjm534om543523489k23jn"
        },
        "split": []
      }
    ]
  },
  "links": {
    "online_payment_begin": {
      "url": "https://api.qa.stanzadelcittadino.it/payment-proxy/jppa/online-payment/0452545f-40a9-4366-99b6-bbfb2b17b405",
      "last_opened_at": null,
      "method": "GET"
    },
    "online_payment_landing": {
      "url": "https://servizi.comune-qa.bugliano.pi.it/lang/it/pratiche/1a9190cc-25cc-447c-a670-8d828dc0d1ea/detail",
      "last_opened_at": null,
      "method": "GET"
    },
    "offline_payment": {
      "url": "https://api.qa.stanzadelcittadino.it/payment-proxy/jppa/notice/0452545f-40a9-4366-99b6-bbfb2b17b405",
      "last_opened_at": null,
      "method": "GET"
    },
    "receipt": {
      "url": "https://api.qa.stanzadelcittadino.it/payment-proxy/jppa/receipt/0452545f-40a9-4366-99b6-bbfb2b17b405",
      "last_opened_at": null,
      "method": "GET"
    },
    "notify": [
      {
        "url": "https://servizi.comune-qa.bugliano.pi.it/lang/api/applications/1a9190cc-25cc-447c-a670-8d828dc0d1ea/payment",
        "method": "POST",
        "sent_at": null
      }
    ],
    "update": {
      "url": "http://jppa-proxy-qa.boat-backplane.opencontent.io/payment-proxy/jppa/update/0452545f-40a9-4366-99b6-bbfb2b17b405",
      "last_check_at": "2024-02-19T08:37:57.181396519+01:00",
      "next_check_at": "2024-02-19T08:38:57.181404586+01: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"
  },
  "debtor": {
    "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": "c80a2a33-577a-49a1-b578-0d2267ea5653",
  "event_version": "3.0",
  "event_created_at": "2024-02-20T15:05:16+01:00",
  "app_id": "mypay-payment-proxy:1.8.0"
}

Validazione campi

Payment

RemoteCollectionType

Fault

PaymentData

PaymentDataItem

Receiver

Document

PaymentDataSplit

UrlData

Notify

Update

Payer

Debtor

{
  ...
  "fault": {
    "type": "/errors/provider-error",
    "title": "Il tipo tributo non esiste",
    "status": null,
    "detail": "Il tipo tributo non esiste",
    "instance": "/online-payment/4a75de49-0462-4d8f-8f32-b377544faf98"
  }
  ...
}

Last updated

Logo

Documentazione Opencity Italia