Preselect a virtual currency for incoming payments

Overview

This guide explains how you can preselect a cryptocurrency the customer wants to pay with before they land on Coinify's Payment Window.

1. Create a Payment Intent

Use the Create a PaymentIntent endpoint and send a payload with at least the required parameters.

In the successful response, you will receive the Payment Intent ID, and the URL to the Payment Window to which you will redirect your customer after the next step.
You will need the Payment Intent ID in the next step.

🚧

By default the customer lands on the Select Cryptocurrency screen once redirected to Coinify's Payment Window.

2. Create a quote in the desired cryptocurrency

Use the Create Quote endpoint to create a quote in the specific cryptocurrency you want preselected on the Payment Window.
Notice that you need to provide the ID of the Payment Intent you have previously created in the API request Path.
Specify the cryptocurrency you want preselected with the currency parameter, optionally provide the refundAddress, and supply the refundTag if necessary.

In case the refund address provided belongs to the merchant, the merchant is responsible for refunding the customer back.

In the successful response, you will receive the full Payment Intent object payload, where, under the quotes array the new quote you just created will be listed.

3. Redirect your customer

Redirect your customer to the paymentWindowUrl that you have received in the initial API response of the Create Payment Intent request from the first step.

Your customer will land on the Payment Window with the quoted cryptocurrency preselected.

The supported virtual currencies are different for each PaymentIntent and they depend on its amount.

📘

Note

Use the GET HTTP verb to redirect your customer.

Expect a notification

Coinify sends a notification to the provided URL when the PaymentIntent has been completed.
For more information, read the Webhooks guide.

Validate the signature

Coinify includes a signature in the form of a header in the sent request.
For more information, read the Webhooks guide.

❗️

Important

Never accept a payload before validating that the signature is correct.

The amount has been credited

Once you receive a payment-intent.completed notification that contains the correct signature, you can serve your customer. The payment was successful and the amount has been credited to your account.