Skrill Rapid Transfer Deposit

Skrill Rapid Transfer is Bank Transfer powered by Skrill.

The following method IDs are covered in this section:

IDNameCredit/Debit State
344SkrillRapidTransferDepositDepositedByProvider (29)

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

After initiating the payment with Skrill, the customer is redirected to the Skrill page. After confirming the payment the user is returned to the merchant.

Redirect Integration

Not supported at this moment.

Backend2BackendIntegration

The following parameters can be provided in initiatePaymentRequest.specificPaymentData:

key (value type, account type, required)value
SuccessPageURL
(string, required)
The URL to redirect user in case of successful payment
ErrorPageURL (string, required)The URL to redirect user in case of unsuccessful payment

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>SkrillRapidTransferShop</shopID>
	<merchantTransactionID>059ceb16-cb4a-4bbc-bd2d-57b6fd8d4aaf</merchantTransactionID>
	<paymentMethodID>344</paymentMethodID>
	<amount currencyCode="EUR">28.49</amount>
	<userID>CQRB2BTestMerchantSystemUser</userID>
	<userData>
		<username>CQRB2BTestMerchantSystemUser</username>
		<firstname xsi:nil="true" />
		<lastname xsi:nil="true" />
		<currencyCode xsi:nil="true" />
		<languageCode xsi:nil="true" />
		<email xsi:nil="true" />
		<address>
			<street xsi:nil="true" />
			<houseName xsi:nil="true" />
			<houseNumber xsi:nil="true" />
			<houseNumberExtension xsi:nil="true" />
			<postalCode xsi:nil="true" />
			<city xsi:nil="true" />
			<state xsi:nil="true" />
			<countryCode2>AT</countryCode2>
			<telephoneNumber xsi:nil="true" />
		</address>
		<identificationNumberType xsi:nil="true" />
		<drivingLicenseNumber xsi:nil="true" />
		<drivingLicenseIssuingState xsi:nil="true" />
	</userData>
	<userIP>127.0.0.1</userIP>
	<userSessionID>aab80cfd-e4bc-4e5a-a61b-030194268444</userSessionID>
	<creationTypeID>1</creationTypeID>
	<specificPaymentData>
		<data xsi:type="keyStringValuePair">
			<key>SuccessPageUrl</key>
			<value>http://success/?a=b&amp;c=d</value>
		</data>
		<data xsi:type="keyStringValuePair">
			<key>ErrorPageUrl</key>
			<value>http://error/</value>
		</data>
	</specificPaymentData>
</initiatePaymentRequest>

Example initiatePaymentResponse:

<?xml version="1.0" encoding="utf-8"?>
<initiatePaymentResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.cqrpayments.com/PaymentProcessing">
	<payment xsi:type="paymentWithPaymentAccount">
		<merchantID>B2BTestMerchant</merchantID>
		<shopID>SkrillRapidTransferShop</shopID>
		<paymentMethod>
			<key>344</key>
			<value>SkrillRapidTransferDeposit</value>
		</paymentMethod>
		<merchantTransactionID>059ceb16-cb4a-4bbc-bd2d-57b6fd8d4aaf</merchantTransactionID>
		<paymentID>5a6ef5c3-0c1d-4ec7-86e7-d802a4d619b0</paymentID>
		<userID>CQRB2BTestMerchantSystemUser</userID>
		<paymentProvider>
			<key>11</key>
			<value>Moneybookers</value>
		</paymentProvider>
		<amount currencyCode="EUR">28.49</amount>
		<creationType>
			<key>1</key>
			<value>User</value>
		</creationType>
		<userIP>127.0.0.1</userIP>
		<state>
			<id>87e92ba7-a21d-4734-83eb-1f54245ebe54</id>
			<definition>
				<key>30</key>
				<value>RedirectURLCreated</value>
			</definition>
			<createdOn>2019-07-08T12:23:25.661566Z</createdOn>
			<description>https://api.test2.kalixa.com/WebMockProviders/Moneybookers.aspx?sid=qxnawfo3hgdasjxiotppxryx</description>
			<paymentStateDetails>
				<detail xsi:type="keyStringValuePair">
					<key>RedirectionUrl</key>
					<value>https://api.test2.kalixa.com/WebMockProviders/Moneybookers.aspx?sid=qxnawfo3hgdasjxiotppxryx</value>
				</detail>
				<detail xsi:type="keyStringValuePair">
					<key>PaymentStateReasonID</key>
					<value>1</value>
				</detail>
			</paymentStateDetails>
		</state>
		<isExecuted>false</isExecuted>
		<baseAmount currencyCode="EUR">28.49</baseAmount>
		<paymentDetails>
			<detail xsi:type="keyStringValuePair">
				<key>ProviderExternalID</key>
				<value>28758937</value>
			</detail>
		</paymentDetails>
		<paymentAccount>
			<paymentAccountID>0</paymentAccountID>
		</paymentAccount>
	</payment>
</initiatePaymentResponse>

Possible payment states in initiatePaymentResponse:

Payment StateDescription
RedirectURLCreated ()OK state; Redirect user to the URL

The merchant system should retrieve the redirect URL from payment.state.paymentStateDetails (key: RedirectionUrl).
InitiateRequestProviderCommunicationErrorOccuredTechnical communication error state. Final state.

After redirection of the customer to Skrill, a notification is being sent from Skrill to PXP Financial.

Payment StateDescription
ExpiredThe payment has expired due to session time out.
DepositedThe payment was reported as successful by the provider.
RefusedByProviderThe provider has refused the payment.
AbortedByCustomerThe payment was aborted by customer.

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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.cqrpayments.com/PaymentProcessing">
	<payment xsi:type="paymentWithPaymentAccount">
		<merchantID>B2BTestMerchant</merchantID>
		<shopID>SkrillRapidTransferShop</shopID>
		<paymentMethod>
			<key>344</key>
			<value>SkrillRapidTransferDeposit</value>
		</paymentMethod>
		<merchantTransactionID>059ceb16-cb4a-4bbc-bd2d-57b6fd8d4aaf</merchantTransactionID>
		<paymentID>5a6ef5c3-0c1d-4ec7-86e7-d802a4d619b0</paymentID>
		<userID>CQRB2BTestMerchantSystemUser</userID>
		<paymentProvider>
			<key>11</key>
			<value>Moneybookers</value>
		</paymentProvider>
		<amount currencyCode="EUR">28.4900</amount>
		<creationType>
			<key>1</key>
			<value>User</value>
		</creationType>
		<userIP>127.0.0.1</userIP>
		<state>
			<id>6a4b5c84-9e23-4f7c-8282-f24246c50234</id>
			<definition>
				<key>29</key>
				<value>DepositedByProvider</value>
			</definition>
			<createdOn>2019-07-08T12:23:38.693</createdOn>
			<paymentStateDetails xsi:nil="true" />
		</state>
		<isExecuted>true</isExecuted>
		<baseAmount currencyCode="EUR">28.4900</baseAmount>
		<paymentDetails>
			<detail xsi:type="keyStringValuePair">
				<key>ProviderExternalID</key>
				<value>28758937</value>
			</detail>
			<detail xsi:type="keyIntValuePair">
				<key>MerchantSettlementCurrencyID</key>
				<value>2</value>
			</detail>
			<detail xsi:type="keyStringValuePair">
				<key>ProviderTransactionID</key>
				<value>23041984</value>
			</detail>
		</paymentDetails>
		<paymentAccount>
			<paymentAccountID>0</paymentAccountID>
		</paymentAccount>
	</payment>
</handlePaymentStateChangedNotificationRequest>