diff --git a/src/main/resources/agreementTemplate/index.html b/src/main/resources/agreementTemplate/index.html
index 4b91d4b0..be4d348a 100644
--- a/src/main/resources/agreementTemplate/index.html
+++ b/src/main/resources/agreementTemplate/index.html
@@ -42,9 +42,9 @@
Richiesta di fruizione
In data ${todayDate} alle ore ${todayTime}, l’Infrastruttura ha ricevuto la
richiesta di fruizione contraddistinta da id ${agreementId} (di seguito “Richiesta di Fruizione”),
inviata dall’aderente
- ${consumerName} (di seguito “Fruitore”), tramite l’operatore amministrativo
+ ${consumerText} (di seguito “Fruitore”), tramite l’operatore amministrativo
${submitter},
- per l’E-service ${eServiceName} reso disponibile dall’aderente ${producerName}
+ per l’E-service ${eServiceName} reso disponibile dall’aderente ${producerText}
(di seguito “Erogatore”) di cui il Fruitore soddisfa i seguenti requisiti di fruizione per lo stesso previsti
dall’Erogatore.
diff --git a/src/main/scala/it/pagopa/interop/agreementprocess/service/AgreementContractCreator.scala b/src/main/scala/it/pagopa/interop/agreementprocess/service/AgreementContractCreator.scala
index c99de3c5..c9937990 100644
--- a/src/main/scala/it/pagopa/interop/agreementprocess/service/AgreementContractCreator.scala
+++ b/src/main/scala/it/pagopa/interop/agreementprocess/service/AgreementContractCreator.scala
@@ -157,7 +157,11 @@ final class AgreementContractCreator(
agreementId = agreement.id,
eService = eService.name,
producerName = producer.name,
+ producerOrigin = producer.externalId.origin,
+ producerIPACode = producer.externalId.value,
consumerName = consumer.name,
+ consumerOrigin = consumer.externalId.origin,
+ consumerIPACode = consumer.externalId.value,
certified = certified,
declared = declared,
verified = verified,
diff --git a/src/main/scala/it/pagopa/interop/agreementprocess/service/PDFCreator.scala b/src/main/scala/it/pagopa/interop/agreementprocess/service/PDFCreator.scala
index ccea4466..84521113 100644
--- a/src/main/scala/it/pagopa/interop/agreementprocess/service/PDFCreator.scala
+++ b/src/main/scala/it/pagopa/interop/agreementprocess/service/PDFCreator.scala
@@ -65,11 +65,17 @@ object PDFCreator extends PDFCreator with PDFManager {
"activationTime" -> activationTime,
"activator" -> pdfPayload.activator,
"eServiceName" -> pdfPayload.eService,
- "producerName" -> pdfPayload.producerName,
- "consumerName" -> pdfPayload.consumerName
+ "producerText" -> getTenantText(pdfPayload.producerName, pdfPayload.producerOrigin, pdfPayload.producerIPACode),
+ "consumerText" -> getTenantText(pdfPayload.consumerName, pdfPayload.consumerOrigin, pdfPayload.consumerIPACode)
)
}
+ private def getTenantText(name: String, origin: String, value: String): String = {
+ if (origin == "IPA")
+ s"$name (codice IPA: ${value})"
+ else name
+ }
+
private def getDeclaredAttributesText(declared: Seq[(ClientAttribute, PersistentDeclaredAttribute)]): String =
declared.map { case (clientAttribute, tenantAttribute) =>
val date = getDateText(tenantAttribute.assignmentTimestamp)
diff --git a/src/main/scala/it/pagopa/interop/agreementprocess/service/util/PDFPayload.scala b/src/main/scala/it/pagopa/interop/agreementprocess/service/util/PDFPayload.scala
index b92051f7..a2be7cfc 100644
--- a/src/main/scala/it/pagopa/interop/agreementprocess/service/util/PDFPayload.scala
+++ b/src/main/scala/it/pagopa/interop/agreementprocess/service/util/PDFPayload.scala
@@ -15,7 +15,11 @@ final case class PDFPayload(
agreementId: UUID,
eService: String,
producerName: String,
+ producerOrigin: String,
+ producerIPACode: String,
consumerName: String,
+ consumerOrigin: String,
+ consumerIPACode: String,
certified: Seq[(ClientAttribute, PersistentCertifiedAttribute)],
declared: Seq[(ClientAttribute, PersistentDeclaredAttribute)],
verified: Seq[(ClientAttribute, PersistentVerifiedAttribute)],