Passa al contenuto principale

Pagamenti CIT – Card On File (COF)

Pagamenti CIT – Card On File

Per pagamenti COF si intendono quei pagamenti effettuati con carta tokenizzata (Card On File). I pagamenti CIT – Card On File in modalità redirect permettono all’utente di non dover digitare i dati carta, rendendo più veloce l’esperienza di acquisto.

Per poter eseguire pagamenti COF sarà necessario tokenizzare la carta eseguendo un primo pagamento E‑Commerce (vedi flusso Pagamento E‑Commerce). In risposta alla chiamata Verify verrà tornato il token (tokenValue) da usare per i pagamenti successivi.

Come eseguire un pagamento COF NEXT

  • Invocare il servizio 01_Init_CIT_NEXT impostando il campo pi.tokenValue con il token restituito da Verify della prima transazione.
  • Quando il browser del cliente atterra sulla notifyURL, invocare il servizio 04_Verify_CIT_NEXT per recuperare l’esito della transazione.

Esempio flusso pagamenti COF

POST 01_Init_CIT_FIRST

Url

{{endpoint}}/pgw/payment/init

Il primo pagamento COF è un pagamento E‑Commerce semplice.

  • Impostare txOp
    • VERIFICATION per validare la carta (può essere eseguita con importo a 0).
    • RESERVATION / SALE per tokenizzare la carta contestualmente a un pagamento.

REQUEST

{
"txHead": {
"merId": "{{merId}}",
"txId": "test2"
},
"txReq": {
"txOp": "VERIFICATION",
"txIndicatorType": "CIT_COF_FIRST",
"amount": {
"value": 0,
"currency": "EUR"
},
"description": "Description"
},
"poiInfo": {
"pitype": "CC"
},
"buyer": {
"email": "paymentgateway@netsgroup.com",
"language": "IT",
"name": "Name",
"lastName": "Surname"
},
"errorURL": "https://www.merchant.com/error",
"callbackURL": "https://www.merchant.com/server2server",
"notifyURL": "https://www.merchant.com/done"
}

RESPONSE

{
"txHead": {
"merId": "{{merId}}",
"txId": "test2",
"resultCode": "IGFS_000",
"errDescription": ""
},
"paymentId": "139271104108079467",
"redirectURL": "https://testeps.netswgroup.it/IGFS_CG_WEB/app/cc/main/show?referenceData=82DA029ADC15BC47E38B3FB01F69DCC6"
}

GET 02_Verify_CIT_FIRST

Url

{{endpoint}}/pgw/payment/verify

Il servizio Verify restituisce l’esito di un pagamento. In caso di primo pagamento COF, il merchant dovrà assicurarsi di salvare il TOKEN (tokenValue) da usare per pagamenti COF successivi.

Query Parameters

NomeValoreDescrizione
merId{{merId}}ID merchant
paymentId139271104108079467ID pagamento
txIdtest2ID transazione

REQUEST

{{endpoint}}/pgw/payment/verify?merId={{merId}}&paymentId=139271104108079467&txId=test2

RESPONSE

{
"txHead": {
"merId": "{{merId}}",
"txId": "test2",
"resultCode": "IGFS_000",
"errDescription": "TRANSAZIONE OK"
},
"txRes": {
"paymentId": "139271104108079467",
"tranId": 3069867760524570,
"status": "OK"
},
"amount": {
"value": 0,
"currency": "EUR"
},
"nssResult": "909",
"payer": {
"name": "tito",
"lastName": "lare"
},
"threeD": {
"protocolVersion": "2.1.0",
"enrStatus": "Y",
"authStatus": "Y",
"eci": "05"
},
"procRes": {
"procId": "00",
"procName": "SIMULATORE",
"authCode": "000002",
"addData": {
"posId": "01427002",
"merId": "7563667",
"acquirerID": "00",
"acquirerName": "SIMULATORE"
}
},
"poiInfo": {
"pitype": "CC",
"poiId": "TEST_MOBI"
},
"pi": {
"tokenValue": "0D9971E639F08C458511E0DD67B4166D"
},
"cardInfo": {
"maskedpan": "444433******1111",
"expDate": "2402",
"brand": "VISA"
}
}

POST 03_Init_CIT_NEXT

Url

{{endpoint}}/pgw/payment/init

Per eseguire un pagamento COF NEXT in modalità redirect, valorizzare i parametri:

  • tokenValue – TOKEN ricevuto alla fine della prima operazione (da pi.tokenValue in Verify).

REQUEST

{
"txHead": {
"merId": "{{merId}}",
"txId": "test3"
},
"txReq": {
"txOp": "SALE",
"txIndicatorType": "CIT_COF_NEXT",
"amount": {
"value": 500,
"currency": "EUR"
},
"description": "Description"
},
"poiInfo": {
"pitype": "CC"
},
"pi": {
"tokenValue": "0D9971E639F08C458511E0DD67B4166D"
},
"buyer": {
"email": "paymentgateway@netsgroup.com",
"language": "IT",
"name": "Name",
"lastName": "Surname"
},
"errorURL": "https://www.merchant.com/error",
"callbackURL": "https://www.merchant.com/server2server",
"notifyURL": "https://www.merchant.com/done"
}

RESPONSE

{
"txHead": {
"merId": "{{merId}}",
"txId": "test3",
"resultCode": "IGFS_000",
"errDescription": ""
},
"paymentId": "139239459108079471",
"redirectURL": "https://testeps.netswgroup.it/IGFS_CG_WEB/app/cc/main/show?referenceData=0548AB278E3A5B4734F35F168D641455"
}

GET 04_Verify_CIT_NEXT

Url

{{endpoint}}/pgw/payment/verify

Il servizio Verify restituisce l’esito di un pagamento. Anche per i pagamenti CIT COF NEXT è necessario interrogare Verify per:

  • ottenere lo stato definitivo
  • aggiornare lo stato ordine sul lato merchant

Query Parameters

NomeValoreDescrizione
merId{{merId}}ID merchant
paymentId139239459108079471ID pagamento
txIdtest3ID transazione

REQUEST

{{endpoint}}/pgw/payment/verify?merId={{merId}}&paymentId=139239459108079471&txId=test3

RESPONSE

{
"txHead": {
"merId": "{{merId}}",
"txId": "test3",
"resultCode": "IGFS_000",
"errDescription": "TRANSAZIONE OK"
},
"txRes": {
"paymentId": "139239459108079471",
"tranId": 3069867770758310,
"status": "OK"
},
"amount": {
"value": 500,
"currency": "EUR"
},
"nssResult": "909",
"payer": {
"name": "tito",
"lastName": "lare"
},
"threeD": {
"protocolVersion": "2.1.0",
"enrStatus": "Y",
"authStatus": "Y",
"eci": "05"
},
"procRes": {
"procId": "00",
"procName": "SIMULATORE",
"authCode": "000002",
"addData": {
"posId": "01427002",
"merId": "7563667",
"acquirerID": "00",
"acquirerName": "SIMULATORE"
}
},
"poiInfo": {
"pitype": "CC",
"poiId": "TEST_MOBI"
},
"pi": {
"tokenValue": "0D9971E639F08C458511E0DD67B4166D"
},
"cardInfo": {
"maskedpan": "444433******1111",
"expDate": "2402",
"brand": "VISA"
}
}