HiPay Deposit

The following method IDs are covered in this section:

IDNameCredit/Debit StateReversal State
180HipayDepositAuthorisedByProvider (13)

Payment method interaction type: Redirection to External Payment Provider (see Interaction Types).

User should be redirected to the external payment provider where payment should be confirmed. The provider will redirect the user back to MerchantNotificationUrl or one of SuccessPageURL/ CancelPageUrl/ ErrorPageUrl depending on input parameters sent. The confirmation of payment will come via an asynchronous notification.

Redirect Integration

Currently not supported.

Backend2BackendIntegration

The following parameters are mandatory for this payment method and must be provided in initiatePaymentRequest:

ParameterValue
userIPThe IP of the user in IPv4 format.
Note: IP addresses in IPv6 format are not supported by the provider and therefor the initiatePaymentRequests would be refused.

The following parameters can be provided in initiatePaymentRequest.specificPaymentData:

key (value type, account type, required)value
MerchantNotificationUrl
(string, required)
The URL to redirect user to merchant in case of Success/Cancel/Error
  • SuccessPageUrl** (string*, required if MerchantNotificationUrl is not provided)
The URL to redirect user in case of successful payment
  • CancelPageUrl** (string*, required if MerchantNotificationUrl is not provided)
The URL to redirect user in case of cancellation
  • ErrorPageUrl** (string*, required if MerchantNotificationUrl is not provided)
The URL to redirect user in case of error
  • cultureInfo** (string*, required)
Culture info should be in the format of ex: fr_BE
  • PaymentDescriptionLanguageCode** (string*, required)
The language of the user on the merchant side, used for localizing the UI displayed to the user
  • PaymentDescription** (string*, required)
The payment description
  • EmailAddress** (string*, required)
Email address of user used on HiPay
  • PaymentCategoryID** (string*)
PaymentCategoryID
  • PaymentRating** (string*)
PaymentRating
  • HeaderImageUrl** (string*)
Image displayed in the header of provider page. The image should be in .jpg format only.

Example initiatePaymentRequest:

<initiatePaymentRequest xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <merchantID>YourMerchantID</merchantID>
  <shopID>YourShopID</shopID>
  <merchantTransactionID>1234jhghjhf5657</merchantTransactionID>
  <paymentMethodID>180</paymentMethodID>
  <amount currencyCode="EUR">10</amount>
  <userID> CQRB2BTestMerchantSystemUser</userID>
  <userData />
  <userIP>10.8.161.106</userIP>
  <userSessionID> ghdhtyglsikedrf </userSessionID>
  <creationTypeID>1</creationTypeID>
  <specificPaymentData>
    <data xsi:type="keyStringValuePair">
      <key>SuccessPageUrl</key>
      <value>http://successpage.url</value>
    </data>
    <data xsi:type="keyStringValuePair">
      <key>CancelPageUrl</key>
      <value>http://cancelpage.url</value>
    </data>
    <data xsi:type="keyStringValuePair">
      <key>PaymentDescriptionLanguageCode</key>
      <value>EN</value>	
    </data>		
    <data xsi:type="keyStringValuePair">
      <key>cultureInfo</key>
      <value>en_US</value>
    </data>
    <data xsi:type="keyStringValuePair">
      <key>EmailAddress</key>
      <value>[email protected]</value>
    </data>
    <data xsi:type="keyStringValuePair">
      <key>PaymentDescription</key>
      <value>HiPay payment</value>
    </data>                
  </specificPaymentData>
</initiatePaymentRequest>

Example initiatePaymentResponse:

<initiatePaymentResponse xmlns="http://www.cqrpayments.com/PaymentProcessing">
  <payment xsi:type="paymentWithPaymentAccount" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <merchantID>YourMerchantID</merchantID>
    <shopID>YourShopID</shopID>
    <paymentMethod>
      <key>180</key>
      <value>HipayDeposit</value>
    </paymentMethod>
    <merchantTransactionID>1255jhgujhf5617</merchantTransactionID>
    <paymentID>9d653db5-6046-4793-98bb-d3e1a1e5354b</paymentID>
    <userID>CQRB2BTestMerchantSystemUser</userID>
    <paymentProvider>
      <key>132</key>
      <value>Hipay</value>
    </paymentProvider>
    <amount currencyCode="EUR">20</amount>
    <creationType>
      <key>1</key>
      <value>User</value>
    </creationType>
    <userIP>10.8.161.106</userIP>
    <state>
      <id>73ab0cff-8057-4c38-8096-b75eb5321307</id>
      <definition>
        <key>30</key>
        <value>RedirectURLCreated</value>
      </definition>
      <createdOn>2014-06-24T10:51:38.7564513Z</createdOn>
      <paymentStateDetails>
        <detail xsi:type="keyStringValuePair">
          <key>RedirectionUrl</key>                     <value>http://dev.backend.cqrpayments.com/WebMockProviders/Hipay/HipayAuthorization.aspx?transactionId=232</value>
        </detail>
      </paymentStateDetails>
    </state>
    <isExecuted>false</isExecuted>
    <baseAmount currencyCode="EUR">20</baseAmount>
    <paymentDetails>
      <detail xsi:type="keyStringValuePair">
        <key>Description</key>
        <value>HiParty payment</value>
      </detail>
      <detail xsi:type="keyStringValuePair">
        <key>ProviderAccountUserEmail</key>
        <value>[email protected]</value>
      </detail>
      <detail xsi:type="keyStringValuePair">
        <key>ProviderExternalID</key>
        <value>303</value>
      </detail>
    </paymentDetails>
    <paymentAccount>
      <paymentAccountID>0</paymentAccountID>
    </paymentAccount>
  </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:

<?xml version="1.0" encoding="UTF-8"?><handlePaymentStateChangedNotificationRequest xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<payment xsi:type="paymentWithPaymentAccount">
<merchantID>BPTY</merchantID>
<shopID>HipayShop</shopID>
<paymentMethod>
<key>180</key>
<value>HipayDeposit</value>
</paymentMethod>
<merchantTransactionID>14042971348582453</merchantTransactionID>
<paymentID>df54acc1-dfe0-4f24-b761-ee1b2a0b6691</paymentID>
<userID>43562846</userID>
<paymentProvider>
<key>132</key>
<value>Hipay</value>
</paymentProvider>
<amount currencyCode="EUR">11.4000</amount>
<creationType>
<key>1</key>
<value>User</value>
</creationType>
<userIP>10.8.162.248</userIP>
<state>
<id>a6fc56f7-3d0f-45b8-8de8-bce1512d5558</id>
<definition>
<key>100</key>
<value>AuthorisedByProvider</value>
</definition>
<createdOn>2014-07-02T10:32:22.82</createdOn>
<paymentStateDetails xsi:nil="true"/>
</state>
<isExecuted>false</isExecuted>
<baseAmount currencyCode="EUR">11.4000</baseAmount>
<paymentDetails>
<detail xsi:type="keyStringValuePair">
<key>ProviderExternalID</key>
<value>236</value>
</detail>
<detail xsi:type="keyStringValuePair">
<key>ProviderAccountUserEmail</key>
<value>[email protected]</value>
</detail>
</paymentDetails>
<paymentAccount>
<paymentAccountID>0</paymentAccountID>
</paymentAccount>
</payment>
</handlePaymentStateChangedNotificationRequest>

Possible payment states in initiatePaymentResponse:

Payment StatesDescription
  • *RefusedByPaymentScoring**(121)
Error state; Refused by the PXP Financial Risk System
  • *DuplicatePaymentValidationFailed**(369)
Error state; Another payment with the same id found
  • *RedirectURLCreated**(30)
OK state; Redirect user to the URL
  • *InitiateRequestProviderCommunicationErrorOccurred**(325)
Error state; Communication error with provider occurred during payment initiation

Possible payment states in notification (confirmation of payment is received asyncronous and are configurable):

Payment StatesDescription
  • *AuthorisedByProvider**(13)
Success state; Payment have been successfully executed (Executed state)
  • *CapturedByProvider**(27)
Success state: Confirmation state that can be received only after AuthorisedByProvider state
  • *CaptureRefused**(36)
Refused state: Payment confirmation failed.Can happen after AuthorisedByProvider
  • *RefusedByProvider**(100)
Refused state: Payment was not accepted.

Provider Specific Error Codes:

ErrorCodeError Message
0N/A (Success)
1Authentication Failed
2Missing parameter. Listed
3Invalid parameter.Listed
7Object not found
13Something went wrong , please contact [email protected]
409Param is not valid.Listed

Did this page help you?