Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the pagoPA API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fitalia.it%2Fpagopa" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fitalia.it%2Fpagopa" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with pagoPA API.
Create a pagoPA payment notice for a citizen to settle an obligation with a public administration
Look up the current state of a payment notice by its identifier to drive UI status displays
Retrieve the official electronic receipt once a payment has been completed
Reconcile receipts back to internal accounting systems with the receipt identifier as the reference key
Patterns agents use pagoPA API for, with concrete tasks.
GET STARTED
★ Public administration self-service portal
Allow citizens to settle municipal fees through a self-service portal that creates pagoPA payment notices via POST /payments. Once the citizen completes the payment, the portal calls GET /payments/{id} to confirm success and GET /receipts/{id} to surface the official receipt. This replaces in-person counter visits for routine payments such as council tax instalments or document fees.
Create a pagoPA payment for amount 50.00 EUR with debtor fiscal code RSSMRA80A01H501U and return the payment notice id
Receipt automation for accounting reconciliation
Pull paid receipts via GET /receipts/{id} on a schedule and feed them into the public administration's accounting ledger. The agent matches each receipt to the originating obligation by id and posts the reconciled entry. Removes the manual step of staff downloading receipts from the pagoPA portal.
Fetch every receipt from yesterday via GET /receipts/{id} and post a journal entry per receipt
Status polling for citizen-facing status UIs
Drive a 'payment in progress' UI by polling GET /payments/{id} after the citizen leaves the pagoPA-hosted payment page. The agent updates the on-screen state when the notice transitions to settled and surfaces the receipt link as soon as it is available. Keeps the citizen-facing experience responsive without extra webhooks.
After redirect, poll GET /payments/{id} every 5 seconds for up to 2 minutes and surface success or pending state
AI agent assisting with public service payments
An AI agent embedded in a citizen support chat can initiate a pagoPA payment on behalf of the user by routing through Jentic to POST /payments. The agent searches for 'create pagoPA payment' and the matching operation is loaded with the API key already injected from the vault. Citizens get a pre-filled payment link without needing to navigate the public administration portal manually.
When the citizen confirms the amount, call POST /payments with their fiscal code and return the redirect link
3 endpoints — jentic publishes the only available openapi specification for pagopa api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/payments
Create a payment notice
/payments/{id}
Get the status of a payment notice
/receipts/{id}
Retrieve the receipt for a settled payment
/payments
Create a payment notice
/payments/{id}
Get the status of a payment notice
/receipts/{id}
Retrieve the receipt for a settled payment
What agents get from Jentic-routed access to this vendor.
Setup
Wiring pagoPA by hand means handling its Authorization header API key and matching Italian public-administration payment-notice formats yourself. Through Jentic you install once, import the pagoPA API from the API Directory, store the key once, and your agent calls it.
Permission scoping
pagoPA takes the payment target in the request body when creating a notice, so scope by operation: limit the agent to the operations it needs, such as retrieving a payment or a receipt, and add the create-payment operation only when you want it. You pick the allowed set, so it cannot reach beyond public-administration payment notices.
Credential isolation
Your pagoPA API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'create a pagoPA payment notice' or 'fetch a receipt', and Jentic returns the matching operation with its input schema, including the debtor fiscal code field, so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Stripe API
Global payments platform that handles cards, wallets, and SEPA outside the pagoPA scheme
Choose Stripe when the buyer is private-sector or international rather than an Italian public administration debtor
Specific to using pagoPA API through Jentic.
Why is there no official OpenAPI spec for pagoPA API?
The Italian government documents pagoPA on developers.italia.it without publishing a single canonical OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call pagoPA via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.
What authentication does the pagoPA API use?
pagoPA uses an API key passed in the Authorization header. Credentials are issued via the developers.italia.it onboarding process and tied to a specific public administration entity. Through Jentic the credential is held in the vault and injected at request time - agents never see the raw key.
Can I retrieve a receipt for a completed payment?
Yes. Call GET /receipts/{id} with the receipt identifier returned after settlement. The response is the official electronic receipt that satisfies Italian fiscal record-keeping requirements.
What are the rate limits for the pagoPA API?
The spec does not declare numeric rate limits. pagoPA applies throttling at the gateway tied to the issuing public administration's accreditation tier, with bursts that are generous for citizen-driven interactive flows. Confirm the limit for your accreditation before driving large bulk reconciliation jobs.
How do I create a payment through Jentic?
Search Jentic with the query 'create pagoPA payment notice', load the POST /payments operation, and execute it with the citizen's fiscal code and the amount. The response includes the payment id that the agent then redirects the citizen to settle.
Is pagoPA available outside Italy?
pagoPA is the national payment platform for the Italian public administration. It accepts payments from international cardholders into Italian public bodies but is not generally available for non-Italian public-sector use cases - choose a different payment processor for those.
Can I limit what my agent is allowed to do with the pagoPA API?
Yes. Because you run Jentic One yourself, your own rules decide which pagoPA operations and credentials the agent can use, and you scope access per operation. You can allow only read operations like GET /payments/{id} to check a notice status and GET /receipts/{id} to fetch a receipt, and add the POST /payments create-payment operation to the allowed set only when you want the agent to initiate a payment. Since you pick the allowed operations, the agent cannot reach beyond the public administration payment notices you expose.
Know of an official OpenAPI document? Contribute it →
For Agents
Initiate citizen payments to Italian public administrations through pagoPA - create a payment notice, check its status, and retrieve the issued receipt.
Use for: Create a pagoPA payment for a parking fine, Get the current status of a pagoPA payment notice, Retrieve the official receipt for a completed payment, I want to reconcile a paid receipt against my accounting system
Not supported: Does not handle private-sector card payments, payouts, or refunds - use for Italian public administration payment notices only.
Jentic publishes the only available OpenAPI specification for pagoPA API, keeping it validated and agent-ready. pagoPA is the Italian national payment platform run for public administrations, exposing endpoints to initiate citizen payments to government entities and to retrieve receipts. The 3 endpoints cover POST /payments to create a payment notice, GET /payments/{id} to track its state, and GET /receipts/{id} to fetch the issued receipt. Authentication is an API key passed in the Authorization header under credentials issued through the developers.italia.it onboarding process.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>