The Cryptomus connection in Perfect Panel comes down to a few fields. Getting those fields ready is the part that takes more attention: your account needs verification, your website needs merchant approval, and the API key must be the one for receiving payments.
I run ZOSMM Panel, and this guide follows the setup route used for a Perfect Panel website. It covers the existing Cryptomus payment integration, rather than building a separate checkout application from scratch.
Referral disclosure: the signup link below is my referral link. I may receive a commission if you register and use Cryptomus through it.
Start with the account, then create the merchant
Create a Cryptomus account and complete the identity verification requested in your account before proceeding with business payment setup. Follow the current checks shown in the dashboard; creating a login is not the same as being approved to accept payments.
Next, open Business → Merchants and choose Create merchant. Give the merchant a name you can recognize, then open its settings and enter your website URL and an accurate description of the business.
Cryptomus describes that process in its merchant setup instructions. Domain verification and project moderation are part of it. Submit the actual website and business details, then wait for the result rather than treating account registration as approval.
A merchant that is still under review is not ready just because the panel has somewhere to paste an API key.
Verify the domain on a Perfect Panel website
The domain verification step can be awkward when you use a hosted panel and do not have a conventional file manager. The route supplied for this setup uses Cryptomus's Using a meta tag on the site option.
Open your merchant settings in Cryptomus, find Confirm domain, and choose that method. Copy the verification tag exactly as supplied.
The Perfect Panel instructions for this route are:
- Open Admin area → Settings → Integrations.
- Open an integration that provides a Code snippet field.
- Paste the Cryptomus verification tag into that field and save or activate it as required by the panel.
- Return to Cryptomus and request domain verification.
There is a detail here worth checking before you move on: saving a snippet does not prove that it appears where the verifier expects it. The tag needs to be present on the public website in a location Cryptomus can recognize.
Use a suitable custom-code option if your panel exposes one. If you are following the support workaround that uses another integration's snippet field, confirm with Perfect Panel support that the selected integration accepts the tag in the required location. Do not replace existing working integration code just to make room for it.
Copy only the domain verification tag into public site code. Your Payment API Key belongs in the payment settings, never in this snippet.
Once the domain check succeeds, finish the merchant settings and submit any remaining moderation information. Domain ownership verification and merchant approval are separate checks.
Copy the Payment API Key and Merchant ID
After merchant approval, open the merchant settings and copy these two values:
- Payment API Key
- Merchant ID
Cryptomus separates payment keys from payout keys. For this connection, you want the key used to accept payments, not the one used to make withdrawals.
The current Getting API keys documentation shows the merchant creation, domain confirmation and moderation sequence. If an older instruction sends you to a documentation page that no longer opens, use that current page instead.
Keep both values associated with the same merchant. Copying an ID from one project and a key from another is an avoidable source of configuration problems.
Add the credentials in Perfect Panel
Open your panel's payment-method settings and add or edit the Cryptomus method. Enter the Merchant ID and Payment API Key in their matching fields.
Use the existing integration's setup instructions for any other fields it displays. This is configuration of a built-in connector; you do not need to publish your own API request script to complete these steps.
The credentials should stay in the admin payment configuration. If you share screenshots while asking for help, hide the API key first.
The remaining field that deserves a closer look is Subtract. Its name is less clear than its purpose.
Subtract controls who pays the processing commission
Subtract is the percentage of the payment commission passed to the customer. It is an integer from 0 to 100, with a documented default of 0.
It is not the commission rate itself.
With Subtract = 0, none of that processing commission is passed to the customer through this parameter. With Subtract = 100, the customer covers all of it. A value between those endpoints shares the commission.
Cryptomus gives a useful example in its invoice documentation: if your processing rate is 1% and the invoice is 100 USDT, setting Subtract = 100 makes the customer pay 101 USDT.
That is an example, not a statement that every merchant has a 1% rate. Check your actual rate and the amount shown on the generated invoice. Do not confuse the processing commission with a wallet's separate network transaction fee.
Also check whether you have configured an additional payment-method fee inside Perfect Panel. A separate panel surcharge and the Cryptomus commission allocation are different settings; make sure the checkout total reflects what you intended.
Check the full payment flow before relying on it
A saved payment method proves that the configuration was saved. It does not prove that a customer deposit will be credited correctly.
First check that the method appears on the customer-facing Add Funds page and that creating an invoice opens the expected Cryptomus payment page. Review the amount, selected currency and network, and any extra charge shown to the payer.
When you perform an authorized test payment, compare the invoice result with the deposit record and customer balance inside the panel. An invoice being created, a payment being detected, and a balance being credited are different events.
For a built-in integration, follow its documented notification setup. Do not invent a callback URL or paste an unrelated endpoint into merchant settings.
If the invoice is paid but the panel balance does not update, collect the invoice reference and the matching panel payment record for support. Avoid immediately adding a manual credit without checking whether an automatic update is still pending; otherwise the same deposit could be credited twice.
The final check is practical: the invoice shows the amount you intended, its payment result reaches the panel, and the customer receives the corresponding balance credit once.
Top comments (0)