Passa al contenuto principale

Pagamento eCommerce

La Hosted Payment Page è la soluzione più semplice e sicura per iniziare ad accettare pagamenti online. In pochi passaggi puoi offrire ai tuoi clienti un'esperienza di checkout fluida, responsive e personalizzabile, supportando carte, wallet e metodi alternativi.


Per innescare un pagamento in modalità eCommerce semplice, in modalità redirect:

  1. Invocare il servizio INIT
  2. Salvare il paymentId ricevuto in risposta
  3. Redirigere il browser verso la redirectURL ricevuta in risposta

Al termine del pagamento il browser del cliente verrà rediretto sulla notifyURL impostata nel servizio di INIT.

Invocare il servizio VERIFY per recuperare l'esito della transazione.


E-commerce payment flow


POST 01_Init

{{endpoint}}/pgw/payment/init

Il servizio INIT permette di inizializzare un pagamento eCommerce in modalità redirect.

È possibile gestire diverse tipologie di transazione tramite il parametro txOp:

  • RESERVATION - preautorizza un importo, bloccando il plafond della carta. Per catturare la transazione sarà necessario invocare il servizio CAPTURE.
  • SALE - autorizza e cattura l'importo con un'unica operazione.
  • VERIFICATION - verifica la validità della carta al fine di tokenizzarla (COF).

Nella request sono previsti tre URL:

  • errorURL (obbligatorio) - viene utilizzato per re-indirizzare il browser del cliente in caso di errori in fase di navigazione dell'utente.
  • notifyURL (obbligatorio) - viene utilizzato per re-indirizzare il browser del cliente al termine del pagamento. Il controllo passa al merchant che deve occuparsi di invocare il servizio VERIFY per recuperare l'esito della transazione.
  • callbackURL (opzionale) - se valorizzato viene innescato in modalità server2server per notificare la conclusione del pagamento. Il merchant deve occuparsi di invocare il servizio VERIFY per recuperare l'esito della transazione.

REQUEST

{
"txHead": {
"merId": "{{merId}}",
"txId": "test1"
},
"txReq": {
"txOp": "RESERVATION",
"amount": {
"value": 100,
"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": "test1",
"resultCode": "IGFS_000",
"errDescription": ""
},
"paymentId": "139781624108079453",
"redirectURL": "https://testeps.netswgroup.it/IGFS_CG_WEB/app/cc/main/show?referenceData=6B942EBEEB0B4DCE9F34428DA1B5D7B5"
}

GET 02_Verify

{{endpoint}}/pgw/payment/verify

Il servizio VERIFY restituisce l'esito di un pagamento.

I parametri necessari per invocare il servizio sono:

  • merId - identificativo del merchant
  • txId - identificativo della transazione impostato dal merchant
  • paymentId - identificativo della transazione sul paymentGateway, restituito in fase di INIT

In caso di esito positivo vengono anche restituite tutte le informazioni di dettaglio.

Query Parameters

NomeValoreDescrizione
merId{{merId}}-
paymentId139781624108079453-
txIdtest1-

REQUEST

{{endpoint}}/pgw/payment/verify?merId={{merId}}&paymentId=139781624108079453&txId=test1

RESPONSE

{
"txHead": {
"merId": "{{merId}}",
"txId": "test1",
"resultCode": "IGFS_000",
"errDescription": "TRANSAZIONE OK"
},
"txRes": {
"paymentId": "139781624108079453",
"tranId": 3069867750865394,
"status": "OK"
},
"amount": {
"value": 100,
"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"
}
}