Satispay payments are managed according to the Dynamic Code flow.
More info can be found at the following official Satispay link: One-Off Dynamic Code

The process flow is:

  1. The Merchant application generate a dynamic QRCode which includes the payment amount

  2. The QRCode is shown to the Shopper on a display front-facing the Shopper

  3. The Shopper, using Satispay App, scans the QRCode and confirm the payment

  4. The Merchant application, reads the status of the payment request.
    Satispay Statuses are:
    ACCEPTED The payment transaction is completed successfully
    PENDING The shopper has not yet scanned the Dynamic QRCode
    CANCELLED The payment authorization has been cancelled.

The process sequence is represented by this image taken from Satispay official website.

Testing

You can apply for a customer test account registering here on Satispay Developers Site.
After registering, Satispay team will send you an email with sandbox credentials and two links where you can download:

  • the SHOP mobile staging application

  • the CONSUMER mobile staging application.

To obtain further and updated information please refer to Satispay Developers Site

Initial Authentication

Use the following program to generate KeyId starting from the Authorization Code provided by Satispay when you requested a staging or production account.

SatispayKeyIDGenerator_0100.zip

Unzip the profram into a folder and run the SatispayKeyIdGenerator tool.
To generate a new KeyId you must fill the Authorization Code field and select the desidered environment.

The KeyID must then be included in the Parameters XML section.

How to use the driver

Parameters

You must specify in the “keyId” Parameter the keyId returned by the Initial Authentication process.

Only in case of access to the Sandbox environment, you must also specify the Staging parameter.

<Parameters>
  <KeyID>..............</KeyID>
  <Staging>true</Staging>
</Parameters>
XML

Phases - Method PAY Only

The Satispay Driver uses Phases for payments, because the payment transaction is done in two steps.

Methods Refund and Void do not use Phases

Step 1 - Request the QR-Code

Phase: BEGIN

It creates a Payment Request and returns:

  • in the node AuthCode: the dynamic QRCode to be shown

  • in the node TraceAuditId: the Transaction Id that will be used in the following calls

Phase: DO

It verifies if the payment has been accepted by the Shopper. It must receive, in the node Attributes, the Transaction Id generated in Phase BEGIN

Phase: COMMIT

There is no COMMIT in the Satispay flow so there is no need to do a COMMIT. In case you want to execute the COMMIT, please not that this phase will always returns Success

Phase: ROLLBACK

It cancels a pending payment.
It must receive, in the node Attributes, the Transaction Id generated in Phase BEGIN

Notes

Version

Release Date

Notes

Download

1.00

17/08/2022

Rilascio Iniziale

TKPA_SATISPAY_0010.zip