Table of Contents | ||
---|---|---|
|
...
This document lists all the PayXpress V4 features available in order to make a an Inter-application (‘app-to-app’) integration between mobile apps installed on the same mobile device.
...
The Merchant Mobile App initiates a transaction by sending a payment request to PayXpress Payment App.
PayXpress Payment App will display screen to Customer in order to present card / inser insert card.
Once the end customer completes the transaction and the POS operation concludes, the POS displays the transaction outcome (Payment accepted or refused).
Optional: PayXpress can offer the posibility to the customer to either retrieve his ticket via QR, or sent send it by Email.
In this case a screen is displayed requesting for this information.
If no ticket is required in a electronic format (QR, Email), then the process to finalize the transaction is realized by PayXpress.
Upon the finalization of the transaction, PayXpress Payment app will export in the Android Intent Reponse the transactions details including the client and merchant ticket.
...
Parameter | Description | Format | Type | Mandatory |
| Defines which ticket you want to print |
| Integer | Yes |
Retrieve
...
Intent’s result
For a transaction
When a transaction is triggered via Intent, it is possible to wait for the transaction result to know the outcome of it.
...
Parameter | Description | Format | Type | Mandatory |
| Outcome of the transaction |
| Integer | Yes |
| Transaction’s infos | See table below | Transaction | No |
| Client & merchant tickets | Json JSON description. See bellow | String | No |
...
Parameter | Description | Format | Type | Mandatory |
| Id of the transaction | / | String | Yes |
| Type of the transaction |
| Integer | Yes |
| Type of transaction / Payment method |
| Integer | Yes |
| Date’s timestamp |
| Long | Yes |
| Reference of the transaction transamitted transmitted as input | / | String | No |
| Amount of the transaction |
| Integer | Yes |
| Currency of the transaction | / | String | Yes |
| Selected AID during the transaction | / | String | No |
| Transaction without network / offline ? |
| Boolean | No |
| Outcome of the transaction |
| Yes | |
| Masked PAN of the card | / | String | No |
| Type of card used | / | String | No |
| Expiration date of the card |
| Integer | Yes |
| Amount of the tips (in case the functionality is activated) |
| Integer | No |
| Type of PAN |
| Integer | No |
| Authorization number if provided by the bank | / | String | No |
...
Client and Merchant Tickets are restitued restituted in a JSON Structure.
Each ticket is formatted in ASCII mode and encoded in Base64. This is recommended in order to handle non-alphanumeric data (in alphanumeric), handle carriage returns and small images. .
Currently, it is not possible by PayXpress to export only the client or merchant ticket in the JSON Structure. Both tickets are exported. It is up to the merchant/integrator to filter, based on PayXpress reponse what is the desired ticket that you want to use' response, for the ticket that is desired.
Please find bellow below an example/snipped snippet of Client and Merchant Tickets in JSON Structure:
...
Code Block |
---|
{ "status":1, "transaction":{ "id":"c5a4ba46-e52a-4550-af4e-154d5244ea4e", "transactionType":0, "mode":0, "date":1730907374000, "reference":"test", "amount":1500, "currency":"EUR", "aid":"A0000000041010", "isDegradedMode":false, "maskedPan":"526557XXXXXX2897", "cardLabel":"Debito", "expirationDate":"300531" }, "tickets":"{"tickets":[{"type":"CLIENT","ticket":"VEFSSkVUQSBCQU5DQVJJQQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIApBMDAwMDAwMDA0MTAxMApEZWJpdG8KIDA2LzExLzI0IC0gMTY6MzY6MTQKUEFZWFBFUlQgRlJBTkNFICA2OSAKTFlPTiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAKVkVOVEEgUkVDSEFaQURBCjAwMDE2OTYKMTY4MDgKNTQwMDMyODEwMDAwNDEKWFhYWFhYWFhYWFhYMjg5NwoxNjMgMDAxIDAwMDAxMiAgMDEgIEMgIEAKTlVNRVJPIEFVVE9SSVpBQ0nTTjogClJFRi4gOiAyTURTSU5FUUxPMTEwNiAgbjVnYTNVS2ZRTVM4bzdpN3hybW9ZdwpJTVBPUlRFCjE1LDAwoEVVUgpSRUNJQk8gUEFSQSBFTCBDTElFTlRFCkEgQ09OU0VSVkFSCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCg=="},{"type":"MERCHANT","ticket":"Q0FSVEUgQkFOQ0FJUkUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKQTAwMDAwMDAwNDEwMTAKRGViaXRvCk9OIDA2LzExLzI0IEFUIDE2OjM2OjE0ClBBWVhQRVJUIEZSQU5DRSAgNjkgCkxZT04gICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgCkRFQklUIERFQ0xJTkVECk1PVElGIFROQSA6IDIxIDEyCjAwMDE2OTYKMTY4MDgKNTQwMDMyODEwMDAwNDEKMjAxMApYWFhYWFhYWFhYWFgyODk3CmVuZCAzMS8wNS8zMAoxNjMgMDAxIDAwMDAxMiAgMDEgIEMgIEAKQVVUSE8gTlVNIDogClJFRi4gOiAyTURTSU5FUUxPMTEwNiAgbjVnYTNVS2ZRTVM4bzdpN3hybW9ZdwpBTU9VTlQKMTUsMDCgRVVSCk1FUkNIQU5UIFRJQ0tFVApUTyBCRSBLRVBUCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCg=="}]}" } |
For a ticket print
...
on the POS
When the instruction to print a ticket is triggered via Intent, it is possible to wait for the result to know the outcome of it.
...