Neteller Withdrawal (new Paysafe API)

The following method IDs are covered in this section:

IDNameCredit/Debit State
5NetellerWithdrawalExecutedByProvider (142)

Payment method interaction type: Synchronous Execution (see Interaction Types).

Redirect Integration

Supported.

Backend2BackendIntegration

The following table contains the fields to be sent in the initiatePaymentRequest.specificPaymentAccountData xml section:

key (value type, account type, required)value
AccountID
(string)
User’s account ID (eMail Address) for Neteller

Example initiatePaymentRequest:

<?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>fb367c95-ea22-493f-98f3-24c37zzcz431df</merchantTransactionID>
    <paymentMethodID>5</paymentMethodID>
    <amount currencyCode="EUR">10.22</amount>
    <userID>810e6986-9491-4193-9d71-f8c45b</userID>
    <userSessionID>2cb33303-43dc-46f1-8b17-a3e45e7d8ad6</userSessionID>
    <creationTypeID>1</creationTypeID>
    <specificPaymentData>
        <data xsi:type="keyIntValuePair">
            <key>PaymentProviderID</key>
            <value>19</value>
        </data>
    </specificPaymentData>
    <paymentAccount>
        <specificPaymentAccountData>
            <data xsi:type="keyStringValuePair">
                <key>AccountID</key>
                <value>[email protected]</value>
            </data>
        </specificPaymentAccountData>
    </paymentAccount>
</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>150001</shopID>
        <paymentMethod>
            <key>5</key>
            <value>NETeller Withdrawal</value>
        </paymentMethod>
        <merchantTransactionID>fb367c95-ea22-zz3f-98f3-24c37zzcz431df</merchantTransactionID>
        <paymentID>bde24dfd-1410-4746-a577-f3cac91634d2</paymentID>
        <userID>810e6986-9491-4193-9d71-f8c45b</userID>
        <paymentProvider>
            <key>19</key>
            <value>Paysafecard</value>
        </paymentProvider>
        <amount currencyCode="EUR">10.22</amount>
        <creationType>
            <key>1</key>
            <value>User</value>
        </creationType>
        <state>
            <id>6a259565-ed5e-43a6-b590-1310cc9d602a</id>
            <definition>
                <key>142</key>
                <value>ExecutedByProvider</value>
            </definition>
            <createdOn>2020-03-19T09:30:45.0782778Z</createdOn>
            <paymentStateDetails xsi:nil="true"></paymentStateDetails>
        </state>
        <isExecuted>true</isExecuted>
        <baseAmount currencyCode="EUR">10.22</baseAmount>
        <paymentDetails>
            <detail xsi:type="keyStringValuePair">
                <key>ProviderTransactionID</key>
                <value>7f92d61e-7bb7-47a8-9832-0efb5117646f</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>ProviderExternalID</key>
                <value>31352648</value>
            </detail>
        </paymentDetails>
        <paymentAccount>
            <paymentAccountID>28fcf044-47f0-4f3b-87d2-238c3c281150</paymentAccountID>
        </paymentAccount>
    </payment>
</initiatePaymentResponse>

The following payment states are returned in initiatePaymentResponse:

Payment StatesDescription
ExecutedByProvider (142)Success state; redirect user to SuccessfulPageUrl
RefusedByProvider (100)Error state, payment was not accepted by provider;
ExecuteRequestSentToProviderCommunicationErrorOccured (339)Error state; unexpected communication error occured during the payment execution process; redirect user to ErrorPageUrl
ProviderCommunicationErrorOccurred (233)Error state; Communication error during payment finalization

Provider error codes

Notifications

The standard notification mechanism is used for notifying the merchant in the background (asynchronously) about payment state changes. For more information see PaymentStateChangedNotification.

Sample notification:

<?xml version="1.0" encoding="utf-16"?>
<handlePaymentStateChangedNotificationRequest
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <payment
        xmlns:q1="http://www.cqrpayments.com/PaymentProcessing" xsi:type="paymentWithPaymentAccount">
        <merchantID>B2BTestMerchant</merchantID>
        <shopID>ProviderTesting</shopID>
        <paymentMethod>
            <key>5</key>
            <value>NETeller Withdrawal</value>
        </paymentMethod>
        <merchantTransactionID>123465498</merchantTransactionID>
        <paymentID>8de84694-c9ba-4584-be1a-aa668b3124f3</paymentID>
        <userID>a4b22410-e170-495c-b072-c0d94c</userID>
        <paymentProvider>
            <key>19</key>
            <value>PaysafecardProvider</value>
        </paymentProvider>
        <amount currencyCode="EUR">10.22</amount>
        <creationType>
            <key>1</key>
            <value>User</value>
        </creationType>
        <state>
            <definition>
                <key>142</key>
                <value>ExecutedByProvider</value>
            </definition>
            <createdOn>2020-05-03T11:24:43.617</createdOn>
            <paymentStateDetails xsi:nil="true" />
        </state>
        <baseAmount currencyCode="EUR">10.22</baseAmount>
        <paymentDetails>
            <detail xsi:type="keyIntValuePair">
                <key>ProviderTransactionID</key>
                <value>7f92d61e-7bb7-47a8-9832-0efb5117646f</value>
            </detail>
        </paymentDetails>
        <paymentAccount>
            <paymentAccountID>00289949-e579-465b-ac49-354ff5d37fd4</paymentAccountID>
        </paymentAccount>
    </payment>
</handlePaymentStateChangedNotificationRequest>