Payment
Request
For this operation there are two parameters that initialize the URI
- scheme:
neximpos
- authority:
payment
followed by the query parameters composed of the fields shown below:
Name parameter | Description | Type | Mandatory | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
amount | Amount in cents | int | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
callerName | String used to value the label of the “Torna A …” button | String | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
callerTrxId | Identification string of the transaction within the third-party app | String | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Value with which to pre-fill the email field on the send receipt screen | String | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sendTicket | Flag that enables the display of the button send receipt | boolean (true/false) | no (default true) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sms | Value with which to pre-fill the sms field in the sending receipt screen | String | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
uri | URI on which to retrieve the transaction response | String | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
urlTicket *** | Flag that enables the creation of the link to obtain the receipt image | boolean (true/false) | no (default true) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
addInfo1 | Value of the first additional tag (DF8001) | String (max 30 characters) | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
*** Available only for MobilePOS
Retryable Transaction Result
A retryable transaction result occurs when the transaction can be retried. Examples:
• Transaction canceled
• Card read timeout
• Wrong pin
This result requires a user interaction, more precisely the tap on “Retry”. Hence, the autoClose flag will not affect the flow in this case.
For not retryable ones, like a successful transaction or denied transaction, if autoClose value is true, the app will show the outcome animation and then close itself automatically. The caller app will receive the transaction data via deeplink.
Since autoClose flag implies the buttons hiding and the sendTicket implies the visualization of “send ticket” button, the usage of both together will NOT be allowed. If sendTicket and autoClose are requested within the same session (both are true), the application will send the error “-21”.
NB: The default sendTicket value is true for backward compatibility, so to use the autoClose feature it is mandatory to specify the value sendTicket false.
Example request
neximpos://payment?amount=1&callerTrxId=qwerty&sendTicket=false&urlTicket=true&callerName =Payment&email=name.surname%40domain.it&sms=3344556951&uri=demonexi%3A%2F%2Fpay ment&addInfo1=value1&addInfo2=value2&addInfo3=value3&addInfo4=value4&addInfo5=value5& autoClose=true
Response
The response has the following attributes:
- scheme:
specified in the URI field shown above
- authority:
specified in the URI field shown above
followed by the query parameters composed of the fields shown below:
Name parameter | Description | Type | Mandatory | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
callerTrxId | Identification string of the transaction within the third-party app | String | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
operationType | This field describe type of operation | String (PAYMENT) | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
result | This field contains the result of the transaction | int | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
amount | The amount of the transaction | int | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
actionCode | Code assigned by the bank describing the reason of the refusal and inform the terminal of specific situations (see bit 39 in ISO8583); is “000” for approved transaction | String | optional * | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
pan | PAN truncated with last 4 digit in clear. This field has a value only for approved transaction, null otherwise. | String | optional * | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
transactionType | Card technology used: “ICC” for EMV transaction; “MAG” for magstripe transaction;
“CLI” for contactless transaction;
| String | optional * | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
authorizationNumber | This field has a value only for approved transaction, null otherwise | String | optional * | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
timestamp | Data and time in the format “ddmmyyhhmm”. | String | optional * | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- Valued only in the event of an approved or denied transaction
** Valued in relation to the urlTicket field of the request
*** Available only for MobilePOS
The result field can contain the following values:
- 0: transaction approved
- 9: pos not connected
- 20: transaction canceled
- 21: transaction denied
- -1: invalid input parameters
- -2: device not secure
- -3: bluetooth off
- -4: services not available
- -5: deprecated app
- -6: login required
- -7: terminalId suspended
- -8: terminalId absent
- -9: terminalId not configured on POS
- -10: POS connection timeout
- -21: AutoClose and sendTicket cannot be requested together
Example response
demonexi: //payment ?operationType=PAYMENT&callerTrxId =82e9adacf9e64c8c83e57268f& result=0&amount=000000001000&f30 =000000001000&F42=1000000786998 %20%20&f12=174022&f11=000121&f55= 9F36020001910A0E8CF8AE1FB339083030&CT121 =VIA%20GONIN%20FRANCESC0%20B%2C%2020147 %2C%20MILAN0%20 (MI)&f13=0128&CT120=TEST %20SOFTP0S%2030&f38=053418&9F14=1100&f37 =502817003656&f39=000&CT118=978&CT117= Online&CT116=00034&CT115=Contactless& CT114=NEXI%20Core&CT112=************0119 &CT111=0&acquirerId=909517&CT119=Grazie %20e%20arrivederci&f41=30321160&f43 =TEST%20SOFTP0S%2030%20VIA%20GONIN %20FRANCESC0%20B%2C%2020147%2C%20MI LANO %20 (MI)&f42=1000000786998%20%20&CT110= 2025-01-28T17%3A40%3A14%2B01%3A00&f04= 000000001000&CT107=17%3A40&CT106=28%2F01 %2F2025&CT105=0100&CT104=TEST%20SOFTPOS %2030%20VIA%20GONIN%20FRANCESC0%20B %2C%2020147%2C%20MILAN0%20 (MI) &CT103= 502817003656&CT102=A0000000031010&CT101 =14&CT123=9F360200019F2608B88AA6D5AC1F 46FC9F37047269A11595050000000000&CT100 =0119&CT109=VISA%20CREDIT&CT108=Visa& terminalId=30321160&autoClose=true
Receipt
Receipt SoftPOS Android and MPOS
When available, the receipt fields will be returned to the caller app by deep linking.
Receipt Field Keys
Key | Description | Sample value | Value max length | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CT100 | Last 4 digits of PAN | 7733 | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT101 | Batch Number | 67 | 38 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT102 | AID | A0000000041010 | 50 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT103 | CT103 Original Transaction Reference Number 929616000304 | 929616000304 | 12 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT104 | Merchant Info | Pizzeria Mario Rossi | 200 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT105 | Transaction type (enumerator) | 0100 SALE 0200 VOID 0300 REFUND 0400 REVERSAL 0500 VOID CANCEL 0600 BATCH UPLOAD 0700 SETTLEMENT 0800 STATISTICS | 4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT106 | Transaction date (dd/MM/yyyy) mobile device | 20/08/2024 | 38 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT107 | Transaction time (HH:mm) mobile device | 11:00 | 38 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CT108 | Card type | Mastercard Visa Amex Troy … | 2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Receipt Host Keys
Key | Description | Sample value | Value max length |
---|---|---|---|
f04 | Amount | 000000000126 | 11 |
f11 | Stan | 000306 | 8 |
f12 | Transaction Time | 163535 | 12 |
f13 | Transaction Date (MMdd) | 0824 | 4 |
f30 | Original Amount | 000000000000 | 12 |
f37 | Transaction Id | 100005041017 | 12 |
f38 | Authorization Number | 304163 | 50 |
f39 | Authorization Response Code | 3 digits or 2 digits | 3 |
f41 | POS Terminal Number | 00192136 | 8 |
f42 | Merchant Id | 000000009041042 | 15 |
f43 | Merchant Name And Location | 99 |