In-App PreAuthorization

Integrate Secure PreAuthorization Flows into Your App

Purpose

This method initiates the beginning of the pre-authorization process for a customer (purchase). However, the customer will remain within the pages of the external application. All needed data (incl. payment card details) will be collected and submitted to myPOS Checkout API by the external application. The method can be used both for a recurring transaction with an already stored card or for an initial card payment. The myPOS Checkout API will return an XML with the result.

NOTE:
In order to use this method you should comply with PCI SAQ-D requirements. Since all the cardholder data is processed on your side, you should also take care of the communication with the issuing bank's ACS. For that purpose, we recommend using an MPI plugin for 3D Secure communication.

myPOS Checkout API will check for:

  • Valid myPOS Account number (also referred to as Client number)
  • Valid Checkout Store ID corresponding with this myPOS Account number
  • Valid status of the Checkout (enabled)
  • Valid Currency and Amount
  • Valid KeyIndex & corresponding Signature
  • Valid OrderID

Method Properties

PropertyTypical valueTypeRequiredDescription
OrderID20120331999999StringYESPlaceholder for the merchant. Used to put some data that will help the merchant to recognize for which order is the payment. Up to 80 characters.
Amount23.45DoubleYESThe amount of the payment requested.
CurrencyEURA(3)YESISO 3-character currency code. The currency for the payment should be registered and approved.
SID000000000000010StringYESStore ID (SID) - Reference number for the Merchant Checkout in the myPOS system
WalletNumber61938166610StringYESmyPOS Client Number
KeyIndex1IntYESIndicates which key pair is being used.
PANByte[]BASE64ConditionalRequired when CardToken is not provided in the request.
CardholderNameJohn SmithString (30)ConditionalRequired when CardToken is not provided in the request.
ExpDateByte[]BASE64ConditionalRequired when CardToken is not provided in the request.
CVCByte[]BASE64ConditionalRequired when CardToken is not provided in the request.
ECI6N(1)ConditionalRequired when CardToken is not provided in the request.
AVVByte[]BASE64ConditionalRequired when CardToken is not provided in the request and the card is 3DS enabled.
XIDByte[]BASE64ConditionalRequired when CardToken is not provided in the request and the card is 3DS enabled.
CardTokenByte[]BASE64ConditionalRequired when the card is already stored and no additional data is sent for the card within the request.
AccountSettlement11111111119N(11)NOAccount for payment settlement
NoteStringNOText associated with the purchase.
ItemNameHP ProBook 6360b stickerStringYESThe item for which the authorization is being issued.

Response Properties

PropertyTypical valueTypeDescription
Amount23.45DoubleEcho from IPCIAPreAuthorization
CurrencyEURA(3)Echo from IPCIAPreAuthorization
OrderID201203319999999StringEcho from IPCIAPreAuthorization
IPC_Trnref12345678923StringUsed to uniquely identify a transaction in IPC. Used as a parameter for subsequent refund or reversal if needed.

Partner Identification

If you are part of our Partners Program, you will need to submit these two additional parameters with each of your requests to the API. This will provide you with analytics about the usage in your myPOS Partners Portal account and help our support teams assist you better.

This requires you to set the API version of your requests to 1.4.1. No other changes in the code/requests are necessary.

PropertyTypical valueTypeDescription
PartnerIDmps-p-XXXXXXXXStringIdentical number for the partner
ApplicationIDmps-app-XXXXXXXXStringIdentical number for the application

Example of the xml response

<IPC_response>
<IPCmethod>IPCIAPreAuthorization</IPCmethod>
<Amount>50</Amount>
<Currency>USD</Currency>
<Status>0</Status>
<StatusMsg>Success</StatusMsg>
<Signature>b4sEVS+HKsUac3iwzYjl8PKrrPC19kuz+cNjWfo/+LmyWM6JXK9BoTwNcXrsVo/jOQORdT2ui0ZqwnbyNVckYq1QZdnMQvsz2Xzph3PSO8gNCm/OiqKb0uYDkYXbF/HaIm9iw51hX7p92xg/9g0lApexbuO1bUEGzBIkrZRelH0=</Signature>
</IPC_response>