Bills payment via API and in real time
Payment service available for any type of bill
All the knowledge you need
Here you can find some advice to consider to approach this API. If you prefer, we provide code samples, OAS3 documentation, the ability to try the API live via the Swagger UI or import the entire collection into Postman. We also offer a Sandbox environment where you can experiment with all kinds of requests completely free of charge.
Get the token in the appropriate section before you start.
- Oas file url https://console.openapi.com/oas/en/bollettini.openapi.json
- Fork or import with Postman
- Production domain ws.pagasubito.it
- Sandbox domain test.ws.pagasubito.it
- Production Scopes 2
-
Sandbox Scopes 2
- POST test.ws.pagasubito.it/pay
- GET test.ws.pagasubito.it/pay
Bollettini (1.0.0)
Web service that allows you to pay bills, mav, rav, pago pa and car tax.
Bill payment request
Method that allows you to request a payment. The result will be a url that will redirect you to the payment portal.
Authorizations:
path Parameters
endpoint required | any Enum: 123 451 674 896 "rav" "mav" "pagopa" "bolloauto" Type of service requested |
Request Body schema: application/json
email required | string <email> customer email |
cognome | string customer last name |
nome | string customer first name |
indirizzo | string customer address |
telefono | string customer phone |
importo required | number <= 2496.99 amount to be paid |
cap | string <= 5 characters customer zip code |
localita | string customer town |
provincia | string <= 2 characters customer province |
ccp required | string <= 12 characters postal account |
causale required | string causal |
object (Callback) |
Responses
Response Schema: application/json
object | |
success | boolean |
message | string |
error | integer |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "importo": 123.12,
- "ccp": "12324",
- "causale": "string",
- "callback": {
- "method": "POST",
- "field": "data",
- "headers": {
- "session_id": "oiwejdf89453urf945jfg"
Response samples
- 200
- 400
- 404
- 406
- 428
- "data": {
- "id": "6489ca34bf95b3541e0ccb25",
- "success": true,
- "message": "",
- "error": null
All request
Method that allows you to see all your payment requests.
Authorizations:
Responses
Response Schema: application/json
object (Get) | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://ws.pagasubito.it/pay/"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 404
- "data": [
- {
- "id": "6481f66cf2129e73020e2e5d",
- "type": "pagopa",
- "importo": "",
- "timestamp": "1686238828014"
- {
- "id": "6481f5cbd503bfa6cf061192",
- "type": "mav",
- "importo": "123.12",
- "timestamp": "1686238667307"
- {
- "id": "6481f66cf2129e73020e2e5d",
- "type": "rav",
- "importo": "123.12",
- "timestamp": "1686238526070"
- {
- "id": "6481f506b5fc59ab15049fe4",
- "type": "896",
- "importo": "123.12",
- "timestamp": "1686238470629"
- "success": true,
- "message": "",
- "error": null
Single request
Method that allows you to see the single request identified by the id. The 'report' field is entered only after finalizing the payment and contains data on the outcome of the payment.
Authorizations:
path Parameters
id required | string Example: 64772d88496e98e849017aa8 Request id |
Responses
Response Schema: application/json
Get123-451-674-896 (object) or Getmav-rav (object) or Getpagopa (object) or Getbolloauto (object) | |
success | boolean |
message | string |
error | integer |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://ws.pagasubito.it/pay/%7Bid%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- 400
- 404
- "data": [
- {
- "id": "6481f4e11ca871c53c052bc1",
- "cognome": "",
- "nome": "",
- "indirizzo": "",
- "cap": "",
- "localita": "",
- "provincia": "",
- "telefono": "",
- "importo": "12312",
- "ccp": "218763",
- "causale": "causal",
- "type": "123",
- "timestamp": "1686238433199",
- "codice_bollettino": "",
- "callback": {
- "headers": {
- "session_id": "9834thjf9fhj8907yf4"
- "method": "POST",
- "field": "data",
- "data": { }
- "report": {
- "payment_status": "OK",
- "payment_id": "12020000340229",
- "payment_date": "2020-04-06 17:23:10",
- "total_amount": "126.12",
- "ccp": "218763",
- "bulletin_type": "123",
- "causal": "exemple causal",
- "operation_id": "111111",
- "code": ""
- "success": true,
- "message": "",
- "error": null
Get the receipt
Method that allows you to download the receipt identified by the ID. If the receipt exists a pdf file is returned.
Authorizations:
path Parameters
id required | string Example: 64772d88496e98e849017aa8 Request id |
Responses
Response Schema: application/pdf
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://ws.pagasubito.it/pay/%7Bid%7D/ricevuta"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 400
- 404
- 500
- "success": false,
- "message": "invalid id",
- "error": 234,
- "data": null