MoneySafeDeposit via MoneySafe

MoneySafe is a secure wallet option accepted online at betting websites. It is a popular payment option in Greece.

The following method IDs are covered in this section:

ID

Name

Credit/Debit State

293

MoneySafeDeposit

DepositedByProvider(29)

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

After choosing the payment method on merchant's site the user is redirected to provider's page.

Users can fund their wallet account via a) MoneySafe vouchers b) with their own credit/debit cards (Visa & Mastercard) c) via SEPA bank transfer d) from other eMoneySafe wallets.

A notification is sent from provider to PXP Financial when the payment is successful. It is also sent, if the user cancels the payment/ fails to verify or the payment fails (no balance etc).

If the user closes the browser/does nothing (e.g leaves the browser open for a very big amount of time)/loses internet connection etc, no notification is sent.

User Journey

After being redirected to the provider, the user has to login to his eMoneySafe eWallet account.

When the user does not have an account yet, he can press the "register" button in order to register with Moneysafe. The user needs to fill out all necessary info and complete the registration by receiving an OTP on their mobile phone.

https://emoneysafe.cardnetgate.com/en/account/register

After login, the user can pay with either his eWallet account balance or by entering a voucher.

The user is asked to review the payment.

Next the user will receive a verification code on their mobile phone and the user is asked to enter it.

The payment is completed successful and the user may return back to the merchant.

If the user chooses to enter a voucher value, the user is asked to review the payment after having entered the voucher. Each voucher can only be used one time. After above screen the "successful payment" screen is displayed.

Redirect Integration

Currently not supported.

Backend2BackendIntegration

The following table contains the fields to be sent in the initiatePaymentRequest.xml and have special format:

key (value type, account type, required)

value

userID (string, required)

The merchant user ID. Must be numeric (no points or commas are allowed)

The following parameters have to be provided in the initiatePaymentRequest.specificPaymentData xml section:

key (value type, account type, required)

value

HomePageUrl (string, optional)

The URL of merchant`s website after success or cancellation.

Example initiatePaymentRequest:

<?xml version="1.0" encoding="utf-8"?>
<initiatePaymentRequest xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <merchantID>B2BTestMerchant</merchantID>
  <shopID>BoletoDepositViaAstropayShop</shopID>
  <merchantTransactionID>222v222c-2221-2g22-2222-1gf1f111fhey</merchantTransactionID>
  <paymentMethodID>293</paymentMethodID>
  <amount currencyCode="EUR">10.00</amount>
  <userID>99a3af90-5245-48ca-8c21-b23fdf</userID>
  <userSessionID>df07248d-b65f-450c-a018-64f12e9d62fc</userSessionID>
  <creationTypeID>1</creationTypeID>
    <specificPaymentData>
        <data xsi:type="keyStringValuePair">
            <key>HomePageUrl</key>
            <value>http://home</value>
        </data>
    </specificPaymentData>
</initiatePaymentRequest>

Example initiatePaymentRequest: (with detailed userData):

<?xml version="1.0" encoding="utf-8"?>
<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>B2BTestMerchant</merchantID>
                <shopID>150001</shopID>
                <merchantTransactionID>553ef6ac-44e0-4934-b943-09.01.2018-003</merchantTransactionID>
                <paymentMethodID>293</paymentMethodID>
                <amount currencyCode="EUR">13.33</amount>
                <userID>6895456</userID>
  <userData>
    <username>6895456</username>
    <firstname>Marcos Ignacio</firstname>
    <lastname>áéíóúüñ Guevara</lastname>
    <currencyCode xsi:nil="true" />
    <languageCode xsi:nil="true" />
    <email>[email protected]</email>
    <address>
      <street>1225 Bonavita St.</street>
      <postalCode>11300</postalCode>
      <city>Sao Paulo</city>
      <state>MO</state>
      <countryCode2>CL</countryCode2>
      <telephoneNumber xsi:nil="true" />
      <district>Villa Alpina</district>
      <postalCodeSuffix>010</postalCodeSuffix>
    </address>
    <dateOfBirth>1955-02-15T00:00:00</dateOfBirth>
    <identificationNumber>012.345.678-90</identificationNumber>
  </userData>
                <userIP>127.0.0.1</userIP>
                <userSessionID>d48677a9-7421-474a-b365-7b8e3f2f3288</userSessionID>
                <creationTypeID>1</creationTypeID>
                <specificPaymentData>
                                <data xsi:type="keyStringValuePair">
                                                <key>HomePageUrl</key>
                                                <value>http://homepage.gvc</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>B2BTestMerchant</merchantID>
        <shopID>BoletoDepositViaAstropayShop</shopID>
        <paymentMethod>
            <key>293</key>
            <value>MoneySafeDeposit</value>
        </paymentMethod>
        <merchantTransactionID>222v222c-2221-2g22-2222-2gf1f111fhey</merchantTransactionID>
        <paymentID>72c34641-fb66-4df3-9df9-07314a4158a7</paymentID>
        <userID>99a3af90-5245-48ca-8c21-b23fdf</userID>
        <paymentProvider>
            <key>161</key>
            <value>MoneySafe</value>
        </paymentProvider>
        <amount currencyCode="EUR">10.00</amount>
        <creationType>
            <key>1</key>
            <value>User</value>
        </creationType>
        <userIP>1.1.1.1</userIP>
        <state>
            <id>d6cc450b-f133-46ba-9462-201b61247c18</id>
            <definition>
                <key>287</key>
                <value>RedirectDataCreated</value>
            </definition>
            <createdOn>2017-11-14T11:20:27.0974263Z</createdOn>
            <description>https://emoneysafe.cardnetgate.com/payment-gateway&#xD;
merchant_id=''&#xD;
transactiont_id='1598478'&#xD;
amount='10.00'&#xD;
currency='EUR'&#xD;
return_url=''&#xD;
callback_url='https://api.test.kalixa.com/ProviderListeners/MoneySafe/notification'&#xD;
fingerprint='d53cfcf9b3e5540325fe490027d34a6d7f551bdf'&#xD;
</description>
            <paymentStateDetails>
                <detail xsi:type="keyStringValuePair">
                    <key>RedirectionUrl</key>
                    <value>https://emoneysafe.cardnetgate.com/payment-gateway</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDatamerchant_id</key>
                    <value></value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDatatransactiont_id</key>
                    <value>1598478</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDataamount</key>
                    <value>10.00</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDatacurrency</key>
                    <value>EUR</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDatareturn_url</key>
                    <value>http://home</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDatacallback_url</key>
                    <value>https://api.test.kalixa.com/ProviderListeners/MoneySafe/notification</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDatafingerprint</key>
                    <value>d53cfcf9b3e5540325fe490027d34a6d7f551bdf</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PostDataKeys</key>
                    <value>merchant_id,transactiont_id,amount,currency,return_url,callback_url,fingerprint</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>PaymentStateReasonID</key>
                    <value>1</value>
                </detail>
            </paymentStateDetails>
        </state>
        <isExecuted>false</isExecuted>
        <baseAmount currencyCode="EUR">10</baseAmount>
        <paymentDetails>
            <detail xsi:type="keyStringValuePair">
                <key>ProviderExternalID</key>
                <value>1598478</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.

The provider notifies PXP Financial on payments that are Successful (state DepositedByProvider). In case when the payment was not successful the provider refuse it (state RefusedByProvider).

DepositedByProvider

Success state

RefusedByProvider

Payment is refused by provider.

Example handlePaymentStateChangedNotificationRequest:

<?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:q1="http://www.cqrpayments.com/PaymentProcessing" xsi:type="paymentWithPaymentAccount">
        <merchantID>B2BTestMerchant</merchantID>
        <shopID>150001</shopID>
        <paymentMethod>
            <key>293</key>
            <value>MoneySafeDeposit</value>
        </paymentMethod>
        <merchantTransactionID>0592dbff-ad61-4297-866e-7389cc660a7f</merchantTransactionID>
        <paymentID>c9e42956-c352-417b-a9e6-0b3691c55910</paymentID>
        <userID>6895456</userID>
        <paymentProvider>
            <key>161</key>
            <value>MoneySafe</value>
        </paymentProvider>
        <amount currencyCode="EUR">13.3300</amount>
        <creationType>
            <key>1</key>
            <value>User</value>
        </creationType>
        <userIP>127.0.0.1</userIP>
        <state>
            <id>33ce7243-a7b1-4290-b677-274f416a8a74</id>
            <definition>
                <key>29</key>
                <value>DepositedByProvider</value>
            </definition>
            <createdOn>2019-01-09T10:21:44.427</createdOn>
            <paymentStateDetails>
                <detail xsi:type="keyStringValuePair">
                    <key>ProviderResponseCode</key>
                    <value>00</value>
                </detail>
                <detail xsi:type="keyStringValuePair">
                    <key>ProviderResponseMessage</key>
                    <value />
                </detail>
            </paymentStateDetails>
        </state>
        <isExecuted>true</isExecuted>
        <baseAmount currencyCode="EUR">13.3300</baseAmount>
        <paymentDetails>
            <detail xsi:type="keyStringValuePair">
                <key>ProviderExternalID</key>
                <value>26472961</value>
            </detail>
            <detail xsi:type="keyBooleanValuePair">
                <key>IsPaidWithVoucher</key>
                <value>true</value>
            </detail>
            <detail xsi:type="keyIntValuePair">
                <key>MerchantSettlementCurrencyID</key>
                <value>2</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>ProviderTransactionID</key>
                <value>2440f576-ace5-410f-b512-3ec94eeb51bf</value>
            </detail>
        </paymentDetails>
        <paymentAccount>
            <paymentAccountID>3e25fadd-15d6-4802-a737-4b55d7578257</paymentAccountID>
            <details>
                <detail xsi:type="keyStringValuePair">
                    <key>accountNumber</key>
                    <value>1331</value>
                </detail>
            </details>
        </paymentAccount>
    </payment>
</handlePaymentStateChangedNotificationRequest>