Gestpay diventa Axerve Ecommerce Solutions

Primo pagamento

Questo tutorial ha lo scopo di fornire le informazioni necessarie per l’integrazione di Axerve Ecommerce Solutions e la creazione del primo pagamento, dopo aver configurato il profilo esercente secondo le indicazioni fornite nei capitoli precedenti.

Tipologia di integrazione

Axerve Ecommerce Solutions può essere integrato con un Ecommerce di due modi:

La prima parte di questo tutorial è valida per entrambe le tipologie di integrazione.

Step-by-Step

La prima cosa da fare, prima di reindirizzare il buyer su Axerve Ecommerce Solutions dal sito, è la creazione di un POST verso payment/create per iniziare il processo di pagamento. Cliccando sul link è possibile prendere visione delle API.

payment/create e payment/submit devono essere usati in ogni transazione per creare il processo di pagamento. L’unico caso in cui non è necessaria la chiamata payment/submit è quando il pagamento viene avviene tramite uno strumento di pagamento alternativo.

Ci sono due endpoint disponibili, test e produzione:

- POST https://sandbox.gestpay.net/api/v1/payment/create/
- POST https://ecomms2s.sella.it/api/v1/payment/create/

La chiamata POST a payment/create chiede ad Axerve Ecommerce Solutions di processare il pagamento. Imposta gli authorization headers:

Authorization: apikey R0VTUEFZNjU5ODcjI0VzZXJjZW50ZSBUZX....
Content-Type: application/json

Ogni chiamata POST deve avere Content-type: application/json header.

E il corpo:

{  
  "shopLogin":"GESPAY65987",
  "amount":"27.30",
  "currency":"EUR",
  "shopTransactionID":"your-custom-id"
}

Axerve Ecommerce Solutions risponderà con:

{
  "error": {
    "code": "0", // everything ok!
    "description": "request correctly processed"
  },
  "payload": {
    "paymentToken": "1c3f27af-1997-4761-8673-b94fbe508f31",
    "paymentID": "1081814508",
    "userRedirect": {
      "href": null
    }
  }
}

Con il paymentToken (1c3f27af-1997-4761-8673-b94fbe508f31) e il paymentID (1081814508) l’acquirente può essere reindirizzato alla pagina di pagamento.

A questo punto occorre scegliere il tipo di pagina di pagamento: di seguito riportiamo le istruzioni per la soluzione Lightbox, altrimenti è possibile passare al capitolo successivo Integrare la pagina di pagamento personalizzata.

Integrare la soluzione Lightbox

Nel caso in cui non sia necessaria una pagina di pagamento personalizzata, la soluzione Lightbox di Axerve Ecommerce Solutions è la risposta alle esigenze di facile integrazione e rapida gestione dei pagamenti su qualsiasi dispositivo, grazie al fatto che si adatta facilmente a qualsiasi dimensione dello schermo, mobile o desktop.

Maggiori informazioni sono disponibili sulla pagina dedicata alla documentazione della Lightbox.

Integrare la pagina di pagamento personalizzata

Questa soluzione è la più indicata per personalizzare il processo di pagamento e offrire un layout della pagina di pagamento secondo le proprie esigenze e in linea con il design del proprio Ecommerce.

Una volta creato la chiamata POST payment/create, è necessario disegnare un form HTML che contenga i dati di carta: numero di carta, data di scadenza e CVV.

A questo punto occorre effettuare una chiamata POST payment/submit con i dati di carta e il paymentToken generato dalla payment/create:

fetch('https://sandbox.gestpay.net/api/v1/payment/submit/',
    {
      method: 'POST',
      headers: {
        'paymentToken': `${PAYMENT_TOKEN}`,
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        "buyer":{
          "email":"test@email.com",
          "name":"Test Payment"
          },
        "paymentTypeDetails": {
          "creditcard": {
            "number":"4012001037141112",
            "expMonth":"05",
            "expYear":"27",
            "CVV":"444",
            "DCC":null
          }
        },
        "shopLogin":"GESPAY65987"
        }
      })
    }
  )

La POST payment/submit permette di pagare con le carte e molti altri pagamenti alternativi. La lista completa è disponibile nella documentazione API.

Arrivati qui, gli scenari possoo essere due:

Carta di credito senza protocolli 3D Secure

La carta non richiede particolari autorizzazion e la risposta alla call POS payment/submit sarà simile alla seguente:

{
  "error":{
    "code":"0",
    "description":"request correctly processed"
  },
  "payload":{
    "transactionType":"submit",
    "transactionResult":"OK",
    ...
    "paymentID":"1700444660",
    "userRedirect":{
      "href":"https://hype-app.github.io/gestpay-doc-beta/demo/response.html"
    }
  }
}

Ora è possibile direzionare il cliente su userRedirect.href, che sarà popolato secondo la configurazione impostata su backoffice o in accordo con i dati personalizzati presenti nella POST payment/submit.

Carta di credito con protocolli 3D Secure

Se la carta di credito ha i protocolli 3DS, Axerve Ecommerce Solutions risponderà con l’errore ErrorCode 8006 che richiede un’autenticazione della carta verso l’issuer:

{
  "error":{
    "code":"0",
    "description":"request correctly processed"
  },
  "payload":{
    "transactionType":"submit",
    "transactionResult":"",
    "transactionErrorCode":"8006",
    "transactionErrorDescription":"Verify By Visa",
    "paymentID":"1546124641",
    ...
    "userRedirect":{
      "href":"https://sandbox.gestpay.net/pagam/pagam3d.aspx?a=GESPAY65987&b=40cd411e-39a3-430f-b964-cb2018cd51a2&axerve3D=True"
    }
  }
}

Per completare il processo di pagamento, è necessario ridirezionare il buyer verso userRedirect.href e completare il pagamento. Al termine, il cliente atterrerà sulla pagina configurata nel backoffice.

Conclusioni

In questo tutorial, abbiamo visto come integrare Axerve Ecommerce Solutions su un sito Ecommerce. La documentazione prosegue con molte altre informazioni: dai pagamenti alternativi alle API per integrare servizi a valore aggiunto.