Aircash Abon Voucher Deposit
Abon flows
PXP supports 2 different Abon flow:
- Abon flow with a redirect (THIS PAGE!).
User is being redirected to the Aircash frame to enter the 16 digit voucher code. In some countries the user will also be asked to enter his mobile phone number to authenticate the payment in the Aircash app.- Abon flow without a redirect - see here
User is not being redirected, rather user stays on the merchant´s cashier site to enter voucher code and mobile phone number.
Lower risk of abandoment by the customer, but merchant needs to provide messaging to customer.
The customer journey starts on the merchant´s website. The customer will be redirected to the Aircash frame and will have to enter a 16-digit code from a voucher and confirm the transaction . After the successful payment the customer will be redirected to the success URL and a notification will be sent to PXP.
The following method IDs are covered in this section:
ID | Name | Credit/Debit State |
---|---|---|
299 | Voucher Redirect Deposit | DepositedByProvider (29) |
Payment method interaction type: Redirection to External Payment Provider (see Interaction Types).
Flow
Redirect Integration
Currently not supported.
Backend2BackendIntegration
The following parameters can be provided in initiatePaymentRequest.specificPaymentData:
key (value type, account type, required) | value |
---|---|
SuccessPageUrl (string, >optional) | URL to redirect for successful payments |
CancelPageUrl (string, optional) | URL to redirect if payment is cancelled |
RefusedPageUrl (string, optional) | URL to redirect in case of a declined transaction |
HomepageURL (string, optional) | Home page URL from the merchant. |
Locale (string, optional) | Language Identifier (RFC 3066) in the form "en-US" |
Amount
An Abon voucher payment is initiated without an amount.
URLs
If the Aircash SDK is used with SDK Window Checkout, the mandatory parameters are the HomepageUrl. If the SDK Redirect Checkout is used, mandatory parameters are the RefusedPageUrl, SuccessPageUrl and CancelPageUrl. If the merchant is using it´s own method to open Aircash Frame window, then mandatory parameters are SuccessPageUrl, RefusedPageUrl and CancelPageUrl.
The following parameters can be provided in InitiatePaymentRequest.UserData:
key (value type, account type, required) | value |
---|---|
FirstName | user´s first name |
Lastname | user´s last name |
DateOfBirth | user´s date of birth |
Matching FirstName, LastName and DateOfBirth is currently not available for Aircash Abon Voucher, but maybe added in the future.
Example initiatePaymentRequest (without user data):
<initiatePaymentRequest xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:xsd=http://www.w3.org/2001/XMLSchema xmlns=http://www.cqrpayments.com/PaymentProcessing>
<merchantID>{{merchant}}</merchantID>
<shopID>{{shop}}</shopID>
<merchantTransactionID>{{merchantTransactionID}}</merchantTransactionID>
<paymentMethodID>299</paymentMethodID>
<amount currencyCode="EUR">5.00</amount>
<userID>{{newUserID}}</userID>
<userData>
<username>{{newUserName}}</username>
<!-- <firstname>höchünkä</firstname>
<lastname>käöü</lastname> -->
<currencyCode>EUR</currencyCode>
<languageCode>EN</languageCode>
<email>{{newUserEmail}}</email>
<address>
<street>Marxergasse</street>
<houseNumber>1b</houseNumber>
<postalCode>1030</postalCode>
<city>Vienna</city>
<countryCode2>AT</countryCode2>
<telephoneNumber>00437778889999</telephoneNumber>
</address>
<!-- <dateOfBirth>1980-10-10T00:00:00</dateOfBirth> -->
<gender>Male</gender>
</userData>
<userIP>127.0.0.1</userIP>
<userSessionID>bc0cd72c-8c03-40c0-8847-275d61dbd8ea</userSessionID>
<creationTypeID>1</creationTypeID>
<specificPaymentData>
<data xsi:type="keyStringValuePair">
<key>CultureInfo</key>
<value>de_AT</value>
</data>
<data xsi:type="keyStringValuePair">
<key>ProductCode</key>
<value>aircash</value>
</data>
<data xsi:type="keyIntValuePair">
<key>PaymentProviderID</key>
<value>209</value>
</data>
<data xsi:type="keyStringValuePair">
<key>HomePageUrl</key>
<value>http://merchant.com/HOME?status=success&ref=1</value>
</data>
</specificPaymentData>
</initiatePaymentRequest>
Example initiatePaymentResponse:
<initiatePaymentResponse xmlns="http://www.cqrpayments.com/PaymentProcessing"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment xsi:type="paymentWithPaymentAccount">
<merchantID>{{merchant}}</merchantID>
<shopID>{{shop}}</shopID>
<paymentMethod>
<key>TBD</key>
<value>Abon Voucher Deposit</value>
</paymentMethod>
<merchantTransactionID>OB-20230301-1107</merchantTransactionID>
<paymentID>f8834cc1-19ba-4aad-a136-9de682561422</paymentID>
<userID>OB-20230301-1107</userID>
<paymentProvider>
<key>TDB</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="EUR">100.00</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.22</userIP>
<state>
<id>6f68ad84-7606-4b93-a681-421feec28841</id>
<definition>
<key>30</key>
<value>RedirectURLCreated</value>
</definition>
<createdOn>2023-06-01T10:50:20.6820235Z</createdOn>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>RedirectionUrl</key>
<value>https://tbd</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>PaymentStateReasonID</key>
<value>1</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">0.83</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>62</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderTransactionID</key>
<value>939479475</value>
</detail>
</paymentDetails>
</payment>
</initiatePaymentResponse>
Example initiatePaymentResponse with error InitiateErrorReportedByProvider:
<initiatePaymentResponse xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment xsi:type="paymentWithPaymentAccount">
<merchantID>B2BTestMerchant</merchantID>
<shopID>AircashProviderShop</shopID>
<paymentMethod>
<key>299</key>
<value>VoucherRedirectDeposit</value>
</paymentMethod>
<merchantTransactionID>hc-20230705-180019</merchantTransactionID>
<paymentID>f22140a4-bbef-4015-b890-426d4b46a189</paymentID>
<userID>hc20230705180019</userID>
<paymentProvider>
<key>209</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="EUR">5.00</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>132c0936-e761-4376-886b-3884050d47b1</id>
<definition>
<key>4</key>
<value>InitiateErrorReportedByProvider</value>
</definition>
<createdOn>2023-07-05T16:00:20.0089377Z</createdOn>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderErrorResponseCode</key>
<value>1</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderErrorResponseMessage</key>
<value>Invalid signature or partner id.</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>PaymentStateReasonID</key>
<value>1</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">5</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>1385</value>
</detail>
</paymentDetails>
</payment>
</initiatePaymentResponse>
Example initiatePaymentResponse with error InitiateRefusedByProvider:
<initiatePaymentResponse xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment xsi:type="paymentWithPaymentAccount">
<merchantID>B2BTestMerchant</merchantID>
<shopID>AircashProviderShop</shopID>
<paymentMethod>
<key>299</key>
<value>VoucherRedirectDeposit</value>
</paymentMethod>
<merchantTransactionID>hc-20230705-175707</merchantTransactionID>
<paymentID>7ecb9e51-7b1d-4522-80f5-34cec67c499e</paymentID>
<userID>hc20230705175707</userID>
<paymentProvider>
<key>209</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="GBP">5.00</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>103b98a2-fcab-412c-9606-d5b8bfdffd6c</id>
<definition>
<key>550</key>
<value>InitiateRefusedByProvider</value>
</definition>
<createdOn>2023-07-05T15:57:17.9888373Z</createdOn>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderResponseCode</key>
<value>3000</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderResponseMessage</key>
<value>Invalid currency.</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>PaymentStateReasonID</key>
<value>1</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">5.78</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>1346</value>
</detail>
</paymentDetails>
</payment>
</initiatePaymentResponse>
Example initiatePaymentResponse with error InitiateRequestProviderCommunicationErrorOccurred:
<initiatePaymentResponse xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment xsi:type="paymentWithPaymentAccount">
<merchantID>B2BTestMerchant</merchantID>
<shopID>AircashProviderShop</shopID>
<paymentMethod>
<key>299</key>
<value>VoucherRedirectDeposit</value>
</paymentMethod>
<merchantTransactionID>hc-20230705-180142</merchantTransactionID>
<paymentID>962a5394-7476-4baa-bf1a-66234e35f139</paymentID>
<userID>hc20230705180142</userID>
<paymentProvider>
<key>209</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="EUR">5.00</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>5e4b0780-e136-4b24-8c77-948d38015319</id>
<definition>
<key>325</key>
<value>InitiateRequestProviderCommunicationErrorOccurred</value>
</definition>
<createdOn>2023-07-05T16:02:02.6989674Z</createdOn>
<description>Error occurred while processing payment communication for Payment[ID='47620329'].</description>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>PaymentStateReasonID</key>
<value>1</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">5</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>1387</value>
</detail>
</paymentDetails>
</payment>
</initiatePaymentResponse>
Notifications
The standard notification mechanism is used for notifying the merchant in the background (asynchronously) about payment state changes. For more information see PaymentStateChangedNotification.
Example handlePaymentStateChangedNotificationRequest (DepositedByProvider):
<?xml version="1.0" encoding="utf-16"?>
<handlePaymentStateChangedNotificationRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment
xmlns="http://www.cqrpayments.com/PaymentProcessing"
xsi:type="paymentWithPaymentAccount">
<merchantID>B2BTestMerchant</merchantID>
<shopID>AircashProviderShop</shopID>
<paymentMethod>
<key>299</key>
<value>VoucherRedirectDeposit</value>
</paymentMethod>
<merchantTransactionID>hc-20230623-093940</merchantTransactionID>
<paymentID>f0b95310-098d-4340-b780-111852826a04</paymentID>
<userID>hc20230623093940</userID>
<paymentProvider>
<key>209</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="EUR">5.0000</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>2749db3f-6e9e-4553-9208-8eddfd0a2d5d</id>
<definition>
<key>29</key>
<value>DepositedByProvider</value>
</definition>
<createdOn>2023-06-23T07:40:36.547</createdOn>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderStatusCode</key>
<value>2</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>true</isExecuted>
<baseAmount currencyCode="EUR">5.0000</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>439</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderTransactionID</key>
<value>35c924ea-c872-46e0-88d8-38f1bd160b4c</value>
</detail>
</paymentDetails>
</payment>
</handlePaymentStateChangedNotificationRequest>
Example handlePaymentStateChangedNotificationRequest (RefusedByProvider):
<?xml version="1.0" encoding="utf-16"?>
<handlePaymentStateChangedNotificationRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment
xmlns="http://www.cqrpayments.com/PaymentProcessing"
xsi:type="paymentWithPaymentAccount">
<merchantID>B2BTestMerchant</merchantID>
<shopID>AircashMockShop</shopID>
<paymentMethod>
<key>299</key>
<value>VoucherRedirectDeposit</value>
</paymentMethod>
<merchantTransactionID>4866dafd-0b0e-4213-8d0b-2020d5dce5da</merchantTransactionID>
<paymentID>4c143fde-90f9-48bc-80a7-2482ac9aa8f6</paymentID>
<userID>97f0afae-7b9b-48c3-aaa1-705733</userID>
<paymentProvider>
<key>209</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="EUR">10.0000</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>80999d33-a663-40f6-a999-7f6a03d22c7c</id>
<definition>
<key>100</key>
<value>RefusedByProvider</value>
</definition>
<createdOn>2023-06-20T15:53:57</createdOn>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderStatusCode</key>
<value>1</value>
</detail>
<detail xsi:type="keyIntValuePair">
<key>PaymentStateReasonID</key>
<value>1</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">10.0000</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>232</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderTransactionID</key>
<value>7be85342-8677-4c59-beaf-91873f0ae32e</value>
</detail>
</paymentDetails>
</payment>
</handlePaymentStateChangedNotificationRequest>
Example handlePaymentStateChangedNotificationRequest (AbortedByCustomer):
<?xml version="1.0" encoding="utf-16"?>
<handlePaymentStateChangedNotificationRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<payment
xmlns="http://www.cqrpayments.com/PaymentProcessing"
xsi:type="paymentWithPaymentAccount">
<merchantID>B2BTestMerchant</merchantID>
<shopID>AircashProviderShop</shopID>
<paymentMethod>
<key>299</key>
<value>VoucherRedirectDeposit</value>
</paymentMethod>
<merchantTransactionID>hc-20230622-183347</merchantTransactionID>
<paymentID>90af6f40-302b-4633-9a89-32235baa4f01</paymentID>
<userID>hc20230622183347</userID>
<paymentProvider>
<key>209</key>
<value>Aircash</value>
</paymentProvider>
<amount currencyCode="EUR">0.0000</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>127.0.0.1</userIP>
<state>
<id>c4ef00ec-397b-4ede-a318-a8effe1f75bc</id>
<definition>
<key>101</key>
<value>AbortedByCustomer</value>
</definition>
<createdOn>2023-06-22T16:35:16.88</createdOn>
<paymentStateDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderStatusCode</key>
<value>3</value>
</detail>
<detail xsi:type="keyIntValuePair">
<key>PaymentStateReasonID</key>
<value>1</value>
</detail>
</paymentStateDetails>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">0.0000</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>331</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderTransactionID</key>
<value>57db5400-3bfa-494d-9e1f-0873de217d54</value>
</detail>
</paymentDetails>
</payment>
</handlePaymentStateChangedNotificationRequest>
Updated 6 months ago