Passa al contenuto principale

Satispay

Perché scegliere Satispay​

Satispay è un'app di pagamento italiana che permette di acquistare online e nei negozi fisici, inviare e ricevere denaro, pagare buoni pasto e abbonamenti. Il pagamento si completa direttamente dall'app, senza inserire i dati di una carta.

Approfondimento

Per ulteriori informazioni consulta la documentazione ufficiale Satispay


Servizi e funzionalità disponibili tramite integrazione Fabrick​

L'integrazione di Satispay con Fabrick Payment Orchestra mette a disposizione le seguenti funzionalità:

  • Tre prodotti di pagamento: e-money, Meal Voucher e Fringe Benefit, in base alle abilitazioni richieste dall'esercente a Satispay.
  • Pagamenti ricorrenti: disponibili per tutti gli esercenti tramite tokenizzazione (vedi Tokenizzazione e pagamenti ricorrenti).
  • Buoni pasto configurabili: possibilità di limitare o escludere l'utilizzo dei Meal Voucher sulla singola transazione (vedi Meal Voucher).
  • Gestione degli storni: storni totali per tutti i prodotti, parziali e multipli per l'e-money (vedi Limiti sugli storni).
  • Separazione/contestualità tra autorizzazione e conferma finanziaria: la cattura può essere contestuale all'autorizzazione oppure disposta in un momento successivo (vedi Separazione tra autorizzazione e cattura).

Prodotti Satispay disponibili​

L'integrazione abilita gli esercenti a ricevere i pagamenti attraverso tre prodotti:

ProdottoDescrizioneAbilitazione
e-moneyProdotto di default di Satispay: borsellino elettronico ricaricato dal cliente tramite IBAN.Attivo per tutti gli esercenti
Meal VoucherBuoni pasto. Il numero massimo utilizzabile in una transazione è 8 di default, in conformità alla normativa italiana. Combinabile con e-money nella stessa transazione.Riservato agli esercenti con MCC idonei (es. food, beverage, groceries). Richiede abilitazione esplicita da parte di Satispay e cattura contestuale
Fringe BenefitBenefit aziendali. Non può essere utilizzato insieme a e-money o Meal Voucher, è possibile utilizzare una sola di queste modalità di pagamento per ciascuna transazione.Riservato agli esercenti con MCC idonei. Richiede abilitazione esplicita da parte di Satispay. Nessun vincolo sul tipo di cattura: utilizzabile anche con cattura separata
Abilitazione lato Satispay

Meal Voucher e Fringe Benefit non si attivano tramite Fabrick. Oltre a rientrare nella categoria merceologica idonea, l'esercente deve richiedere esplicitamente a Satispay l'abilitazione di ciascun prodotto sul proprio negozio.


Separazione tra autorizzazione e cattura​

Per impostare o modificare la modalità di gestione delle transazioni del metodo di pagamento:

  1. Accedi alla Dashboard e vai su Impostazioni → Accedi alle configurazioni Accesso alle configurazioni dalla Dashboard

  2. Una volta reindirizzato sul backoffice, vai su Configurazioni → Ambiente e clicca su MOTO: si apre un pannello laterale con l'elenco dei metodi di pagamento attivi

  3. Individua il metodo di pagamento e seleziona la modalità desiderata tra Contestuale e Separata Configurazione MOTO per Satispay

MOTO

Per approfondire il funzionamento delle due modalità, consulta la sezione separazione tra autorizzazione e cattura.


Limiti sugli storni​

Le regole di storno variano in base al prodotto Satispay utilizzato dal buyer nel pagamento (riferimento Satispay):

ProdottoFinestra temporaleStorno parziale
e-moneyEntro 365 giorni dalla creazione del pagamentoConsentito, anche multiplo fino a concorrenza del totale
Meal VoucherSolo nello stesso giorno della creazione del pagamentoNon consentito: solo importo totale
Fringe BenefitEntro la fine del mese di creazione del pagamentoNon consentito: solo importo totale

Satispay su Fabrick Payment Orchestra: attivazione e modalità di integrazione​

Richiesta di attivazione​

Per utilizzare Satispay è necessario disporre di un account business Satispay. Se non ne hai già uno, è possibile registrarsi sul sito di Satispay.

Per iniziare ad accettare pagamenti con Satispay, puoi richiedere l'attivazione:

  • Contattando il tuo referente commerciale
  • Contattando l'assistenza al seguente link
Shop Code e Activation Code

In fase di attivazione è necessario comunicare a Fabrick lo Shop Code e l'Activation Code del negozio, reperibili nella dashboard di Satispay. In loro assenza la configurazione non può essere completata.

Meal Voucher e Fringe Benefit

L'abilitazione dei Meal Voucher e dei Fringe Benefit va richiesta direttamente a Satispay, non a Fabrick, ed è subordinata alla categoria merceologica del negozio (vedi Prodotti Satispay disponibili).

Una volta completate le procedure necessarie:

  • Fabrick abilita Satispay sul negozio e informa l'esercente.
  • È possibile verificare l'attivazione del metodo di pagamento all'interno della Dashboard, al percorso Workspace → Negozi → [Seleziona negozio] → Configurazioni

Satispay

Attivazione completata

Da questo momento, il tuo e-commerce è pronto per accettare pagamenti Satispay tramite Fabrick Payment Orchestra.

Tipologie di integrazione​

Fabrick offre due modalità di integrazione per utilizzare Satispay:

  • Integrazione hosted

    Integrazioni supportate

    ✓Checkout Page
    ✓Pay By Link
    ✓Web Component
    ✓Lightbox

    Satispay viene mostrato direttamente nella pagina di pagamento Fabrick, senza alcun intervento di sviluppo lato merchant. Fabrick gestisce autonomamente la visualizzazione del metodo e l'intera fase di processamento.

  • Integrazione tramite API

    Integrazioni supportate

    ✓API Only

    Il redirect verso Satispay è gestito direttamente tramite API. È necessario inizializzare la transazione con payment/create valorizzando il campo paymentType con il tag SATISPAY e gestire il redirect del buyer.

Testare Satispay in ambiente sandbox

Il processo per accedere all'ambiente di test è lo stesso previsto per la produzione: è possibile richiedere direttamente a Satispay l'accesso all'ambiente di test, recuperare lo Shop Code e l'Activation Code dedicati, comunicarli a Fabrick e connettersi all'ambiente di test per verificare i pagamenti.


Integrazione hosted​

Satispay viene mostrato direttamente nella pagina di pagamento Fabrick, senza alcuno sviluppo aggiuntivo da parte del merchant. Fabrick gestisce autonomamente la visualizzazione del metodo e l'intera fase di processamento della transazione.

Per impostare la chiamata con l'integrazione hosted, vai alla sezione creazione della transazione e redirect verso Satispay e rimuovi il campo paymentType dalla chiamata payment/create.

Pagina di pagamento con Satispay

Quando l'utente seleziona Satispay, viene reindirizzato al servizio per effettuare il login e completare il pagamento.

Pagina di pagamento con Satispay


Integrazione tramite API​

Per richiedere il pagamento con Satispay utilizzando l'integrazione tramite API, è necessario inizializzare la transazione tramite payment/create utilizzando il tag SATISPAY nel campo paymentType.

Creazione della transazione e redirect verso Satispay​

Request

POST /api/v1/payment/create
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"amount": "375.50",
"currency": "EUR",
"shopTransactionID": "FBK_OrderID",
"paymentType": ["SATISPAY"], // Per integrazione hosted eliminare questa riga
"paymentChannel": { "channelType": ["LINK"] }
}

In risposta viene restituito nel campo payload.userRedirect.href il link per il redirect del buyer verso Satispay.

Response

{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"paymentToken": "b59abdc3-4eac-4660-b11b-4879d308cf09",
"paymentID": "12864010053773",
"userRedirect": {
"href": "https://sandbox-web.axerve.com/orchestra/checkout/pbl/a/GESPAY12345/b/12864010053773/c/b59abdc3-4eac-4660-b11b-4879d308cf09"
},
"qrCode": null
}
}
Pulsante Satispay

Il link restituito può essere utilizzato sotto un pulsante Paga con Satispay. Per il materiale grafico ufficiale e le relative condizioni d'uso, contatta il tuo referente Satispay.


Funzionalità aggiuntive del metodo di pagamento​

Meal Voucher e Fringe Benefit​

Se il negozio è abilitato ai Meal Voucher e/o ai Fringe Benefit, questi prodotti sono sempre attivi: vengono applicati automaticamente da Satispay in base alla disponibilità del buyer e al wallet impostato come principale sulla sua app. Non è necessario inviare alcun parametro specifico per accettarli.

Meal Voucher: limitare i massimali della transazione​

Per impostazione predefinita, ovvero quando l'oggetto ProductDetails con Type: "12" non viene inviato, il sistema consente l'utilizzo del numero massimo di buoni previsto, pari a 8.

L'oggetto Type: "12" serve quindi esclusivamente a modificare o azzerare questo comportamento sulla singola transazione:

CampoEffetto
Type: "12"Identifica la voce come configurazione Meal Voucher
QuantityNumero massimo di buoni utilizzabili nella transazione (default: 8)
PriceImporto massimo complessivo pagabile in buoni

Per consentire l'utilizzo di un numero di buoni inferiore al massimale, valorizza Quantity con il numero desiderato. Nell'esempio la transazione accetta al massimo 4 buoni, per un importo complessivo in buoni non superiore a 32 €.

Request

POST /api/v1/payment/create
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"amount": "65.50",
"currency": "EUR",
"shopTransactionID": "FBK_OrderID",
"paymentType": ["SATISPAY"], // Per integrazione hosted eliminare questa riga
"paymentChannel": { "channelType": ["LINK"] },
"orderDetails": {
"ProductDetails": [
{
"Name": "Buoni pasto",
"Quantity": "4",
"Price": "32",
"UnitPrice": "8",
"Type": "12"
}
]
}
}
Il numero effettivo di buoni lo decide Satispay

Questi parametri definiscono solo dei massimali: sarà Satispay a determinare quanti buoni utilizzare effettivamente, in base alla disponibilità sul conto del buyer. Il numero reale di buoni impiegati è noto solo a pagamento completato.

Fringe Benefit: nessun parametro richiesto​

Per i Fringe Benefit non esiste alcun parametro di configurazione: se il negozio è abilitato, vengono applicati automaticamente quando il buyer ha il wallet Fringe Benefit impostato come principale. Numero e importo non possono essere indicati verso Satispay, quindi non va inviata alcuna voce ProductDetails dedicata.

Storno parziale non disponibile

I pagamenti effettuati con Fringe Benefit possono essere stornati solo per l'importo totale ed entro la fine del mese di creazione del pagamento. Vedi Limiti sugli storni.


Tokenizzazione e pagamenti ricorrenti​

I pagamenti ricorrenti sono abilitati e disponibili per tutti gli esercenti. Il flusso si compone di due fasi: la creazione del token e il suo utilizzo nei pagamenti successivi.

Creazione del token​

La tokenizzazione si attiva includendo il campo satisPayDescription nella chiamata payment/create. Il token può essere richiesto in due modi:

  • Contestualmente a un pagamento, valorizzando l'importo effettivo dell'ordine: la transazione viene addebitata al buyer e contemporaneamente viene generato il token
  • Senza pagamento, impostando l'importo a 0: non viene addebitato alcun importo e la chiamata serve esclusivamente a generare il token

Request

POST /api/v1/payment/create
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"amount": "0",
"currency": "EUR",
"shopTransactionID": "FBK_OrderID",
"paymentType": ["SATISPAY"],
"paymentChannel": { "channelType": ["LINK"] },
"satisPayDescription": "Abbonamento palestra"
}
Campo obbligatorio per la tokenizzazione

Il campo satisPayDescription è obbligatorio per avviare un flusso di pagamenti ricorrenti: contiene la descrizione dell'accordo mostrata al buyer. In sua assenza viene elaborato un pagamento standard.

In risposta viene restituito nel campo payload.userRedirect.href il link per il redirect del buyer verso Satispay.

Response

{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"paymentToken": "f18637e4-677f-4b3f-b494-d964d276c6e9",
"paymentID": "25320110053774",
"userRedirect": {
"href": "https://sandbox-web.axerve.com/orchestra/checkout/a/3064c1b18acb4b8d9b8a2e5c81dd398b/b/ac1dc75fef96f660fce83b75dd6c1f20f3b67d74487b937f570909c7e199aa8a28eac18b-275b-46e5-86f1-38b13abaa5e6LLSCRgadjN2jB6tm9WM7tZuBdAwDZSSNkR35Cz09khCThZf1mFk6Axzyt5CSVDm5aI7qYk0VX5KI2dKI0I985sqfS9uLoZTgUw0-JSJMtNRat7hsDgz7DzvatK8hiBf6I432mcdxE8af6oKNohNnnPE4cwpg"
},
"qrCode": null
}
}

Reindirizza il buyer al link restituito: il buyer accede a Satispay e autorizza l'accordo, che riporta la descrizione indicata in satisPayDescription.

Recupero del token​

Al completamento della transazione da parte del buyer, il token generato è disponibile tramite GET /payment/detail, nel campo payload.token: recuperalo e salvalo per i pagamenti successivi.

L'esito restituito in transactionResult dipende dalla modalità con cui è stato richiesto il token:

ModalitàtransactionResult
Tokenizzazione senza pagamento (importo 0)WAITING
Tokenizzazione contestuale a un pagamentoEsito positivo della transazione

Request

GET /api/v1/payment/detail/{paymentID}
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json

Response

{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"transactionType": "detail",
"transactionResult": "WAITING",
"transactionState": "",
"transactionErrorCode": "",
"transactionErrorDescription": "",
"bankTransactionID": "",
"shopTransactionID": "",
"shopTransactionID_2": "",
"authorizationCode": "",
"paymentID": "",
"currency": "",
"country": "",
"company": "",
"tdLevel": "",
"threeDS": {
"authenticationResult": null,
"transDetails": null
},
"events": null,
"buyer": null,
"risk": null,
"customInfo": null,
"alertCode": "",
"alertDescription": "",
"cvvPresent": "",
"dcc": null,
"maskedPAN": "",
"paymentMethod": "",
"productType": "",
"token": "STLBMSRUE3HYYUT9",
"tokenExpiryMonth": "",
"tokenExpiryYear": "",
"tokenDetails": null,
"fraudPrevention": null,
"automaticOperation": null
}
}

Utilizzo del token per pagamenti successivi​

Crea la richiesta di pagamento tramite payment/create senza valorizzare paymentType.

Request

POST /api/v1/payment/create
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
Authorization: apikey ****************
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"amount": "10",
"currency": "EUR",
"shopTransactionID": "FBK_OrderID"
}

Response

{
"error": {
"code": "0",
"description": "request correctly processed"
},
"payload": {
"paymentToken": "7ebd948a-c9ad-44c9-ac43-02b0beb55a7a",
"paymentID": "1541109548247",
"userRedirect": null,
"qrCode": null
}
}

Nella chiamata payment/submit utilizza il token per processare il pagamento:

  • Header PaymentToken: valorizza con il paymentToken ricevuto dalla payment/create
  • Body: valorizza paymentTypeDetails.satisPay.token con il token Satispay recuperato tramite payment/detail

Request

POST /api/v1/payment/submit
Host (sandbox): sandbox.gestpay.net
Host (produzione): ecomms2s.sella.it
PaymentToken: 7ebd948a-c9ad-44c9-ac43-02b0beb55a7a
Content-Type: application/json
{
"shopLogin": "GESPAY12345",
"paymentType": "SATISPAY",
"paymentTypeDetails": {
"satisPay": {
"token": "STLBMSRUE3HYYUT9"
}
}
}

Assistenza​

Fabrick

Satispay