Crypto Deposits

The payment method Crypto Deposit supports deposits with Cryptocurrencies.

The Crypto Deposit payment method allows a customer to pay for goods and services using Cryptocurrency (see list of supported currencies below). When a payment is initiated, the customer is redirected to the PXP checkout where they see the Fiat amount due. They can then select from a list of supported Cryptocurrencies and wallets, and the conversion rate and amount of crypto due will be displayed .

A QR code is displayed that the customer needs to scan to complete the transfer. Once they confirm the transfer of the Crypto coin it is transferred to the exchange where it is converted into Fiat (the currency the merchant has sent). Merchants are settled at a chosen interval (daily, weekly, monthly, etc).

The following method IDs are covered in this section:

IDNameCredit state
431Crypto DepositDepositedByProvider (29)

Payment method interaction type: Display of data in merchant´s checkout or redirection to PXP´s checkout.

Flow

2389

Redirect Integration

Payment method CryptoDeposit is available in Checkout.

A demo video is available upon request.

Example getRedirectData request for a Crypto Deposit with redirection to the Selection page (=directly to PXP Checkout selection page):

<getRedirectDataRequest xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <merchantID>PXPTestMerchant</merchantID>
  <redirectParameters xsi:type="paymentMethodSelectionWithDetailsRedirectParameters">
    <shopID>PXPTestMerchant</shopID>
    <httpMethod>POST</httpMethod>
    <returnUrl>http://www.merchantwebsite.com/Return?orderID=10203040</returnUrl>
    <languageCode>EN</languageCode>
    <currencyCode>EUR</currencyCode>
    <countryCode>AT</countryCode>
    <additionalDetails>
      <detail xsi:type="keyStringValuePair">
        <key>SkinID</key>
        <value>06c46a30-f882-4ba9-b9d2-628ea5aa617d</value>
      </detail>  
      <detail xsi:type="keyStringValuePair">
        <key>Description</key>
        <value>Order Description</value>
      </detail>
    </additionalDetails>
    <user>
      <id>KalixaTestUser_3</id>
    </user>
    <merchantTransactionID>20141211_2</merchantTransactionID>
    <grossAmount>33.00</grossAmount>
    <minPaymentLimitAmount>10</minPaymentLimitAmount>
    <maxPaymentLimitAmount>3000</maxPaymentLimitAmount>
    <expirationTimeSpanInSeconds>900</expirationTimeSpanInSeconds>
    <successUrl>http://www.merchantwebsite.com/success?orderID=10203040</successUrl>
    <pendingUrl>http://www.merchantwebsite.com/pending?orderID=10203040</pendingUrl>
    <errorUrl>http://www.merchantwebsite.com/error?orderID=10203040</errorUrl>
    <cancelUrl>http://www.merchantwebsite.com/cancel?orderID=10203040</cancelUrl>
    <refusedUrl>http://www.merchantwebsite.com/refused?orderID=10203040</refusedUrl>
    <paymentDirection>Deposit</paymentDirection>
  </redirectParameters>
</getRedirectDataRequest>

Example getRedirectData request for a Crypto Deposit with redirection to the Detail page (=directly to PXP Checkout detail page):

<getRedirectDataRequest
    xmlns="http://www.cqrpayments.com/PaymentProcessing"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <merchantID>KalixaAcceptDEMO</merchantID>
    <redirectParameters xsi:type="paymentMethodDetailsRedirectParameters">
        <shopID>KalixaAcceptDEMO</shopID>
        <httpMethod>GET</httpMethod>
        <returnUrl>http://return</returnUrl>
        <languageCode>en</languageCode>
        <currencyCode>EUR</currencyCode>
        <countryCode>at</countryCode>
        <additionalDetails>
            <detail xsi:type="keyStringValuePair">
                <key>Description</key>
                <value>some description</value>
            </detail>
        </additionalDetails>
        <user>
            <id>OB-20220614-01</id>
            <username>Test user</username>
            <firstname>Test user FN</firstname>
            <lastname>Test user LN</lastname>
            <currencyCode>EUR</currencyCode>
            <languageCode>en</languageCode>
            <email>[email protected]</email>
            <address>
                <countryCode2>AT</countryCode2>
             </address>
            <dateOfBirth>1999-05-02T00:00:00</dateOfBirth>
            <gender>Male</gender>
        </user>
        <merchantTransactionID>OB-202206141200</merchantTransactionID>
        <grossAmount>78.01</grossAmount>
        <successUrl>http://success</successUrl>
        <pendingUrl>http://pending</pendingUrl>
        <errorUrl>http://error</errorUrl>
        <cancelUrl>http://cancel</cancelUrl>
        <refusedUrl>http://refused</refusedUrl>
        <paymentMethodID>431</paymentMethodID>
        <isPaymentMethodChangeAllowed>false</isPaymentMethodChangeAllowed>
    </redirectParameters>
</getRedirectDataRequest>

Example getRedirectData response:

<getRedirectDataResponse xmlns=http://www.cqrpayments.com/PaymentProcessing xmlns:xsd=http://www.w3.org/2001/XMLSchema xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance>
    <redirectData>
        <redirectUrl>https://payments.test2.kalixa.com/Checkout/PaymentMethods/172?requestData=m30h4kblzqatlb15f4qxdulb_46d32478-bf3d-4d04-9a8f-b733baa080d8</redirectUrl>
    </redirectData>
</getRedirectDataResponse>

After redirection of the customer to the PXP Checkout, the following page will be displayed.

1306

The customer has to select his Cryptocurrency, Crypto wallet and if applicable provide a return address (for special case handling (see below chapters) and the crypto would have to be returned).

1352

If all validation on that page has passed, customer will be able to click the Continue button and will be prompted with the following pop-up information:

1332

After closing the pop-up window using the "x", the customer will see the following screen:

1320

The customer is informed that he needs to transfer the amount by either

  • scanning the QR code with his crypto wallet
  • copying the amount and address manually in his crypto wallet

If scanning the QR code does not work, the customer also has the option to click the "If this QR code..." link to be displayed with an alternative QR code that might work instead.

Special Cases

The customer has got 15 minutes to complete the transfer in his wallet. If the 15 minutes are exceeded, then this is a "late payment" use-case.
In case the customer transfers too little/too much, then this is an underpayment/overpayment use-case.
See this section for more information: Crypto Deposits Special Cases

Backend2BackendIntegration

On the Backend2BackendIntegration, the merchant has to call first getPaymentInputData to get the list of supported crypto currencies and supported crypto wallets. The data has to be provided for selection to the customer.

The end user needs to select a crypto currency and crypto wallet and then the merchant needs to send the initiatePaymentRequest.

1. getPaymentInputData request

Used get the list of supported crypto currencies and supported crypto wallets.

Example getPaymentInputDataList request:

<getPaymentInputDataListRequest xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.cqrpayments.com/PaymentProcessing">
	<merchantID>B2BTestMerchant</merchantID>
	<shopID>CryptoShopEURProviderTesting</shopID>
	<user>
		<id>3360d33c-b232-47c7-9e72-31addd</id>
		<username />
		<firstname xsi:nil="true" />
		<lastname xsi:nil="true" />
		<currencyCode xsi:nil="true" />
		<languageCode xsi:nil="true" />
		<email xsi:nil="true" />
		<address xsi:nil="true" />
		<identificationNumberType xsi:nil="true" />
		<drivingLicenseNumber xsi:nil="true" />
		<drivingLicenseIssuingState xsi:nil="true" />
	</user>
	<paymentMethodID>431</paymentMethodID>
	<amount currencyCode="EUR">8.01</amount>
	<details>
		<data xsi:type="keyStringValuePair">
			<key>CountryCode2</key>
			<value>AT</value>
		</data>
	</details>
</getPaymentInputDataListRequest>

Example getPaymentInputDataList response:

<getPaymentInputDataListResponse xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<paymentInputDataList>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>00000000-0000-0000-0000-000000000000</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Generic wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>95c2ac74-9d01-4d9b-bac6-0baa634ecd8b</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Blockchain Wallet - android</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/blockchain.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>198bd890-ee30-473d-a93c-1d45c7c48f09</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Blockchain Wallet - ios</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/blockchain.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>00b01bed-8990-4b15-b7e3-5c0c2f8cd99a</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Coinbase Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/coinbase.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>a9672517-bd3c-40b9-80e2-42eb16e1a9a4</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Exodus Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/exodus.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>27846ac7-9f56-4b28-a524-dc5d6fd29a01</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>MetaMask</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/metamask.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>69b114c3-2aba-4275-9d26-975c74a0810c</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Trezor</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/trezor.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>c687c043-6dbc-446f-bc8e-e3e32a3e278c</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Trust Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value>https://sandbox.forumpay.com/images/wallets/trust.svg</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>d53c24c8-3832-4d56-8c6d-aaa2ac975f0d</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Abra Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>51b5843b-a00b-47bf-a26c-9386017f4ce6</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Atomic Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>8fcca48f-8769-423e-8b62-b761fea9d32d</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Bitcoin.com Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>57263c60-286f-4632-aece-150deff3709b</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Bitso</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>bea8a0c3-e7d9-4711-9d97-a4f5813f975d</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>BRD Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>65cc12df-2cf5-4d20-ac4a-a82ec208d1a1</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>BTC.com Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>8f04d442-783f-4cff-95d7-dc77e596e68c</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Cobo Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>842e01c3-7c46-4964-bf7c-6816939ea9d6</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Coin Bitcoin Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>3155f3a8-2e4e-4b7e-954e-0c8cb3d35d7d</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Coinomi Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>2a8fd602-ae61-4592-89a2-e5e0723e8994</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Cryptonator</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>c57e5a63-7375-4d5e-a3ed-3220a0448af3</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Edge Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>b8ef2200-7f31-45c7-a6ac-15f9f0456f76</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Electrum Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>e74e3680-5a93-4091-95c1-2161972b8fb8</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Enjin Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>937d24dc-fdd2-47ca-9601-8689a736b076</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Freewallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>7f58ae39-e919-4746-a3ae-82d5d2dc95ce</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>imToken</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>f17d2aee-022b-4ac6-8c27-8a0eabc9bcc2</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Infinito Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>0c325614-89d0-45a4-b805-aed7ccc4f350</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Jaxx Liberty</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>e344baf1-fceb-4f58-b310-bfc5c818a92c</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Klever</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>981c47c0-9e6c-43a5-9a35-40de690f4ab5</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Lumi Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>9f904f3b-ad76-4ee3-b4cf-75a143c2f1e7</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Luno</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>31d884db-02c1-47eb-8565-7f3473c3c534</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Mycelium Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>c69019e8-2dd7-4653-bb89-977a6be254fa</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Paxful</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>54c16028-e287-4de2-afe8-4c2ed5504609</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>Samourai Wallet</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
		<paymentInputData>
			<data xsi:type="keyStringValuePair">
				<key>Id</key>
				<value>e109429e-a9f6-4616-8e71-89f7b3f3e5d9</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Name</key>
				<value>ShapeShift</value>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>ImageUrl</key>
				<value/>
			</data>
			<data xsi:type="keyStringValuePair">
				<key>Currencies</key>
				<value>BTC</value>
			</data>
		</paymentInputData>
	</paymentInputDataList>
</getPaymentInputDataListResponse>
<getPaymentInputDataListResponse xmlns="http://www.cqrpayments.com/PaymentProcessing" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <paymentInputDataList>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>00000000-0000-0000-0000-000000000000</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Generic wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>95c2ac74-9d01-4d9b-bac6-0baa634ecd8b</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Blockchain Wallet - android</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/blockchain.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>198bd890-ee30-473d-a93c-1d45c7c48f09</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Blockchain Wallet - ios</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/blockchain.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>00b01bed-8990-4b15-b7e3-5c0c2f8cd99a</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Coinbase Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/coinbase.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>a9672517-bd3c-40b9-80e2-42eb16e1a9a4</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Exodus Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/exodus.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>27846ac7-9f56-4b28-a524-dc5d6fd29a01</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>MetaMask</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/metamask.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>69b114c3-2aba-4275-9d26-975c74a0810c</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Trezor</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/trezor.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>c687c043-6dbc-446f-bc8e-e3e32a3e278c</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Trust Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value>https://sandbox.forumpay.com/images/wallets/trust.svg</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>d53c24c8-3832-4d56-8c6d-aaa2ac975f0d</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Abra Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>51b5843b-a00b-47bf-a26c-9386017f4ce6</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Atomic Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>8fcca48f-8769-423e-8b62-b761fea9d32d</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Bitcoin.com Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>57263c60-286f-4632-aece-150deff3709b</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Bitso</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>bea8a0c3-e7d9-4711-9d97-a4f5813f975d</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>BRD Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>65cc12df-2cf5-4d20-ac4a-a82ec208d1a1</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>BTC.com Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>8f04d442-783f-4cff-95d7-dc77e596e68c</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Cobo Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>842e01c3-7c46-4964-bf7c-6816939ea9d6</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Coin Bitcoin Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>3155f3a8-2e4e-4b7e-954e-0c8cb3d35d7d</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Coinomi Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>2a8fd602-ae61-4592-89a2-e5e0723e8994</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Cryptonator</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>c57e5a63-7375-4d5e-a3ed-3220a0448af3</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Edge Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>b8ef2200-7f31-45c7-a6ac-15f9f0456f76</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Electrum Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>e74e3680-5a93-4091-95c1-2161972b8fb8</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Enjin Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>937d24dc-fdd2-47ca-9601-8689a736b076</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Freewallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>7f58ae39-e919-4746-a3ae-82d5d2dc95ce</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>imToken</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>f17d2aee-022b-4ac6-8c27-8a0eabc9bcc2</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Infinito Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>0c325614-89d0-45a4-b805-aed7ccc4f350</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Jaxx Liberty</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>e344baf1-fceb-4f58-b310-bfc5c818a92c</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Klever</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>981c47c0-9e6c-43a5-9a35-40de690f4ab5</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Lumi Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>9f904f3b-ad76-4ee3-b4cf-75a143c2f1e7</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Luno</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>31d884db-02c1-47eb-8565-7f3473c3c534</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Mycelium Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>c69019e8-2dd7-4653-bb89-977a6be254fa</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Paxful</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>54c16028-e287-4de2-afe8-4c2ed5504609</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>Samourai Wallet</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
        <paymentInputData>
            <data xsi:type="keyStringValuePair">
                <key>Id</key>
                <value>e109429e-a9f6-4616-8e71-89f7b3f3e5d9</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Name</key>
                <value>ShapeShift</value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>ImageUrl</key>
                <value></value>
            </data>
            <data xsi:type="keyStringValuePair">
                <key>Currencies</key>
                <value>BTC,ETH,LTC,BCH,USDT</value>
            </data>
        </paymentInputData>
    </paymentInputDataList>
</getPaymentInputDataListResponse>
KeyStringValuePair
IDID of the crypto wallet
NameName of the crypto wallet
ImageURLImageURL
CurrenciesSupported crypto currency or multiple supported crypto currencies

The recieved crypto currencies and wallets need to be displayed to the customer for selection.

Furthermore the customer should be asked to provide his Reversal Address, in case this might be needed for returning the crypto later on due to technical reasons.

2. initiatePaymentRequest

Once the customer made his choice, the selected values need to be provided to PXP.

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

key (value type, account type, required)value
CryptoCurrency (string)The crypto currency to be used for the payment
CryptoApplicationId (string)The ID of the crypto wallet to be used for the payment
CryptoReversalAddress (string)An address to return funds if necessary

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>ForumPayProviderTesting</merchantID>
	<shopID>ForumPayProviderTesting_EUR</shopID>
	<merchantTransactionID>OB-20220624-1305</merchantTransactionID>
	<paymentMethodID>431</paymentMethodID>
	<amount currencyCode="EUR">121.01</amount>
	<userID>OB-20220624-1305</userID>
	<userData>
		<username>CryptoTestUser</username>
		<gender>Male</gender>
	</userData>
	<userIP>89.144.223.120</userIP>
	<userSessionID>39e48d00-b016-4dcd-8d3b-3f6f36dd3eec</userSessionID>
	<creationTypeID>1</creationTypeID>
	<specificPaymentData>
		<data xsi:type="keyStringValuePair">
			<key>CryptoCurrency</key>
			<value>BTC</value>
		</data>
		<data xsi:type="keyStringValuePair">
			<key>CryptoApplicationId</key>
			<value>a9672517-bd3c-40b9-80e2-42eb16e1a9a4</value>
		</data>
		<data xsi:type="keyStringValuePair">
			<key>CryptoReversalAddress</key>
			<value>34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo</value>
		</data>
	</specificPaymentData>
</initiatePaymentRequest>

Example initiatePayment response:

<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>ForumPayProviderTesting</merchantID>
        <shopID>ForumPayProviderTesting_EUR</shopID>
        <paymentMethod>
            <key>431</key>
            <value>Crypto Deposit</value>
        </paymentMethod>
        <merchantTransactionID>OB-20220624-1305</merchantTransactionID>
        <paymentID>c84b0f26-405d-4e9e-83af-da5b2d24bc11</paymentID>
        <userID>OB-20220624-1305</userID>
        <paymentProvider>
            <key>200</key>
            <value>ForumPay</value>
        </paymentProvider>
        <amount currencyCode="EUR">121.01</amount>
        <creationType>
            <key>1</key>
            <value>User</value>
        </creationType>
        <userIP>89.144.223.120</userIP>
        <state>
            <id>ed72e91f-6659-496b-bc26-b1dffc810c89</id>
            <definition>
                <key>3</key>
                <value>InitiatedByProvider</value>
            </definition>
            <createdOn>2022-06-24T11:06:22.4672504Z</createdOn>
            <paymentStateDetails>
                <detail xsi:type="keyStringValuePair">
                    <key>PaymentStateReasonID</key>
                    <value>1</value>
                </detail>
            </paymentStateDetails>
        </state>
        <isExecuted>false</isExecuted>
        <baseAmount currencyCode="EUR">121.01</baseAmount>
        <paymentDetails>
            <detail xsi:type="keyStringValuePair">
                <key>CryptoCurrency</key>
                <value>BTC</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>CryptoApplicationId</key>
                <value>a9672517-bd3c-40b9-80e2-42eb16e1a9a4</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>CryptoReversalAddress</key>
                <value>34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>CryptoAddress</key>
                <value>btc-1c4b59182ab14c7886a2ac25a3fea7f3</value>
            </detail>
            <detail xsi:type="keyDecimalValuePair">
                <key>CryptoAmount</key>
                <value>0.00609433</value>
            </detail>
            <detail xsi:type="keyIntValuePair">
                <key>CryptoConfirmationIntervalInSeconds</key>
                <value>5</value>
            </detail>
            <detail xsi:type="keyDecimalValuePair">
                <key>CryptoExchangeRate</key>
                <value>19856.1613</value>
            </detail>
            <detail xsi:type="keyDecimalValuePair">
                <key>CryptoProcessingFeeAmount</key>
                <value>0.00003315</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>CryptoQRImg</key>
                <value>https://api.forumpay.com/pay/qr/?d=https%3A%2F%2Fsandbox.forumpay.com%2FsandboxWallet.transfer%3Fcurrency%3DBTC%26address%3Dbtc-1c4b59182ab14c7886a2ac25a3fea7f3%26amount%3D0.00612748</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>CryptoQRImgAlt</key>
                <value>https://api.forumpay.com/pay/qr/?d=https%3A%2F%2Fsandbox.forumpay.com%2FsandboxWallet.transfer%3Fcurrency%3DBTC%26address%3Dbtc-1c4b59182ab14c7886a2ac25a3fea7f3</value>
            </detail>
            <detail xsi:type="keyDecimalValuePair">
                <key>CryptoTotalAmount</key>
                <value>0.00612748</value>
            </detail>
            <detail xsi:type="keyIntValuePair">
                <key>ExpirationIntervalInSeconds</key>
                <value>900</value>
            </detail>
            <detail xsi:type="keyDecimalValuePair">
                <key>FastTransactionFee</key>
                <value>0.00014672</value>
            </detail>
            <detail xsi:type="keyStringValuePair">
                <key>FastTransactionFeeCurrency</key>
                <value>BTC/kB</value>
            </detail>
        </paymentDetails>
        <paymentAccount>
            <paymentAccountID>0</paymentAccountID>
        </paymentAccount>
    </payment>
</initiatePaymentResponse>

The payment can have one of the following states in the initiatePaymentResponse:

Payment StateDescription
InitiatedByProviderThe payment has been initiated and payment data has been provided.
InitiateRefusedByProviderThe payment has been refused by provider during the initiation of the payment.
InitiateErrorReportedByProviderAn error has been returned by provider during the initiation of the payment.
InitiateRequestProviderCommunicationErrorOccurredA communication error occurred during the initiation of the payment with provider.

The following parameters are being provided in initiatePaymentResponse.PaymentDetails:

key (value type, account type, required)value
CryptoAddressAddress for the payment
Crypto CurrencySelected Crypto currency
CryptoApplicationIdCrypto Wallet ID
CryptoReversalAddressCrypto Reversal Address (for refund handling)
CryptoAmountAmount in Crypto currency
CryptoConfirmationIntervalInSecondsExpected time to confirm the payment
CryptoExchangeRateExchange rate
CryptoProcessingFeeAmountAmount needed to transfer cryptocurrency from merchant to exchange
CryptoQRImgURL for QR code image download
CryptoQRImgAltURL for alternative QR code image download
CryptoTotalAmountTotal amount of payment
ExpirationIntervalInSecondsExpiration intervall in Seconds
FastTransactionFeeMinimum TX fee/Gas price for fast transaction
FastTransactionFeeCurrencyCurrency for FastTransactionFee (e.g. BTC/byte, Gwei/Gas)

The following states occur after InitiatedByProvider.

First the success state.

DepositedByProviderSuccess state

In case the payment is aborted by user or if a late payment or underpayment occurs, the payment is moved to AbortedByProvider.

AbortedOnProviderThe payment has been aborted by the user, or when no manual approval is enabled, the payment has been refunded on a late payment or an underpayment,

Manual approval of late or under payment is currently not (yet) available.

The following states are definite error states:

InitiateRequestProviderCommunicationErrorOccurredA communication error occurred during the initiation of the payment with provider.
InitiateErrorReportedByProviderAn error has been returned by provider during the initiation of the payment.
InitiateRefusedByProviderThe payment has been refused by provider during the initiation of the payment.
AbortCommunicationErrorOccurredA communication error occurred during the refunding of the payment with provider.
AbortErrorReportedByProviderAn error has been returned by provider upon refunding the payment.
AbortRefusedByProviderThe refund has been refused by provider.

The following states appear for unsuccess payments, but can be required or reconciled later on:

QueryPaymentStateCommunicationErrorOccurredA communication error has occurred, while a payment was queried. A manual action to repeat the operation is available.
QueryPaymentStateErrorReportedByProviderAn error was returned by provider, while a payment was queried. A manual action to repeat the operation is available.

Special case handling

In the case of late payment and underpayment an automatic refund will be perform and the payment flow will be:

CasePayment flow
In the case of late payment an automatic refund will be performed.InitiatedByProvider > Expired > PendingOnConfirmation > AbortedOnProvider
In the case of underpayment an automatic refund will be performInitiatedByProvider > PendingOnConfirmation > AbortedOnProvider
In the case of overpayment the payment will be completed successfully, and on overpayment without auto-acceptance the overpayment amount will be refunded. A new payment of type PartialCancellation will be created.InitiatedByProvider > DepositedByProvider

Flow diagram

2389