Integrating Resmic Pro into your application allows you to accept crypto payments seamlessly. This section provides a step-by-step guide on how to set up payment processing.
Step 1: Generate an API Key
Before initiating payments, ensure you have generated an API key. Refer to the API Authentication & Security section for details on obtaining your API key.
Step 2: Creating a Payment Request
To create a payment request, send a POST request to the Resmic Pro API:
Request Example
curl --location 'https://api.resmic.com/api/v1/makepayment' \
--header 'Content-type: application/json' \
--header 'x-api-key: <Your_API_KEY>' \
--header 'x-user-id: <Your_User_Id>' \
--data-raw '{
"amount":100,
"blockchain":["Ethereum", "Polygon","BNB-Chain", "Sepolia"],
"token": ["USDT", "USDC", "DAI", "ETH", "PUSH"],
"title":"Test title for the session",
"description": "This is a detailed description for the payment",
"wallet_address": "0x056397760b973BfB921Bc10Be9DA5034B1e921d7",
"blockchain_confirmation": 1,
"redirect_url": "localhost:3000/success-page",
"cancel_url":"localhost:3000/payment-failed-page",
"webhook_url":"adityakaklij11@gmail.com"
} '
const makePaymentRedirect = async() => {
try {
const paymentDetails = {
amount: 100, // Amount in USD $
blockchain: ["Ethereum", "Polygon", "BNB-Chain","Sepolia"],
token: ["USDT", "USDC", "ETH", "DAI"],
title: "Test title for the session",
description: "This is a detailed description for the payment",
wallet_address: "0x056397760b973BfB921Bc10Be9DA5034B1e921d7",
blockchain_confirmation: 2,
redirect_url:"https://domain.com/success",
cancel_url:"https://domain.com/failed",
webhook_url: "https://webhook-post-endpoint", // Provide webhook endpoint or use email for status updates
}
// Initiate the payment session.
let response = await axios.post(`api.resmic.com/api/v1/makepayment`, paymentDetails, {
headers: {
'Content-Type': 'application/json',
'x-api-key': 'API_KEY', // Add the API_KEY here
'x-user-id': 'USER_ID' // Add the user_id here.
}
})
// Redirection to Payment Page.
if (response.data?.success){
let payment_url = response.data?.data?.payment_url
window.location.assign(payment_url)
}
else{
alert("Unable to generate payment session.")
}
} catch (error) {
console.log("Error: ", error);
}
}
Conclusion
By following these steps, you can successfully integrate Resmic Pro for accepting crypto payments. For further customisation, refer to the Webhooks & Notifications section.