1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[780],{14384:function(e,t,n){n.d(t,{$X:function(){return h},GS:function(){return s},Gk:function(){return function e(t,n){var o=!0,a=!1,i=void 0;try{for(var r,s=t[Symbol.iterator]();!(o=(r=s.next()).done);o=!0){var c=r.value;if(c.link===n)return c.subs||[];if(c.subs){var d=e(c.subs,n);if(d.length>0)return d}}}catch(l){a=!0,i=l}finally{try{o||null==s.return||s.return()}finally{if(a)throw i}}return[]}},I0:function(){return function e(t,n){var o=!0,a=!1,i=void 0;try{for(var r,s=n[Symbol.iterator]();!(o=(r=s.next()).done);o=!0){var c=r.value;if(c.link===t||c.subs&&e(t,c.subs))return c}}catch(d){a=!0,i=d}finally{try{o||null==s.return||s.return()}finally{if(a)throw i}}return null}},Kk:function(){return d},PO:function(){return function e(t,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=!0,i=!1,r=void 0;try{for(var s,c=t[Symbol.iterator]();!(a=(s=c.next()).done);a=!0){var d=s.value;if(d.link===n)return o;if(d.subs){var l=e(d.subs,n,o+1);if(l)return l}}}catch(u){i=!0,r=u}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}return null}},TR:function(){return c},W9:function(){return p},YY:function(){return w},aS:function(){return m},mu:function(){return v},pA:function(){return g},pQ:function(){return y},qK:function(){return l},rq:function(){return r},wO:function(){return f}});var o=n(50930),a=n(52322),i=n(10770);function r(e,t){var n=[];function o(e){if(n.push(e.link.replace("#","")),e.subs&&e.subs.length>0){var t=!0,a=!1,i=void 0;try{for(var r,s=e.subs[Symbol.iterator]();!(t=(r=s.next()).done);t=!0){var c=r.value;o(c)}}catch(d){a=!0,i=d}finally{try{t||null==s.return||s.return()}finally{if(a)throw i}}}}return!function e(n){var a=!0,i=!1,r=void 0;try{for(var s,c=n[Symbol.iterator]();!(a=(s=c.next()).done);a=!0){var d=s.value;if(d.link===t){o(d);return}d.subs&&d.subs.length>0&&e(d.subs)}}catch(l){i=!0,r=l}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}}(e),n}function s(e,t){function n(e,a){var i=(0,o.Z)(a).concat([{title:e.title,link:e.link,openId:e.openId,end:e.end||void 0}]);if(e.link===t)return i;if(e.subs){var r=!0,s=!1,c=void 0;try{for(var d,l=e.subs[Symbol.iterator]();!(r=(d=l.next()).done);r=!0){var u=d.value,h=n(u,i);if(h)return h}}catch(p){s=!0,c=p}finally{try{r||null==l.return||l.return()}finally{if(s)throw c}}}return null}var a=!0,i=!1,r=void 0;try{for(var s,c=e[Symbol.iterator]();!(a=(s=c.next()).done);a=!0){var d=s.value,l=n(d,[]);if(l)return l}}catch(u){i=!0,r=u}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}return[]}function c(e,t){return function e(n){var o=!0,a=!1,i=void 0;try{for(var r,s=n[Symbol.iterator]();!(o=(r=s.next()).done);o=!0){var c=r.value;if(c.link===t)return c;if(c.subs){var d=e(c.subs);if(d)return d}}}catch(l){a=!0,i=l}finally{try{o||null==s.return||s.return()}finally{if(a)throw i}}return null}(e)}function d(e,t){return function e(n){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=!0,i=!1,r=void 0;try{for(var s,c=n[Symbol.iterator]();!(a=(s=c.next()).done);a=!0){var d=s.value;if(d.link===t)return o;if(d.subs){var l=e(d.subs,d);if(l)return l}}}catch(u){i=!0,r=u}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}return null}(e)}var l=[{title:"API",link:"#api",openId:["#api"],logo:(0,a.jsx)(i._P,{}),relatedList:[{title:"How do I configure merchant security controls?",link:"#configure-merchant-security-controls",openId:["#account-security","#security","#configure-merchant-security-controls"],end:!0},{title:"How do I secure my CCPayment account?",link:"#up-account-security",openId:["#account-security","#security","#up-account-security"],end:!0},{title:"What Should I Do if I Am Unable to Perform Google Authentication?",link:"#why-perform-google-authentication",openId:["#account-security","#security","#why-perform-google-authentication"],end:!0},{title:"What Should I Do if I'm Not Receiving the Verification Code?",link:"#why-receiving-verification-code",openId:["#account-security","#security","#why-receiving-verification-code"],end:!0},{title:"Idempotency Implementation for Transactions",link:"#idempotency-implementation-transactions",openId:["#others","#other","#idempotency-implementation-transactions"],end:!0}],subs:[{title:"API Key",link:"#api-key",openId:["#api","#api-key"],subs:[{title:"How to Generate an RSA Key Pair to Send API Requests on CCPayment?",link:"#RSA",openId:["#api","#api-key","#RSA"],time:"10 Mar. 2024 00:00",url:"/support-center/faqs-detail#RSA",content:"\n CCPayment now supports RSA asymmetric encryption keys to enhance customer data security. Below are some frequently asked questions and answers about RSA encryption and key pair generation to help you quickly understand and address related issues.\n What are RSA API keys?\n RSA API Keys are asymmetric cryptography that ensures data security through public keys, which can be shared o
1penly for encrypting data, and private keys, which remain confidential for decrypting data.\n Why do we recommend using RSA API keys?\n Using RSA API keys ensure the security of data transmission. The public key encrypts data, while the private key is controlled solely by the holder, preventing the risk of key leakage. RSA also supports digital signatures, which verify the data's source and integrity.\n How to generate RSA private keys and public keys?\n Generate private keys:\n Open terminal and execute the following commands to generate private keys:\n openssl genrsa -out rsa_private_key.pem 2048\n Use the following commands to verify the generated private keys:\n cat rsa_private_key.pem\n Generate public keys from private keys:\n Use the following commands to generate public keys:\n openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem\n Use the following to verify the generated public keys:\n cat rsa_public_key.pem\n How can I view a specific private key if I generate multiple private key files?\n To view a specific private key file, you can use the cat command and provide the full path to the file. For example:\n cat /path/to/directory/rsa_private_key.pem\n How to ensure the security of private keys?\n To maintain the security of your private key, ensure that its file permissions are set correctly to prevent unauthorized access. The private key should be stored in a secure location and must not be exposed or shared with others. Only the holder of the private key can decrypt the data, which is essential for keeping it secure.\n Will the newly generated private key overwrite the previous private key?\n Yes, if you generate private keys multiple times in the same file path, each subsequent key will overwrite the previous one. To preserve each generated private key, it is recommended to use different filenames or paths. For example:\n openssl genrsa -out /path/to/directory/rsa_private_key_1.pem 2048\n openssl genrsa -out /path/to/directory/rsa_private_key_2.pem 2048\n ",end:!0},]}]},{title:"Account & Security",link:"#account-security",openId:["#account-security"],logo:(0,a.jsx)(i.Wg,{}),relatedList:[{title:"What is Ownership Verification?",link:"#ownership-verification",openId:["#account-security","#web-verification","#ownership-verification",],end:!0},{title:"Don't Have a Website Yet?",link:"#website-have",openId:["#others","#test-net","#website-have"],end:!0},{title:"Verify Your Site Ownership With HTML Tag",link:"#verify-ownership-html-tag",openId:["#account-security","#web-verification","#verify-ownership-html-tag",],end:!0},{title:"Verify Your Site Ownership With HTML File",link:"#verify-ownership-html-file",openId:["#account-security","#web-verification","#verify-ownership-html-file",],end:!0},{title:"How to Manage Multiple Merchant Accounts?",link:"#manage-multiple-merchant",openId:["#account-security","#account-management","#manage-multiple-merchant"],end:!0},{title:"Don't Have a Website Yet?",link:"#website-have",openId:["#others","#test-net","#website-have"],end:!0},],subs:[{title:"Account Management",link:"#account-management",openId:["#account-security","#account-management"],subs:[{title:"How to Manage Multiple Merchant Accounts?",link:"#manage-multiple-merchant",openId:["#account-security","#account-management","#manage-multiple-merchant"],time:"02 Mar. 2024 00:00",url:"/support-center/faqs-detail#manage-multiple-merchant",content:"\n With CCPayment, you can easily manage multiple merchant accounts under one email address. \n This allows you to keep different brands or businesses in one place while managing their payments, invoices, and account settings separately.\n Each merchant account is independent and equal. The activity or settings of one account do not affect another.\n Step 1: Click Add New Merchant\n Step 2: Enter your merchant name (is usually your brand name) and click Create Now.\n Your merchant account has been successfully added. You now can switch accounts here.\n TIPs: After creating a new merchant account, please remember to generate a new App Secret and set up your merchant configurations from scratch (including Branding, Settings, Security, and Members).\n ",end:!0}]},{title:"Security",link:"#security",openId:["#account-security","#security"],subs:[{title:"How do I configure merchant security controls?",link:"#configure-merchant-security-controls",openId:["#account-security","#security","#configure-merchant-security-controls"],time:"02 Mar. 2026 00:00",url:"/support-center/faqs-detail#configure-merchant-security-controls",content:"\n Go to Merchant Settings >
1 Security to manage security controls for your team. These settings help protect withdrawals and sensitive merchant operations.\n 1. Set up withdrawal verification\n Under Withdrawal Verification Settings, choose how team members complete second-step verification for withdrawals.\n Default Verification\n Each member follows their own account security settings.\n Custom Verification\n Apply one verification policy to all merchant members. You can require Email Verification, Google 2FA, Phone Number Verification, or a combination of these methods.\n For stronger protection, we recommend selecting at least two second-step verification methods.\n 2. Allow small withdrawals without 2FA\n Enable No 2FA Verification for Small Amount Withdrawals to allow withdrawals under $100 to require only a Payment Password.\n Withdrawals over $100 still require both a Payment Password and 2FA.\n 3. Restrict withdrawal IP addresses\n Enable Withdrawal IP Whitelist to allow withdrawals only from approved IP addresses.\n 4. Restrict sensitive operations by IP Whitelist\n Enable IP Whitelist for Crucial Operations to restrict sensitive security and configuration changes to approved IP addresses.\n Before enabling an IP whitelist for Crucial Operations, make sure you and your team can access CCPayment from an approved IP address.\n Need to secure a member account with a password, passkey, or 2FA? Go to Account Settings.\n "},{title:"How do I secure my CCPayment account?",link:"#up-account-security",openId:["#account-security","#security","#up-account-security"],time:"02 Mar. 2024 00:00",url:"/support-center/faqs-detail#up-account-security",content:"\n Keeping your account secure is of utmost importance.You can manage your account security from Account Settings.\n How do I set up my account security?\n 1. Click your avatar in the upper-right corner.\n 2. Select Account Settings.\n 3. Choose a security option and follow the on-screen instructions.\n Which security settings should I enable?\n For better protection, we recommend setting up a Payment Password and enabling a Passkey or Two-Factor Authentication (2FA).\n Payment Password: Set a separate password for confirming payment-related actions.\n Passkey: Use your fingerprint, Face ID, or device PIN for faster and more secure sign-in.\n Two-Factor Authentication (2FA): Add an extra verification step using an authenticator app such as Google Authenticator.\n You can also manage your email address, phone number, and login password from Account Settings.\n Need additional security for your merchant account?\n For team withdrawal verification and IP restrictions, go to Merchant Settings > Security. These settings are separate from your personal account security settings.\n ",end:!0},{title:"What Should I Do if I Am Unable to Perform Google Authentication?",link:"#why-perform-google-authentication",openId:["#account-security","#security","#why-perform-google-authentication"],time:"02 Mar. 2024 00:00",url:"/support-center/faqs-detail#why-perform-google-authentication",content:"\n When binding the Google Authenticator, CCPayment will provide you with a private key. It is crucial to securely store this private key and ensure that it is not disclosed to others. The private key is an essential credential for recovering the Google Authenticator.\n If you lose the Google Authenticator and do not have a backup of the private key, please contact CCPayment customer service immediately for assistance. They will help you reset the Google Authenticator. During this process, you may be required to provide personal identification, merchant identification, and other relevant information.\n To prevent such incidents in the future, after successfully restoring account access, be sure to back up the private key of the Google Authenticator and store it in a secure place. Additionally, you may consider enabling other multi-factor authentication methods to enhance the security of your account.\n ",end:!0},{title:"What Should I Do if I'm Not Receiving the Verification Code?",link:"#why-receiving-verification-code",openId:["#account-security","#security","#why-receiving-verification-code"],time:"02 Mar. 2024 00:00",url:"/support-center/faqs-detail#why-receiving-verification-code",content:"\n SMS Verification\n If you are unable to re
1ceive the SMS verification code, try the following:\n 1. Check your mobile signal: Make sure your phone has good signal coverage in your current location.\n 2. Verify phone settings: Ensure SMS notifications are not set to silent, blocked, or restricted.\n 3. Clear phone storage space: Full storage can block SMS reception. Delete unnecessary files to free up space.\n 4. Wait a few moments: SMS delivery might sometimes be delayed. Please allow some time and try again.\n Email Verification\n If you are unable to receive the email verification code, try the following:\n 5. Check your spam or junk mail folder: The verification email might have been mistakenly flagged as spam.\n 6. Verify your email address: Ensure you provided the correct email address during registration.\n 7. Review your email security settings: Some email providers have strict security filters that may block verification emails. Adjust your settings or add our email domain to the safe sender list.\n 8. Check your email storage space: If your inbox is full, it might prevent new emails from being received. Clear some space and try again.\n For security reasons, there is a limit on the number of email verification codes that can be sent per merchant account. We recommend enabling Google Authenticator to enhance the security of your account.\n If you still donât receive the code, please get in touch with our support team.\n ",end:!0}]}]},{title:"Tokens & Chains",link:"#tokens-chains",openId:["#tokens-chains"],logo:(0,a.jsx)(i.h0,{}),relatedList:[{title:"How Can I Obtain the Minimum Withdrawal and Deposit Amounts for Tokens?",link:"#tokens-minimum-withdrawal-deposit",openId:["#others","#other","#tokens-minimum-withdrawal-deposit"],end:!0},{title:"How Do I Activate My XRP or XLM Deposit Address?",link:"#deposit-activate-xrp-xlm-address",openId:["#deposit","#crypto-deposit","#deposit-activate-xrp-xlm-address"],end:!0}],subs:[{title:"Supported Tokens",link:"#supported-tokens",openId:["#tokens-chains","#supported-tokens"],subs:[{title:"Supported Tokens-What tokens does CCPayment support?",link:"#deposit-accept-tokens",openId:["#tokens-chains","#supported-tokens","#deposit-accept-tokens"],time:"07 Sep. 2026 00:00",url:"/support-center/faqs-detail#deposit-accept-tokens",content:"\n You can check the tokens currently supported by CCPayment through the following three methods:\n 1. View the latest list on CCPayment website\n Visit the Supported Tokens page to view the latest list of supported tokens.\n 2. View supported tokens in your Merchant Dashboard\n Go to Merchant Settings to view the payment tokens currently available for your business.\n You can also enable the option to automatically add newly supported tokens as receiving tokens for your business.\n 3. Use the Get Token List API\n Developers can call the Get Token List API to retrieve the latest list of supported tokens.\n You can also follow CCPayment's token listing announcements to stay up to date with newly supported tokens.\n Tips: To stay up to date with new token listings, you can also follow CCPayment's token listing announcements.\n Need support for a new token?\n Don't see the token you need? Contact the CCPayment Support Team with the token and network details. Our team will review your request and assess if it can be supported.\n ",end:!0},{title:"Where Can I Configure Which Coins My Business Accepts?",link:"#config-coins-accepts",openId:["#tokens-chains","#supported-tokens","#config-coins-accepts"],time:"03 June. 2025 16:32",content:"\n 1. Log in to your CCPayment account.\n 2. Navigate to the Merchant Settings > Settings in the dashboard.\n 3. Under Tokens For Your Business, you'll see a list of supported coins. Use the checkboxes next to each token to enable or disable them. The tokens you select will be available for your users to make payments.\n ",end:!0},{title:"How to List a New Token on CCPayment?",link:"#list-new-token",openId:["#tokens-chains","#supported-tokens","#list-new-token"],time:"01 Mar. 2024 00:00",url:"/support-center/faqs-detail#list-new-token",content:"\n Coin Listing Information You Need to Provide\n To request the listing of a new coin or token on CCPayment, please submit the following details to our support team for evaluation:\n Coin/Token Name: The full name of the coin/token to be listed.\n Symbol: The abbreviation or symbol for the coin/token (e.g., BTC, ETH, USDT).\n Blockchain: The blockchain on which the token operates (e.g., ERC-20, BEP-20, SUI, Solana, etc.)\n Token Address: A unique identifier for a specific token on a blockchain. You could typically find the token address on block explorer of blockchain (such as Etherscan for Ethereum, BSCScan for Binance Smart Chain)\n Logo: A high-resolution logo image in PNG or SVG format.\n Official Website URL: A link to the official website of the coin/token for verification and additional details.\n Once submitted, our team will review the request and confirm if the token can be integrated into the CCPayment system.\n ",end:!0},]}
1,{title:"Supported Chains",link:"#supported-chains",openId:["#tokens-chains","#supported-chains"],subs:[{title:"Supported Chains-What blockchain networks does CCPayment support?",link:"#supported-chains-content",openId:["#tokens-chains","#supported-chains","#supported-chains-content"],time:"07 Sep. 2026 00:00",url:"/support-center/faqs-detail#supported-chains-content",content:"\n CCPayment supports multiple blockchain networks to facilitate seamless transactions. You can check the latest supported chains in two ways:\n 1. View the latest list on CCPayment website\n Visit the Supported Chains page to view the latest list of supported chains.\n 2. Use the Get Chain List API\n Developers can use the Get Chain List API to retrieve the latest list of supported chains.\n Need support for a new network?\n If you require a network that CCPayment does not currently support, please contact the CCPayment Support Team with the specific chain details. Our team will review your request and assess the technical feasibility of integrating the new network.\n ",end:!0},{title:"How to Integrate Chain on CCPayment?",link:"#integrate-chain",openId:["#tokens-chains","#supported-chains","#integrate-chain"],time:"11 Nov. 2024 00:00",url:"/support-center/faqs-detail#integrate-chain",content:"\n To integrate a blockchain on CCPayment, please provide the following information for evaluation:\n Official Website: The primary website of the blockchain project.\n Whitepaper: A detailed document outlining the blockchainâs technology, features, and use cases.\n API Access: Documentation and endpoints for node access, transaction processing, and smart contract interactions.\n Community Information: Links to official community channels, such as forums, Telegram, Discord, or social media.\n Providing comprehensive and accurate information will help expedite the integration process. For further inquiries, please contact CCPayment Support Team.\n ",end:!0},]}]},{title:"Fee Structure",link:"#fee-structure",openId:["#fee-structure"],logo:(0,a.jsx)(i.Bh,{}),relatedList:[{title:"How to Identify and Process Deposits Based on Their Status?",link:"#deposit-identify",openId:["#deposit","#deposit-guide","#deposit-identify"],end:!0},{title:"What Can I Do When a Deposit Is Suspended Due to Node Maintenance?",link:"#deposit-suspended-func",openId:["#deposit","#deposit-guide","#deposit-suspended-func"],end:!0},{title:"How Many Confirmations Are Needed for Funds to Be Credited to My Account?",link:"#deposit-payment-confirmations",openId:["#deposit","#deposit-guide","#deposit-payment-confirmations"],end:!0},{title:"How do I handle underpaid or overpaid orders?",link:"#deposit-handle-underpaid-overpaid-orders",openId:["#deposit","#deposit-guide","#deposit-handle-underpaid-overpaid-orders"],end:!0},{title:"How to Handle Expired Payments for an Order?",link:"#deposit-handle-orders-expired",openId:["#deposit","#deposit-guide","#deposit-handle-orders-expired"],end:!0}],subs:[{title:"Service Fee",link:"#service-fee",openId:["#fee-structure","#service-fee"],subs:[{title:"Deposit Fees",link:"#deposit-fees",openId:["#fee-structure","#service-fee","#deposit-fees"],time:"20 Aug. 2025 11:20",url:"/support-center/faqs-detail#deposit-fees",content:"\n CCPayment only charges the 0.5% fixed service fee from the deposit; this service fee rate is the lowest in the current market you can search.\n The minimum service fee for each BTC deposit will be 0.5 USDT.\n API Called\n All interfaces are called for free and without any limitations on the number of times.\n Free Address\n CCPayment provides free permanent addresses for merchants. And the assigned address is available for the users in the long term.\n Swap\n CCPayment provides free swapping for merchants.\n Deposit Auto-swap\n For merchants who want to accept multi-token payments but only want to re
1ceive and save payment as a specific token, the auto swap only charges swapping tokens 0.6% as a conversion partner fee.\n Withdraw/ Send\n When the merchant/ user withdraws, CCPayment has only deducted the network fee needed of the blockchain and includes the collect token basic fee. So, please notice the assets flow trend on CCPayment.\n Merchants and users will deposit to the different addresses provided by CCPayment.\n CCPayment will collect assets to merchant withdrawal account from different address accord the collection token strategy. (Intelligent liquidity optimization strategy provided by CCPayment AI)\n The network fee is unavoidable when assets are saved and collected.\n CCPayment will convert your aggregation fees into equivalent USDT and manage them centrally; You can easily track the total aggregation fees by accessing the Balance tab on the Dashboard.\n Aggregation fees will be deducted from your USDT while withdrawing. If your USDT balance is insufficient to cover the fees, CCPayment will automatically convert your other tokens into an equivalent amount of USDT and deduct them to ensure a successful withdrawal.\n Merchants should retain a certain amount of USDT to reduce costs due to additional conversion costs.\n CCPayment has continually optimized the collection strategy, keeping fluent withdrawal and saving the network fee cost. You can follow these experiences and rules to reduce accumulated network fees, and we suggest you lead and guide the user's deposit type.\n To minimize your accumulated costs, we recommend you to decrease making deposits lower than 5 USDT.\n Auto-withdrawal\n After receiving the specified token, CCPayment will automatically initiate an auto-withdrawal to your designated receiving address, with a 0.5% fee charged.\n Invoice Email\n CCPayment provides free invoice email notifications, assisting merchants in making professional finance management. You can set the scheduled auto-sending on a single invoice and cycle invoice, helping your business subscription and transfer continuously, and efficiently managing relationships with customers.\n Please don't hesitate to direct message us for any problems or issues.\n ",end:!0},{title:"Withdrawal Fees",link:"#withdrawal-fees",openId:["#fee-structure","#service-fee","#withdrawal-fee"],time:"29 Mar. 2024 00:00",url:"/support-center/faqs-detail#withdrawal-fees",content:"\n When the merchant/ user withdraws, CCPayment has only deducted the network fee needed of the blockchain and includes the collect token basic fee. So, please notice the assets flow trend on CCPayment.\n Merchants and users will deposit to the different addresses provided by CCPayment.\n CCPayment will collect assets to merchant withdrawal account from different address accord the collection token strategy. (Intelligent liquidity optimization strategy provided by CCPayment AI)\n The network fee is unavoidable when assets are saved and collected.\n CCPayment will convert your aggregation fees into equivalent USDT and manage them centrally; You can easily track the total aggregation fees by accessing the Balance tab on the Dashboard.\n Aggregation fees will be deducted from your USDT while withdrawing. If your USDT balance is insufficient to cover the fees, CCPayment will automatically convert your other tokens into an equivalent amount of USDT and deduct them to ensure a successful withdrawal.\n Merchants should retain a certain amount of USDT to reduce costs due to additional conversion costs.\n CCPayment has continually optimized the collection strategy, keeping fluent withdrawal and saving the network fee cost. You can follow these experiences and rules to reduce accumulated network fees, and we suggest you lead and guide the user's deposit type.\n To minimize your accumulated costs, we recommend you to decrease making deposits lower than 5 USDT.\n Auto-withdrawal\n After receiving the specified token, CCPayment will automatically initiate an auto-withdrawal to your designated receiving address, with a 0.5% fee charged.\n Invoice Email\n CCPayment provides free invoice email notifications, assisting merchants in making professional finance management. You can set the scheduled auto-sending on a single invoice and cycle invoice, helping your business subscription and transfer continuously, and efficie
1ntly managing relationships with customers.\n Please don't hesitate to direct message us for any problems or issues.\n ",end:!0},{title:"Swap Fees",link:"#swap-fees",openId:["#fee-structure","#service-fee","#swap-fees"],time:"03 June. 2025 18:32",url:"/support-center/faqs-detail#swap-fees",content:"\n Swapping allows you to convert one cryptocurrency into another. CCPayment offers flexible swap options to fit your business needs. Here's how our swap fees work:\n 1. Free Swaps via Dashboard\n Merchants can swap tokens directly in the CCPayment dashboard for free with no additional service fees.\n 2. API swap\n When tokens are swapped through the API, a 0.5% service fee applies based on the amount converted. This option is ideal for platforms integrating real-time token swaps.\n 3. Auto-swap\n Want to accept multiple tokens but settle in just one? Our Auto-Swap feature automatically converts incoming payments to your preferred token, with 0.6% of the converted amount charged as a service fee.\n Example: If a user pays in ETH and you auto-swap to USDT, 0.6% of the USDT received will be charged as a service fee.\n Note: If the calculated swap service fee for a transaction is less than 0.1 USDT, a minimum fee equivalent to 0.1 USDT in the output coin will be applied instead.\n If your business processes large swap volumes, weâre happy to discuss customized, competitive fee rates. Feel free to contact our support team for more details.\n ",end:!0}]},{title:"Network Fee",link:"#network-fee",openId:["#fee-structure","#network-fee"],subs:[{title:"What is Network Fee?",link:"#network-fee-how",openId:["#fee-structure","#network-fee","#network-fee-how"],time:"8 May. 2025 16:28",url:"/support-center/faqs-detail#network-fee-how",content:"\n A network fee, commonly known as a gas fee, is the cost required to process a transaction or execute a smart contract on a blockchain. It is paid to blockchain validators (miners or nodes) who verify and confirm transactions.\n Does the Gas Fee Depend on How Much I'm Sending?\n No, gas fees are not based on the transaction amount. Instead, they depend on:\n The blockchain network and coin used, as well as the current network load (higher traffic = higher fees)\n Transaction complexity â simple transfers cost less than complex smart contract executions\n Transaction speed preference â you can add a tip to prioritize your transaction\n The value of network fee is always a flat number, not a percentage of the amount you're sending. This means whether you're sending $1 or $10,000, the gas fee might be exactly the same â because itâs tied to network and computation.\n ",end:!0}]}]},{title:"Deposit",link:"#deposit",openId:["#deposit"],logo:(0,a.jsx)(i.Ti,{}),relatedList:[{title:"What's a Memo/Tag in Crypto Payments?",link:"#deposit-payment-memo",openId:["#deposit","#crypto-deposit","#deposit-payment-memo"],end:!0},{title:"Guide to Checking Various Types of Transactions on the CCPayment Dashboard",link:"#checking-various-types",openId:["#features","#funds","#checking-various-types"],end:!0},{title:"How to Handle a Webhook Notification for a Duplicate Transaction?",link:"#handle-webhook-duplicate-notification",openId:["#webhook","#webhook-notifications","#handle-webhook-duplicate-notification"],end:!0},{title:"Why Am I Not Receiving Webhook Notifications?",link:"#deposit-payment-webhook",openId:["#webhook","#webhook-notifications","deposit-payment-webhook"],end:!0}],subs:[{title:"Deposit Guide",link:"#deposit-guide",openId:["#deposit","#deposit-guide"],subs:[{title:"How to Identify and Process Deposits Based on Their Status?",link:"#deposit-identify",openId:["#deposit","#deposit-guide","#deposit-identify"],end:!0,time:"22 Sep. 2026 00:00",url:"/support-center/faqs-detail#deposit-identify",content:'\n The status field in the Deposit webhook indicates the status of each payment transaction.\n 1. Processing\n Status Explanation: A deposit with a "Processing" status indicates that the transaction is still being processed or has not yet been completed.\n How to Process:\n This is a temporary status. The transaction has been detected, but you should wait for further confirmation. Only credit the transaction when the status changes to "success." If the status switches to "failed," no further action is required.\n 2. Success\n Status Explanation: Success means the transaction has been successfully confirmed and the funds have been received.\n How to process:\n After verifying, you can credit the actual received amount to the user\'s account upon receiving status=Success.\n 3. Failed\n Status Explanation: Failed means the transaction was not completed successfully and the payment was not received.\n How to Process:\n Mark the transaction as failed in your system. Notify the user or relevant parties to address the issue and retry the transaction.\n Note: If a transaction is confirmed very quickly, the Processing webhook notification may be skipped. In this case, you may only receive the final status notification (such as "success" or "failed").\n Webhook Retry Logic\n To acknowledge receipt of a webhook, your endpoint must return an HTTP 200 status code with the exact string "Success" in the response body.\n If CCPayment does not receive this expected response, it will automatically retry sending the webhook up to six times.\n Retry Intervals\n 30 seconds\n 1 minute 30 seconds\n 3 minutes 30 seconds\n 7 minutes 30 seconds\n 15 minutes 30 seconds\n 31 minutes 30 seconds\n Because the same webhook may be delivered more than once, your system should implement idempotency to prevent duplicate credits.\n Idempotency Implementation for Transactions\n To prevent the processing of duplicate transactions due to network issues or retry mechanisms, the system must ensure that each transaction is processed only once.\n We recommend using CCPayment\'s unique recordID as the idempotency key.\n How to Implement Idempotency\n When a Deposit webhook is received:\n 1. Check whether the recordID already exists in your database.\n 2. If it already exists, skip processing the payment, but ensure your endpoint still returns an HTTP 200 with "Success" to stop further retries.\n 3. If it does not exist, process the payment normally and save the recordID.\n This prevents duplicate credits when the same webhook is delivered multiple times.\n For code examples and detailed implementation guidance, see the Webhook Documentation: https://ccpayment.com/api/doc/?en#idempotency-implementation-for-transactions\n '},{title:"What Can I Do When a Deposit Is Suspended Due to Node Maintenance?",link:"#deposit-suspended-func",openId:["#deposit","#deposit-guide","#deposit-suspended-func"],time:"29 May. 2025 16:36",url:"/support-center/faqs-detail#deposit-suspended-func",content:"\n At CCPayment, our blockchain nodes are developed and maintained by a team of highly skilled blockchain engineers.\n We operate on enterprise-level infrastru
1cture and machines to ensure that every payment runs smoothly. For your users, this translates into a seamless, stable, and secure payment experience every time.\n What Should I Do If a Chain Is Under Maintenance?\n When a blockchain or node is marked as âUnder Maintenanceâ on CCPayment, it means that the network is temporarily unavailable for processing transactions.\n For Deposits:\n Please do not make deposits to addresses on chains under maintenance. These transactions may experience delays or fail to be credited automatically, which could affect the user experience.\n If a user makes a deposit through a chain that is under maintenance and the funds are not credited, please contact our support team for manual assistance.\n For Withdrawals:\n Withdrawals through a chain under maintenance are temporarily disabled. Please wait until the chain is fully restored before proceeding.\n To ensure smooth payment flows, you can check chain status by calling 'Get Chain List' API and dynamically adapt your supported chains to deliver the best possible user experience.\n How to Refund Deposits for Unsupported Tokens on CCPayment?\n If a deposit is made using an unsupported token, CCPayment may assist in returning a portion of the funds under the following conditions:\n 1. Supported Chain Requirement: The deposited token must be on a blockchain that CCPayment supports. In this case, we can recover the funds and return 80% of the original amount to the merchant.\n 2. Proof of Deposit: The merchant must provide valid evidence confirming that the deposit was made by their user.\n 3. Timeframe for Requests: Refund requests must be submitted to CCPayment customer support within 90 days of the transaction. Requests made after this period may not be processed.\n 4. Refund Fees: 20% of the original deposit will be deducted to cover administrative costs and double the applicable network fees. \n ",end:!0},{title:"How Many Confirmations Are Needed for Funds to Be Credited to My Account?",link:"#deposit-payment-confirmations",openId:["#deposit","#deposit-guide","#deposit-payment-confirmations"],time:"21 Mar. 2024 00:00",url:"/support-center/faqs-detail#deposit-payment-confirmations",content:"\n The number of confirmations needed for funds to be credited to your account can vary depending on the cryptocurrency being used. Typically, for most major cryptocurrencies, the required confirmations are as follows:\n 1. Bitcoin (BTC): 0 confirmation, immediate credit upon inclusion in a mined block.\n 2. Ethereum (ETH): 2 confirmations.\n 3. Litecoin (LTC): 1 confirmation.\n 4. Bitcoin Cash (BCH): 0 confirmation, immediate credit upon inclusion in a mined block.\n 5. Ripple (XRP): 1 confirmation.\n 6. Solana (SOL): 1 confirmation.\n 7. Polkadot (DOT): 6 confirmations.\n 8. Other Cryptocurrencies: The number of required confirmations can vary.\n If you experience any delays or have questions about a specific transaction, our support team is here to help. Feel free to contact us.\n ",end:!0},{title:"How do I handle underpaid or overpaid orders?",link:"#deposit-handle-underpaid-overpaid-orders",openId:["#deposit","#deposit-guide","#deposit-handle-underpaid-overpaid-orders"],time:"10 Sep. 2026 00:00",url:"/support-center/faqs-detail#deposit-handle-underpaid-overpaid-orders",content:"\n Underpaid and Overpaid are order-level statuses shown in API Orders and on the Checkout URL.\n After receiving a Deposit webhook, use the orderId to query the order details. For merchant-specified currency orders, use the Get Order Information API. For customer-selected currency deposit orders, use the Get Invoice Order Information API.\n Underpaid: An order is Underpaid when the total amount received is less than the amount due. CCPayment supports multiple payments for the same order. Each successful payment is added to the order's payment records and total received amount. If the order is still valid, the customer can pay the remaining amount. Do not fulfill the order until the total amount received meets the order amount.\n Overpaid: An order is Overpaid when the total amount received is greater than the amount due. Review the order's payment records and total received amount, then handle the excess amount according to your business policy.\n If the customer pays with a token that is not specified for the order or is not enabled for your business, the payment will not be included in paidList, and no Deposit webhook will be sent for that payment.\n Underpaid and Overpaid are order-level statuses shown in the Merchant Dashboard and Checkout URL. They are not returned as order statuses in the Deposit webhook. Only status = Success indicates that the payment has been successfully credited.\n For more information about transaction status, see How is a deposit transaction status determined?\n ",end:!0},{title:"How to Handle Expired Payments for an Order?",link:"#deposit-handle-orders-expired",openId:["#deposit","#deposit-guide","#deposit-handle-orders-expired"],time:"21 Mar. 2024 00:00",url:"/support-center/faqs-detail#deposit-handle-orders-expired",content:"\n Even after the expiration time of the order, CCPayment will still keep the payment address for 7 days to avoid potential delays in blockchain transactions.\n Within these 7 days, any confirmed recharges will be correctly credited to the merchant's account and trigger webhook notifications. However, CCPayment does not recommend relying on overdue recharges, as this could potentially result in blockchain transactions not being correctly credited in extreme cases.\n ",end:!0}]},{title:"Crypto Deposit",link:"#crypto-deposit",openId:["#deposit","#crypto-deposit"],subs:[{title:"How do I deposit crypto into my CCPayment Account?",link:"#deposit-crypto-account",openId:["#deposit","#crypto-deposit","#deposit-crypto-account"],time:"21 May. 2025 18:21",url:"/support-center/faqs-detail#deposit-crypto-account",content:"\n 1. Go to your Dashboard\n Navigate to Balance > Coin Assets > Deposit on your CCPayment Dashboard.\n 2. Select a Cryptocurrency\n Choose the crypto you'd like to deposit (e.g. USDT). You'll see the supported networks for depositing USDT.\n 3. Choose the Correct Network\n Ensure the selected network is the same as the network from which you are sending the funds. Unmatched networks may result in permanent loss of your funds.\n 4. Get Your Deposit Address\n Once you select the network, a deposit address will be generated for you. To make a deposit, you can either copy and paste this address into the sending platform's address field, or scan the provided QR code with their app.\n Note: For some cryptocurrencies (for example, TON, XRP, XLM), a Tag/Memo is also required. Always include both the deposit address and tag/memo to ensure successful deposit.\n ",end:!0},{title:'What Are the Transactions Under the "Other" Category in the Transaction Records?',link:"#deposit-transaction-other",openId:["#deposit","#crypto-deposit","#deposit-transaction-other"],time:"21 Mar. 2024 00:00",url:"/support-center/faqs-detail#deposit-transaction-other",content:'\n The "Other" category in the transaction records refers to non-standard payment transactions that may include the following situations:\n 1. The payer did not provide the required memo or tag during the payment.\n 2. The payer used a cryptocurrency that is not supported by the merchant for the payment.\n 3. In the payment order, the payer used an unspecified cryptocurrency for payment.\n 4. Other transaction types cannot be identified correctly.\n These transactions cannot be associated with an order number or user and are only credited to the merchant\'s assets. They do not trigger webhook notifications. Merchants need to manually handle related business based on user feedback or inquiries.\n ',end:!0},{title:"What's a Memo/Tag in Crypto Payments?",link:"#deposit-payment-memo",openId:["#deposit","#crypto-deposit","#deposit-payment-memo"],time:"22 May. 2025 10:37",url:"/support-center/faqs-detail#deposit-payment-memo",content:"\n When sending crypto to a shared wallet address (like exchanges or service platforms), a Memo (or Tag/Message) is an additional piece of information used to identify your specific transaction or account.\n Why is it needed?\n Think of the wallet address as a hotel, and the memo as your room number. Your funds may arrive at the hotel, but without the correct room number, they wonât reach the right person. A missing or incorrect Memo can result in delayed, uncredited, or even lost funds.\n Use our API to check which coins require a MEMO: https://ccpayment.com/api/doc?en#get-chain-list\n What Happens If the Memo is Missing?\n If a transaction is sent to the correct address but without a required memo, it may still be credited to the merchantâs account. However, it will not be linked to a specific order or user. As a result, they typically do not trigger webhook notifications, and merchants must manually identify and handle these cases based on user feedback.\n Security Reminder\n Weâve seen real cases where users input the wrong memo, causing the funds to be misrouted. Unfortunately, this can open the door for scammers to forge screenshots or videos, falsely claiming ownership of those funds. As a result, rightful users did not receive their payments, and losses occurred.\n We strongly recommend that merchants remain vigilant and always double-check transaction details with users to avoid unmatched deposits or fraud.\n ",end:!0},{title:"How to Refund CCPayment Unsupported Token Deposits?",link:"#deposit-payment-refund-unsupported-token",openId:["#deposit","#crypto-deposit","#deposit-payment-refund-unsupported-token"],time:"21 Mar. 2024 00:00",url:"/support-center/faqs-detail#deposit-payment-refund-unsupported-token",content:"\n For refunds of unsupported token deposits by CCPayment, the following conditions must be met:\n 1. Provide evidence: Submit relevant documentation that proves the deposit originated from the merchant.\n 2. Time requirements: Contact CCPayment's customer service within 90 days of the transaction occurring to initiate a refund request. Requests made after this period may not be processed.\n 3. Refund fees: A refund fee of 10% of the transaction amount will be deducted as an administrative fee. The refund will be processed after deducting double the network fees.\n ",end:!0},{title:"How to Refund a Customer?",link:"#deposit-payment-refund-customer",openId:["#deposit","#crypto-deposit","#deposit-payment-refund-customer"],time:"21 Mar. 2024 00:00",url:"/support-center/faqs-detail#deposit-payment-refund-customer",content:"\n Merchants can initiate refund operations to customers through the withdrawal feature or relevant withdrawal APIs. Before processing a refund, it is recommended that the merchant verify the relevant transaction information to avoid any transaction disputes.\n ",end:!0},{title:"How Do I Activate My XRP or XLM Deposit Address?",link:"#deposit-activate-xrp-xlm-address",openId:["#deposit","#crypto-deposit","#deposit-activate-xrp-xlm-address"],time:"21 Mar. 2024 00:00",url:"/support-center/faqs-detail#deposit-activate-xrp-xlm-address",content:"\n For XRP tokens, a minimum deposit of 10 XRP is required to activate the address; for XLM tokens, a minimum deposit of 1 XLM is required to activate the address.\n ",end:!0}]}]},{title:"Withdrawal",link:"#withdrawal",openId:["#withdrawal"],logo:(0,a.jsx)(i.V5,{}),relatedList:[{title:"How to Refund CCPayment Unsupported Token Deposits?",link:"#deposit-payment-refund-unsupported-token",openId:["#deposit","#crypto-deposit","#deposit-payment-refund-unsupported-token"],end:!0},{title:"How to Refund a Customer?",link:"#deposit-payment-refund-customer",openId:["#deposit","#crypto-deposit","#deposit-payment-refund-customer"],end:!0},{title:"Auto-Withdrawal",link:"#auto-withdrawal",openId:["#features","#funds","#auto-withdrawal"],end:!0}],subs:[{title:"Withdrawal Guide",link:"#withdrawal-guide",openId:["#withdrawal","#withdrawal-guide"],subs:[{title:"How to Process Withdrawals Based on Their Status?",link:"#withdraw-ccpayment-how",openId:["#withdrawal","#withdrawal-guide","#withdraw-ccpayment-how"],time:"29 Nov. 2024 00:00",url:"/support-center/faqs-detail#withdraw-ccpayment-how",content:'\n Pending\n Status Explanation:\n A withdrawal with a "pending" status indicates that the request has been received but is still being processed. This may be due to network confirmation requirements or internal approval procedures.\n How to Process:\n This is a temporary status. Do not release the funds to the user until the status changes to "success." If the status changes to "failed," take appropriate actions based on the reason for failure.\n Success\n Status Explanation:\n A "success" status indicates that the withdrawal has been successfully processed, and the funds have been sent to the recipientâs address.\n How to Process:\n Update the user\'s balance accordingly and mark the withdrawal as complete in your system. No further action is needed.\n Failed\n Status Explanation:\n If a withdrawal is marked as "failed," it means that the transaction was not completed. This could be due to insufficient balance, network issues, or other errors.\n How to Process:\n Mark the transaction as failed in your system, and notify the user or relevant parties to address the issue and retry the withdrawal.\n ',end:!0},{title:"What Can I Do When a Withdrawal Is Suspended Due to Node Maintenance?",link:"#maintance-withdrawal-suspended",openId:["#withdrawal","#withdrawal-guide","#maintance-withdrawal-suspended"],time:"29 May. 2025 16:36",url:"/support-center/faqs-detail#maintance-withdrawal-suspended",content:"\n At CCPayment, our blockchain nodes are developed and maintained by a team of highly skilled blockchain engineers.\n We operate on enterprise-level infrastru
1cture and machines to ensure that every payment runs smoothly. For your users, this translates into a seamless, stable, and secure payment experience every time.\n What Should I Do If a Chain Is Under Maintenance?\n When a blockchain or node is marked as âUnder Maintenanceâ on CCPayment, it means that the network is temporarily unavailable for processing transactions.\n For Deposits:\n Please do not make deposits to addresses on chains under maintenance. These transactions may experience delays or fail to be credited automatically, which could affect the user experience.\n If a user makes a deposit through a chain that is under maintenance and the funds are not credited, please contact our support team for manual assistance.\n For Withdrawals:\n Withdrawals through a chain under maintenance are temporarily disabled. Please wait until the chain is fully restored before proceeding.\n To ensure smooth payment flows, you can check chain status by calling 'Get Chain List' API and dynamically adapt your supported chains to deliver the best possible user experience.\n How to Refund Deposits for Unsupported Tokens on CCPayment?\n If a deposit is made using an unsupported token, CCPayment may assist in returning a portion of the funds under the following conditions:\n 1. Supported Chain Requirement: The deposited token must be on a blockchain that CCPayment supports. In this case, we can recover the funds and return 80% of the original amount to the merchant.\n 2. Proof of Deposit: The merchant must provide valid evidence confirming that the deposit was made by their user.\n 3. Timeframe for Requests: Refund requests must be submitted to CCPayment customer support within 90 days of the transaction. Requests made after this period may not be processed.\n 4. Refund Fees: 20% of the original deposit will be deducted to cover administrative costs and double the applicable network fees.\n ",end:!0},{title:"Handle Failed Withdraw Order",link:"#handle-failed-withdraw",openId:["#withdrawal","#withdrawal-guide","#handle-failed-withdraw"],time:"29 Nov. 2024 00:00",url:"/support-center/faqs-detail#handle-failed-withdraw",content:"\n The possible reasons for a withdrawal order to fail are as follows:\n 1. Blockchain congestion: When there is a surge in blockchain transactions, it may take longer for transactions to be confirmed. If a withdrawal transaction is not confirmed on the blockchain within 120 minutes, it may result in a withdrawal failure. You can contact customer support to increase the network fee budget to expedite the processing speed of blockchain transactions.\n 2. Blockchain maintenance: Occasionally, blockchain maintenance can disrupt the normal processing of transactions. Please resubmit the withdrawal request once the network is functioning normally.\n 3. CCPayment fund custody service: We dynamically prepare the withdrawal amount based on the withdrawal demands of merchants and users, optimizing the collection fees while ensuring smooth withdrawal functionality. In rare cases, larger withdrawal amounts may fail due to delayed collection. Simply resubmit the withdrawal request a few minutes later, and the system will process it correctly.\n If you encounter any exceptional withdrawal failure situations that cannot be determined, please contact our 24/7 customer support team promptly. We are here to help.\n ",end:!0},]},{title:"Crypto Withdrawal",link:"#crypto-withdrawal",openId:["#withdrawal","#crypto-withdrawal"],subs:[{title:"How do I withdraw from my CCPayment Account?",link:"#withdrawal-do-account",openId:["#withdrawal","#crypto-withdrawal","#withdrawal-do-account"],time:"14 may. 2025 19:48",url:"/support-center/faqs-detail#withdrawal-do-account",content:"\n 1. Go to Your Dashboard\n Navigate to Balance > Coin Assets > Withdraw on your CCPayment Dashboard.\n 2. Choose a Cryptocurrency\n Select the crypto you want to withdraw ( e.g. USDT). You'll see 2 withdrawal options:\n To Address: Send crypto to an external wallet (via blockchain).\n To Cwallet ID: Send crypto instantly to a Cwallet account (no network fee).\n 3. \"To address\" Withdrawal\n Fill in the receiver's address and select withdrawal network from the available options. Please make sure the selected withdrawal network matches the deposit network of the receiving platform to avoid loss of funds.\n Enter the amount you want to withdraw. The system will display the current network fee, which may vary depending on the selected blockchain. If you want the targeted address to receive the full amount (e.g. 60 USDT), check the âAdd fee to amountâ box-the fee will be added on top of your entered amount. If you leave the box unchecked, the network fee will be deducted from the entered amount, meaning the targeted address will receive 60 USDT minus the network fee.\n Complete security verification and click Confirm to process the withdrawal.\n 4. \"To Cwallet ID\" withdrawal\n Select the crypto and choose To Cwallet ID. Enter the receiver's Cwallet ID ( found in the top right of the Cwallet dashboard). Please ensure you've entered the correct Cwallet ID before entering the amount you want to send.\n Complete security verification and click Confirm to process the withdrawal.\n Noteï¼ For some cryptocurrencies (for example, TON, XRP, XLM), both address and Tag/Memo (usually a string of numbers) are required. Skipping the Tag/Memo may result in loss of funds.\n ",end:!0},{title:"Withdrawal Processing Time",link:"#withdrawal-processing-time",openId:["#withdrawal","#crypto-withdrawal","#withdrawal-processing-time"],time:"29 Nov. 2024 00:00",url:"/support-center/faqs-detail#withdrawal-processing-time",content:"\n The processing time for a withdrawal depends on the speed of the blockchain network. Once a merchant initiates a withdrawal request, CCPayment immediately submits the request to the blockchain for processing.\n ",end:!0}]}]},{title:"Swap",link:"#swap",openId:["#swap"],logo:(0,a.jsx)(i.nl,{}),subs:[{title:"Crypto Swap",link:"#crypto-swap",openId:["#swap","#crypto-swap"],subs:[{title:"How Do I Swap Crypto on CCPayment?",link:"#swap-do-payment",openId:["#swap","#crypto-swap","#swap-do-payment"],time:"14 may. 2025 20:14",url:"/support-center/faqs-detail#swap-do-payment",content:"\n 1. Go to your Dashboard\n Navigate to Balance > Coin Assets > Swap on your CCPayment Dashboard.\n 2. Select Cryptocurrency to Swap\n In the âFromâ section, choose the crypto you want to swap (e.g. USDT). Your available balance for USDT will be shown below.\n 3. Enter the Swap Amount\n Enter the amount you want to swap, or use quick options (25%, 50%, 75%, 100%) to auto-fill the amount. You can also enter how much you would like to receive first, and the system will auto-calculate the required input.\n In the âToâ section, choose the crypto you want to re
1ceive (e.g. ETH). The current exchange rate will be applied automatically. No service fee is charged for swaps on your dashboard.\n 4. Confirm the Swap\n Review the details, then click Confirm to complete the security verification. Your crypto will be swapped and credited to your balance. You can view your swap record under Transaction List.\n Note: The final amount you receive depends on the exchange rate at the time of the transaction.\n ",end:!0},{title:"Which Cryptos Can I Swap on CCPayment?",link:"#swap-crypto-payment",openId:["#swap","#crypto-swap","#swap-crypto-payment"],time:"15 May. 2025 10:01",url:"/support-center/faqs-detail#swap-crypto-payment",content:"\n CCPayment currently supports 59 popular coin pairs for swapping. You can view all available options via the âFromâ and âToâ dropdown menus on the Swap page, or by calling the 'Get Swap Coin List' API. Weâre continuously expanding our supported pairs- feel free to contact us if there are specific coins youâd like to see added.\n ",end:!0},{title:"What Is Auto-Swap for Deposit?",link:"#auto-swap",openId:["#swap","#crypto-swap","#auto-swap"],time:"25 Aug. 2024 00:00",url:"/support-center/faqs-detail#auto-swap",content:"\n The auto-swap feature allows you to automatically convert various mainstream tokens received on this platform into stablecoins, reducing the risk of token price fluctuations.\n Once auto-swap for deposit is enabled, CCPayment will auto-swap the tokens listed in the token list of auto-swap into the specified stablecoin and deposit them into your merchant account.\n Service fee: approximately up to 0.6% fee will be applied. Contact us to have the final offer for your business.\n We support over 30 mainstream tokens for auto-swap and will continue to add more tokens to the list.\n Applicable scope: Deposit auto-swap applies to API Deposits, Invoice Deposits, and Direct Deposits payment channels.\n We will evaluate the auto-swap token list and notify you in advance of any token adjustments.\n Tokens removed from the token list of auto-swap will still be deposited into your CCPayment account but will not be auto-swapped. You can promptly inform users to stop depositing that particular token.\n In case of significant market volatility, some tokens may not be able to complete auto-swap.\n ",end:!0},]}]},{title:"Webhook",link:"#webhook",openId:["#webhook"],logo:(0,a.jsx)(i.AU,{}),relatedList:[{title:"How to Identify and Process Deposits Based on Their Status?",link:"#deposit-identify",openId:["#deposit","#deposit-guide","#deposit-identify"],end:!0},{title:'What Are the Transactions Under the "Other" Category in the Transaction Records?',link:"#deposit-transaction-other",openId:["#deposit","#crypto-deposit","#deposit-transaction-other"],end:!0},{title:"What's a Memo/Tag in Crypto Payments?",link:"#deposit-payment-memo",openId:["#deposit","#crypto-deposit","#deposit-payment-memo"],end:!0}],subs:[{title:"Webhook Notifications",link:"#webhook-notifications",openId:["#webhook","#webhook-notifications"],subs:[{title:"How to Handle a Webhook Notification for a Duplicate Transaction?",link:"#handle-webhook-duplicate-notification",openId:["#webhook","#webhook-notifications","#handle-webhook-duplicate-notification"],time:"20 Nov. 2024 00:00",url:"/support-center/faqs-detail#handle-webhook-duplicate-notification",content:"\n 1. Confirm the transaction status: First, verify the transaction status included in the received webhook notification. Typically, you may receive notifications for different stages of the transaction, transaction initiated (Pending), transaction in progress (Processing), and transaction completed (Success or Failed).\n 2. Confirm the final status: Note that only notifications with a status of Success in the transaction completed stage represent the final status. Other statuses may indicate a risk of transaction cancellation or failure.\n 3. Set the response body: After receiving the webhook notification, ensure that the response body is set in the format 'Content-Type: text/plain; charset=utf-8' and return {http code: 200}
1. Include a 'Success' string in the HTTP payload to indicate a successful response. This informs CCPayment that you have successfully received and processed the notification. If CCPayment does not receive a \"Success\" response from the merchant for the webhook, it will attempt to resend the webhook notification up to six times.\n 4. Implement idempotent processing: To avoid duplicate postings in the system, it is recommended to implement idempotent processing in your code. This means that regardless of how many identical notifications are received, the system will only process the transaction once to ensure data consistency and accuracy.\n 5. Refer to the documentation: If you need more detailed information on how to use webhooks, please consult the documentation provided by CCPayment.\n ",end:!0},{title:"How to Set Up and Activitate a Webhook URL?",link:"#set-up-webhook",openId:["#webhook","#webhook-notifications","#set-up-webhook"],time:"01 Mar. 2025 00:00",url:"/support-center/faqs-detail#set-up-webhook",content:"\n To receive instant transaction notifications (ITN) from CCPayment, you need to set up and activate a webhook URL. Follow these steps to ensure proper configuration.\n Step 1: Access the Webhook Settings\n Log into your CCPayment dashboard and navigate to the Developer>Webhook URL section.\n Step 2: Add a Webhook URL\n 1. Click Add to set up your Deposit Webhook URL and Withdrawal Webhook URL separately. Alternatively, you can use the same URL for both.\n 2. Enter the URL where you want to receive webhook notifications and click Next to proceed with activation.\n Step 3: Activate the Webhook URL\n 1. Click Detect to send a POST request to your server\n 2. Ensure your server can receive, process, and respond to POST requests with a valid response:\n HTTP status code: 200 OK.\n JSON Payload: Must include Success in the response body.\n Note: CCPayment will send webhook notifications from the following IP addresses: 54.150.123.157, 35.72.150.75 and 18.176.186.244. To guarantee successful delivery of Webhook requests, please whitelist the IP addresses above.\n Response example:\n Step 4: Confirm Webhook URL Activation\n If your server responds correctly, the webhook status will change to Enabled. This means your webhook URL will instantly receive deposit and withdrawal notifications whenever a transaction happens.\n If the response is invalid, the webhook status will remain Unactivated. Click Detect again until CCPayment receives the correct response and activates the URL.\n Step 5: Updating the Webhook URL\n If you need to update your webhook URL, click the Edit button and enter the new URL. Then, click Detect to verify and activate the updated URL, following the same steps as in Steps 2-4.\n ",end:!0},{title:"Why Am I Not Receiving Webhook Notifications?",link:"#deposit-payment-webhook",openId:["#webhook","#webhook-notifications","deposit-payment-webhook"],time:"01 Mar. 2025 00:00",url:"/support-center/faqs-detail#deposit-payment-webhook",content:"\n If your server is not receiving webhook notifications, follow these steps to identify and resolve the issue:\n 1. Verify Blockchain Confirmation:Check if the transaction has been successfully confirmed on blockchain.\n 2. Check Server Configuration: Ensure that your server is properly set up to receive, process, and respond to incoming POST requests.\n 3. Confirm Webhook URL Status:Navigate to Developer > Webhook in your CCPayment dashboard. Make sure the webhook URL is correctly configured and enabled.\n 4. Review Transaction Type:Go to the Dashboard > Transaction List and verify the transaction type. Webhook notifications are triggered for the following transaction types:\n API Deposit\n API Withdraw\n Direct Deposit\n User Deposit\n User Withdraw\n 5. Check Payment Token Configuration:Ensure that the payment token used in the transaction is enabled in your CCPayment dashboard. Payments made with unsupported tokens will not trigger webhook notifications.\n If you have reviewed all the above steps and are still experiencing issues, please contact CCPayment customer for further assistance.\n ",end:!0},{title:"Webhook Retry Logic",link:"#webhook-retry-logic",openId:["#webhook","#webhook-notifications","webhook-retry-logic"],time:"20 Nov. 2024 00:00",url:"/support-center/faqs-detail#webhook-retry-logic",content:'\n CCPayment implements an automatic retry mechanism for webhooks. If CCPayment does not receive a "Success" response with HTTP co
1de 200, the webhook request will be retried up to six times before failing.\n Retry Intervals:\n 30 seconds\n 1 minute 30 seconds\n 3 minutes 30 seconds\n 7 minutes 30 seconds\n 15 minutes 30 seconds\n 31 minutes 30 seconds\n ',end:!0}]},{title:"Resend Webhook",link:"#resend-webhook",openId:["#webhook","#resend-webhook"],subs:[{title:"Can I Trigger a Webhook Retry?",link:"#resend-webhook-how",openId:["#webhook","#resend-webhook","#resend-webhook-how"],time:"20 Nov. 2024 00:00",url:"/support-center/faqs-detail#resend-webhook-how",content:'\n Yes, you can retry a webhook on CCPayment. If a webhook notification fails or is not received properly, you can either manually resend it using the Resend Webhook feature on the dashboard or automate the retry process by integrating the Resend Webhook API.\n 1. Resend Webhook on CCPayment Dashboard\n Please navigate to the Transaction section on the CCPayment dashboard, locate the webhook that needs to be resent, and click the "Resend" button to trigger a retry to the same endpoint.\n 2. Resend Webhook by Calling API\n You can also resend webhooks by calling the API. Simply define the time range for the transactions you wish to resend, then initiate the process.\n ',end:!0}]}]},{title:"Features",link:"#features",openId:["#features"],logo:(0,a.jsx)(i.ds,{}),relatedList:[{title:"Guide to Checking Various Types of Transactions on the CCPayment Dashboard",link:"#checking-various-types",openId:["#features","#funds","#checking-various-types"],end:!0},{title:"How to Process Withdrawals Based on Their Status?",link:"#withdraw-ccpayment-how",openId:["#withdrawal","#withdrawal-guide","#withdraw-ccpayment-how"],end:!0},{title:"Can I Trigger a Webhook Retry?",link:"#resend-webhook-how",openId:["#webhook","#resend-webhook","#resend-webhook-how"],end:!0},{title:"What is TestNet?",link:"#use-test-network",openId:["#others","#test-net","#use-test-network"],end:!0}],subs:[{title:"USD Settlement",link:"#usd-settlement",openId:["#features","#usd-settlement"],subs:[{title:"Convert Crypto to USD",link:"#convert-crypto-to-usd",openId:["#features","#usd-settlement","#convert-crypto-to-usd"],time:"28 Mar. 2024 00:00",url:"/support-center/faqs-detail#convert-crypto-to-usd",content:"\n CCPayment provides a service for merchants to convert cryptocurrency to USD, with 2.49% service fee plus 49.75 USDT. No cumbersome KYC process is required, if you need any assistance, feel free to contact our support team immediately!\n ",end:!0},]},{title:"Funds",link:"#funds",openId:["#features","#funds"],subs:[{title:"What Is a Token Aggregation Fee?",link:"#token-aggregation-fee",openId:["#features","#funds","#token-aggregation-fee"],time:"28 Mar. 2024 00:00",url:"/support-center/faqs-detail#token-aggregation-fee",content:"\n CCPayment manages a large number of wallet addresses where merchants and their users transfer assets. When gas fees are low, CCPayment aggregates the dispersed assets from these addresses and transfers them to the merchant's hot wallet address through CCPayment. This is done to facilitate quick withdrawals for merchants and their users. The network fee incurred during this process is called the Token Aggregation Fee.\n When aggregating assets, the system deducts the corresponding aggregation fee from the merchant's account immediately. CCPayment collects USDT equivalent to the network fee as the aggregation fee. You can view your aggregation fee under the \"Transactions\" tab on the dashboard.\n To ensure smooth withdrawals, if your USDT balance is insufficient, CCPayment will convert your other tokens into an equivalent amount of USDT and deduct the aggregation fee. We recommend keeping a certain amount of USDT in your merchant account to minimize the associated costs of converting additional tokens.\n ",end:!0},{title:"Auto-Withdrawal",link:"#auto-withdrawal",openId:["#features","#funds","#auto-withdrawal"],time:"28 Mar. 2024 00:00",url:"/support-center/faqs-detail#auto-withdrawal",content:"\n CCPayment offers automatic withdrawal for merchants. You can enable this feature in Merchant Settings > Settings.\n Here are the instructions:\n 1. Specify the execution time: In the Merchant Settings page, you can specify the execution time for automatic withdrawals. Choose the time that suits you best, and the system will automatically initiate the withdrawal at that time.\n 2. Set the trigger amount: You can set a trigger amountâ when your account balance reaches or exceeds that amount, the automatic withdrawal function will be activated.\n 3. Configure the withdrawal ratio: If you want to withdraw only a portion of the funds with each automatic withdrawal, you can set the withdrawal ratio. The system will automatically extract the corresponding amount based on the ratio you set.\n 4. Specify the cryptocurrency and target address: Select the cryptocurrency you want to withdraw automatically and enter the target withdrawal address. If there is a memo or tag, please make sure to enter it correctly to avoid any loss of assets.\n 5. Save the settings and enable the feature: After completing the above settings, remember to save your settings and enable the automatic withdrawal feature.\n By using the automatic withdrawal feature, you can eliminate the hassle of manual operations, which ensures that funds are promptly transferred to your designated wallet address and enhances the efficiency of fund management.\n ",end:!0},{title:"How to Mitigate the Asset Depreciation Risk Caused by Cryptocurrency Volatility?",link:"#asset-depreciation",openId:["#features","#funds","#asset-depreciation"],time:"28 Mar. 2024 00:00",url:"/support-center/faqs-detail#asset-depreciation",content:"\n CCPayment offers an automatic coin swap feature for merchants, allowing you to automatically swap various mainstream tokens received on the platform into stablecoins, thereby reducing the asset depreciation risk associated with token price fluctuations.\n To enable the automatic coin swap feature:\n 1. Go to Merchant Settings > Settings.\n 2. Once enabled, CCPayment will automatically swap the tokens listed into the designated stablecoin and deposit them into your merchant account.\n Here are some important details:\n Service Fee: 0.6% swap fee based on the swapped amount. Please contact us for the final quote that suits your business.\n Supported Tokens: We support automatic swaps for over 30 major tokens and are continuously adding more tokens to the list.\n Applicable Scope: The automatic coin swap feature is applicable to API Deposit, Invoice Deposit, and Direct Deposit.\n Token List Changes: If there are any changes to the token list eligible for automatic coin swaps, we will notify you in advance.\n Token Removal: If a token eligible for automatic swaps is removed from the list, deposits in that currency will still be credited to your CCPayment account but will not be automatically swapped. You can immediately notify users to stop depositing that specific token.\n If there are any changes to the token list eligible for automatic coin conversion, we will notify you in advance.\n If a token eligible for automatic conversion is removed from the list, deposits in that currency will still be credited to your CCPayment account but will not be automatically converted. You can immediately notify users to stop depositing that specific token.\n ",end:!0},]},{title:"Transaction",link:"#transaction",openId:["#features","#transaction"],subs:[{title:"Guide to Checking Various Types of Transactions on the CCPayment Dashboard",link:"#checking-various-types",openId:["#features","#funds","#checking-various-types"],time:"28 Mar. 2024 00:00",url:"/support-center/faqs-detail#checking-various-types",content:'\n Overview of the Transactions Page\n The "Transaction" page on your CCPayment dashboard provides a comprehensive overview of all your deposit, withdrawal, and other transaction activities. This page allows you to filter and view transactions by type, token, or status, making it easy to check and manage your transactions efficie
1ntly.\n To filter and view different types of transactions, follow these steps:\n 1. Go to the "Transaction" page on your CCPayment dashboard.\n 2. Click the "Filters" button located at the top right corner of the page.\n 3. You will see 3 dropdowns. This allows you to filter transactions based on the type, token, or status. You can select multiple transaction types to view at once.\n 4. After selecting the desired transaction types, the page will automatically filter and display only the transactions that match your selected types. This helps you focus on specific transactions and quickly locate what you need.\n Check and Export the Transaction Record\n If you wish to export the filtered transaction records for a specific period, click the "Export" button. This allows you to download a report with the transaction details that matches your selected types.\n ',end:!0},{title:"How to Set Up and Use the CCPayment Transaction Bot",link:"#ccpayment-transaction-bot",openId:["#features","#funds","#checking-various-types"],time:"28 Mar. 2024 00:00",url:"/support-center/faqs-detail#ccpayment-transaction-bot",content:'\n To enable transaction queries via Telegram, follow these steps to authorize your Telegram account in CCPayment.\n Telegram Bot Authorization\n 1. Check the Telegram username you want to authorize:\n Access your Telegram\n Go to Settings\n Find your Username (it usually starts with "@")\n 2. Authorize this Telegram account in the CCPayment dashboard:\n (Only the owner can perform this authorization.)\n Log in to your CCPayment account.\n Navigate to Merchant Settings > Member > Telegram Bot Authorization\n Click "Add & Authorize" button in the top-right corner, enter the Telegram username you want to authorize, and save.\n How to Track Transactions on CCPayment Transaction Bot\n 1. Access your Telegram and search for @ccpayment_transaction_bot\n 2. Type command /startin the chat box to start the bot and query transactions\n 3. The bot provides various commands to track transaction details efficiently. Simply follow the bot\'s guidance to retrieve the information you need.\n Command Overview\n Command Details\n [txid] (Transaction ID): A unique identifier for blockchain transactions. It helps track and verify transactions\n [chain] (Blockchain Symbol): The blockchain network, such as "ETH," "BTC," "SOL," etc.\n [record id]: A unique identifier for CCPayment transactions.\n [address]: The receiving address for a transaction.\n You\'re all set! Now you can use the CCPayment Transaction Bot for quick and easy transaction tracking.\n ',end:!0}]}]},{title:"Risk-Funds Screening",link:"#risks",openId:["#risks"],logo:(0,a.jsx)(i.df,{}),relatedList:[],subs:[{title:"Risky Payments Guide",link:"#risks-payments",openId:["#risks","#risks-payments"],subs:[{title:"Why are these payments Flagged As Risky?",link:"#flagged-as-risky",openId:["#risks","#risks-payments","#flagged-as-risky"],time:"16 Jul. 2025 19:29",url:"/support-center/faqs-detail#flagged-as-risky",content:"CCPayment screens every transaction for suspicious patterns, sources, behaviors through a verified third-party AML and KYT agency to ensure your asset security and our platform compliance.\n Please rest assured that CCPayment will not freeze your funds arbitrarily and we are committed to providing merchants with a more secure, compliant, and flexible fund management experience.",end:!0},]},{title:"Risky Address Guide",link:"#risk-funds",openId:["#risks","#risk-funds"],subs:[{title:"Guide to Handling a Risky Address",link:"#handle-risky-address",openId:["#risks","#risk-funds","#handle-risky-address"],time:"16 Jul. 2025 19:29",url:"/support-center/faqs-detail#handle-risky-address",content:'\n What is Risky Address?\n A risk address refers to an address identified as high-risk due to its association with illicit activities such as money laundering or fraud. The receiving addresses may be flagged by the system as high risk due to their association with malicious behavior. This ensures that your receiving address remains clean and can be promptly replaced, further keeping your funds safe.\n What Happens When an Address is Flagged as Risky?\n 1. All payments made to this address will be flagged as risky transactions and will not be credited to your site.\n 2. CCPayment will not send webhook notifications for deposits made to this address. However, you can still manually send webhook notifications on Risky Transaction list of your dashboard.\n What Should I Do If an Address Is Flagged as Risky?\n Address flagged as risky are immediately disabled. Any further deposits to these addresses may result in fund freezing. Please call the Address Unbinding API to assign a new deposit address to your user.\n CCPayment will send webhook notifications to the provided deposit webhook URL when an address is flagged as risky. You can refer to the example to respond to incoming webhooks and take the appropriate next action.\n Example and Reference\n Notification Content\n HTTP Headers:\n "Appid": appId,\n "Timestamp": timestamp,\n "Sign": sign,\n "Content-Type": "application/json"\
1n JSON Payload:\n Response Requirements:\n Return an HTTP status code 200 OK to indicate that the webhook request has been successfully received and processed.\n Include a JSON body containing a string \'success\' to confirm the activation.\n Response example:\n ',end:!0}]},{title:"Risk-Funds Processing Fees",link:"#risks-fees",openId:["#risks","#risks-fees"],subs:[{title:"Risk-Funds Processing Fees",link:"#risks-fees-processing",openId:["#risks","#risks-fees","#risks-fees-processing"],time:"16 Jul. 2025 19:41",url:"/support-center/faqs-detail#risks-fees-processing",content:"CCPayment is committed to providing merchants with a more secure, compliant, and flexible fund management experience.",end:!0}]},]},{title:"Rent Tron Energy",link:"#rent",openId:["#rent"],logo:(0,a.jsx)(i.xr,{}),relatedList:[],subs:[{title:"Rent Tron Energy",link:"#rent-energe",openId:["#rent","#rent-energe"],subs:[{title:"Rent Tron Energy Feature",link:"#rent-energe-feature",openId:["#rent","#rent-energe","#rent-energe-feature"],time:"13 Aug. 2025 11:07",url:"/support-center/faqs-detail#rent-energe-feature",content:'Feature Overview\n The Rent TRON Energy feature is a powerful solution designed by the CCPayment team to provide our valued merchants with a smooth and cost-effective TRON transaction experience.\n By purchasing "TRX Free Transfers" in advance, merchants can waive network fees when initiating USDT-TRC20 withdrawals. Each withdrawal will automatically consume corresponding free transfers, eliminating the need to pay TRX for gas fees.\n Step-by-Step Guide\n Step 1 : Purchase Free Transfers (Only available to account owners)\n 1. Log in to the CCpayment dashboard and navigate to the "TRX Rent" Section;\n 2. Click "Purchase", enter the number of Free Transfers needed, and select your preferred payment token;\n 3. Upon successful purchase, you will immediately receive free transfers, and it is valid for 30 days;\n 4. Merchants can view the number of Free Transfers and their expiration status on the same page.\n Note: **All payments made for Free Transfers will be sent directly to the energy rental platform.\n Refunds are not supported, so please evaluate your business volume before making a purchase.\n Step 2: Automatically Apply Free Transfers\n 1. When initiating a USDT-TRC20 withdrawal via the dashboard or API, the system will automatically check for available Free Transfers.\n 2. If Free Transfers are sufficient, the required number will be automatically applied to cover the network fee, and the withdrawal will proceed normally.\n 3. Once the Free Transfers are successfully applied, CCPayment will bear the network fee , and merchants will not be required to pay any additional network fees.\n \uD83D\uDCCC Application Rulesï¼\n Free Transfers can be applied to USDT-TRC20withdrawals initiated from the dashboard.\n Withdrawals via API will also apply Free Transfers if the network fee is set to be paid by the merchant.\n Risky funds refund will consume 4 Free Transfers per transaction.\n This feature does not apply to the UserWithdrawal API (user-initiated withdrawals).\n Step 3: View Free Transfer Usage Records\n Merchants can view detailed usage records by visiting the "Free Transfer Record" section in the "Rent Tron Energy" page\n Expiration Policy\n Each Free Transfer is valid for 30 days from the date of purchase.\n Unused Free Transfers will automatically expire after the validity period and cannot be refunded.\n If a withdrawal request is submitted but fails approval, any locked Free Transfers will be voided upon expiration and cannot be used for future transactions.',end:!0},]}]},{title:"Others",link:"#others",openId:["#others"],logo:(0,a.jsx)(i.RH,{}),relatedList:[{title:"How do I configure merchant security controls?",link:"#configure-merchant-security-controls",openId:["#account-security","#security","#configure-merchant-security-controls"],end:!0},{title:"How do I secure my CCPayment account?",link:"#up-account-security",openId:["#account-security","#security","#up-account-security"],end:!0},{title:"What is Ownership Verification?",link:"#ownership-verification",openId:["#account-security","#web-verification","#ownership-verification",],end:!0},{title:"How Can I Obtain the Minimum Withdrawal and Deposit Amounts for Tokens?",link:"#tokens-minimum-withdrawal-deposit",openId:["#others","#other","#tokens-minimum-withdrawal-deposit"],end:!0},{title:"How to Refund a Customer?",link:"#deposit-payment-refund-customer",openId:["#deposit","#crypto-deposit","#deposit-payment-refund-customer"],end:!0},{title:"Why Am I Not Receiving Webhook Notifications?",link:"#deposit-payment-webhook",openId:["#webhook","#webhook-notifications","deposit-payment-webhook"],end:!0},{title:"Convert Crypto to USD",link:"#convert-crypto-to-usd",openId:["#features","#usd-settlement","#convert-crypto-to-usd"],end:!0}],subs:[{title:"TestNet",link:"#test-net",openId:["#others","#test-net"],subs:[{title:"Don't Have a Website Yet?",link:"#website-have",openId:["#others","#test-net","#website-have"],time:"03 Aug. 2024 00:00",url:"/support-center/faqs-detail#website-have",content:"\n In addition to websites, CCPayment also provides payment gateway services for mobile app applications, various social media bots, plugins, and other products.\n If you don't have a website, please contact our customer service and provide a brief description of how you plan to use CCPayment. Our customer service team will assist you with the necessary verification process.\n ",end:!0},{title:"What is TestNet?",link:"#use-test-network",openId:["#others","#test-net","#use-test-network"],time:"03 Aug. 2024 00:00",url:"/support-center/faqs-detail#use-test-network",content:"\n ETH Testnet is an individual environment used for the development and test based on ETH. You can get the free testnet Sepolia ETH used to transfer. It's dev-friendly, the developer can make transactions anywhere without any fees.\n Why TestNet?\n Free to get the testnet Sepolia ETH used for development and test.\n Testnet is independent from the mainnet, the test assets are only used for test purposes. It's not actual assets.\n Reduce the potential risk of mainnet assets loss.\n Avoid the impact of the Mainnet function.\n How to integrate CCPayment ETH-Testnet: Sepolia Testnet?\n 1. Register CCPayment account and enable Sepolia Testnet on the Merchant Settings page.\n 2. Get the Free Test-Sepolia ETH on the:\n https://cloud.google.com/application/web3/faucet/ethereum/sepoli
1a\n https://sepolia-faucet.pk910.de\n https://www.allthatnode.com/faucet/ethereum.dsrv\n https://faucet.quicknode.com/drip\n 3. Sepolia Testnet Explorer: https://sepolia.etherscan.io/<txid>\n 4. Close Sepolia Testnet when test processing is done on the developer page.\n Notes:\n 1. The test Sepolia ETH has not exact value, only for test use.\n 2. Reasonably use testnet, avoid malicious behavior.\n 3. Calling the testnet API doesn't result in any actual transactions. Please contact support if you have any question\n ",end:!0},{title:"How to Integrate CCPayment ETH-Testnet: Sepolia Testnet?",link:"#integrate-eth-testnet",openId:["#others","#test-net","#integrate-eth-testnet"],time:"03 Aug. 2024 00:00",url:"/support-center/faqs-detail#integrate-eth-testnet",content:"\n 1. Register CCPayment account and enable Sepolia Testnet on the Merchant Settings page.\n 2. Get the Free Test-Sepolia ETH on the:\n https://cloud.google.com/application/web3/faucet/ethereum/sepolia\n https://sepolia-faucet.pk910.de\n https://www.allthatnode.com/faucet/ethereum.dsrv\n https://faucet.quicknode.com/drip\n 3. Sepolia Testnet Explorer: https://sepolia.etherscan.io/<txid>\n 4. Close Sepolia Testnet when test processing is done on the developer page.\n Notes:\n 1. The test Sepolia ETH has not exact value, only for test use.\n 2. Reasonably use testnet, avoid malicious behavior.\n 3. Calling the testnet API doesn't result in any actual transactions. Please contact support if you have any question\n ",end:!0}]},{title:"Affiliate Program",link:"#referral",openId:["#others","#referral"],subs:[{title:"How do you develop an Affiliate Program?",link:"#develop-referral-program",openId:["#others","#referral","#develop-referral-program"],time:"03 Aug. 2024 00:00",url:"/support-center/faqs-detail#develop-referral-program",content:"\n 1. Sign up as an affiliate: Click to register your affiliate account.\n 2. Copy affiliate link: copy your exclusive affiliate link on the affiliate page.\n 3. The affiliate materials: Contact our support team to access promotional materials, including referral banners, payment flow demos, and related images and videos.\n 4. Share affiliate links: You can share affiliate links with potential merchants or post CCPayment tutorials, referral advantages, successful cases, etc, on social platforms.\n Check commission\n View the commission details on the dashboard once the invite succeeds.\n Withdraw Commission\n Commissions of $50 or more can be withdrawn at any time without any fees.\n Note:\n Withdrawal to CCPayment merchant account or Cwallet can be credited immediately with one click. After successfully referring merchants through sharing links, you can earn long-term benefits. CCPayment referring plan helps you boom up the customer base and increase income!\n ",end:!0}]},{title:"Other",link:"#other",openId:["#others","#other"],subs:[{title:"How Can I Obtain the Minimum Withdrawal and Deposit Amounts for Tokens?",link:"#tokens-minimum-withdrawal-deposit",openId:["#others","#other","#tokens-minimum-withdrawal-deposit"],time:"03 Aug. 2024 00:00",url:"/support-center/faqs-detail#tokens-minimum-withdrawal-deposit",content:'\n 1. Call the "Get Token List" API to retrieve information about the tokens\n 2. Use the "Get Token Information" API to query the relevant information of a specific token\n 3. In the returned values of the respective APIs, search for the following fields:\n minimumDepositAmount : The minimum deposit amount for the token on its respective blockchain\n minimumWithdrawAmount: The minimum withdrawal amount for the token on its respective blockchain\n maximumWithdrawAmount: The maximum withdrawal amount for the token on its respective blockchain\n You can also refer to the supported token list provided by CCPayment to obtain relevant information.\n ',end:!0},{title:"Idempotency Implementation for Transactions",link:"#idempotency-implementation-transactions",openId:["#others","#other","#idempotency-implementation-transactions"],time:"03 Aug. 2024 00:00",url:"/support-center/faqs-detail#idempotency-implementation-transactions",content:"\n Overview\n To prevent the processing of duplicate transactions due to network issues or retry mechanisms, the system must ensure that each transaction is processed only once. This can be achieved using idempotency, where the TxID (transaction hash ID) or another unique identifier serves as the basis for checking and ensuring that a transaction is not processed more than once.\n How to Implement Idempotency\n Upon receiving a deposit notification from CCPayment, check if the transaction is already recorded in the database based on the TxID. If it exists, skip processing to prevent duplicate credits.\n Exampleï¼\n ",end:!0}]}]},],u=function(e){var t=[];
1return e.forEach(function(e){(null==e?void 0:e.subs)&&t.push.apply(t,(0,o.Z)(u(null==e?void 0:e.subs))),t.push(e)}),t};function h(e,t){return function e(n){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=!0,i=!1,r=void 0;try{for(var s,c=n[Symbol.iterator]();!(a=(s=c.next()).done);a=!0){var d,l=s.value;if(l.link===t&&o)return null===(d=o.subs)||void 0===d?void 0:d.filter(function(e){return e.link!==t});if(l.subs){var u=e(l.subs,l);if(u)return u}}}catch(h){i=!0,r=h}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}return null}(e)||[]}var p=u(l);function m(e){if(e.length>14){var t=e.slice(0,7),n=e.slice(-7);return"".concat(t,"\xb7\xb7\xb7").concat(n)}return e}var f=["Java","PHP","Python","Node","Golang"],y='\npackage com.CCPayment.apis;\n \nimport java.nio.charset.StandardCharsets;\nimport java.security.InvalidKeyException;\nimport java.security.NoSuchAlgorithmException;\nimport javax.crypto.Mac;\nimport javax.crypto.spec.SecretKeySpec;\n\nimport com.fasterxml.jackson.databind.ObjectMapper;\nimport com.fasterxml.jackson.databind.SerializationFeature;\nimport org.apache.http.HttpResponse;\nimport org.apache.http.client.HttpClient;\nimport org.apache.http.client.methods.HttpPost;\nimport org.apache.http.entity.ByteArrayEntity;\nimport org.apache.http.impl.client.HttpClientBuilder;\nimport java.io.BufferedReader;\nimport java.io.IOException;\nimport java.io.InputStreamReader;\nimport java.util.Date;\nimport java.util.HashMap;\nimport java.util.Map;\n\npublic class paymentApi {\npublic static void main(String[] args) throws NoSuchAlgorithmException, InvalidKeyException, IOException {\nString appId = "*** your appId ***";\nString appSecret = "*** your appSecret ***";\n// With request params\nString path = "https://ccpayment.com/ccpayment/v2/addressUnbinding";\n\n// params\nMap<String, Object> map = new HashMap<>();\nmap.put("chain", "POLYGON");\nmap.put("address", "0x3720C7f5b352E9da3A102B3b8c49080acAa4ceee");\n\nObjectMapper mapper = new ObjectMapper();\nmapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);\nString inputString = mapper.writeValueAsString(map);\n\nbyte[] requestBody = inputString.getBytes(StandardCharsets.UTF_8);\n// Sign\nlong timestamp = new Date().getTime() / 1000L;\nString signText = appId + timestamp;\nif (requestBody.length != 0) {\n signText += new String(requestBody, StandardCharsets.UTF_8);\n}\nMac sha256Hmac = Mac.getInstance("HmacSHA256");\nSecretKeySpec secretKey = new SecretKeySpec(appSecret.getBytes(StandardCharsets.UTF_8), "HmacSHA256");\nsha256Hmac.init(secretKey);\nbyte[] signBytes = sha256Hmac.doFinal(signText.getBytes(StandardCharsets.UTF_8));\nString sign = byteArrayToHexString(signBytes);\n\n// Making API call\nHttpClient client = HttpClientBuilder.create().build();\nHttpPost request = new HttpPost(path);\nrequest.setHeader("Appid", appId);\nrequest.setHeader("Sign", sign);\nrequest.setHeader("Timestamp", String.valueOf(timestamp));\nrequest.setEntity(new ByteArrayEntity(requestBody));\nHttpResponse response = client.execute(request);\nBufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));\nStringBuilder responseText = new StringBuilder();\nString line;\nwhile ((line = reader.readLine()) != null) {\n responseText.append(line);\n}\nreader.close();\n\n// result\nSystem.out.println("Resp: " + responseText);\n}\n\nprivate static String byteArrayToHexString(byte[] bytes) {\nStringBuilder hs = new StringBuilder();\nString tempStr;\nfor (int index = 0; bytes != null && index < bytes.length; index++) {\n tempStr = Integer.toHexString(bytes[index] & 0XFF);\n if (tempStr.length() == 1) {\n hs.append(\'0\');\n }\n hs.append(tempStr);\n}\nreturn hs.toString().toLowerCase();\n}\n}\n',w='\n<?php\n$app_id = "*** your app_id ***";\n$app_secret = "*** your app_secret ***";\n$url = "https://ccpayment.com/ccpayment/v2/addressUnbinding";\n$content = ["chain"=> "POLYGON",\n"address"=> "0x3720C7f5b352E9da3A102B3b8c49080acAa4ceee"];\n\n$timestamp = time();\n$body = json_encode($content);\n$sign_text = $app_id . $timestamp;\nif (strlen($body) != 2) {\n $sign_text = $sign_text . $body;\n} else {\n $body = "";\n}\n\n$server_sign = hash_hmac(\'sha256\', $sign_text, $app_secret);\n\n$data = array(\n "headers" => array(\n "Content-Type: application/json;charset=utf-8",\n "Appid: " . $app_id,\n "Sign: " . $server_sign,\n "Timestamp: " . $timestamp\n ),\n "body" => $body\n);\n\n$ch = curl_init();
1\ncurl_setopt($ch, CURLOPT_URL, $url);\ncurl_setopt($ch, CURLOPT_POST, true);\ncurl_setopt($ch, CURLOPT_POSTFIELDS, $data[\'body\']);\ncurl_setopt($ch, CURLOPT_HTTPHEADER, $data[\'headers\']);\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\n\n$response = curl_exec($ch);\ncurl_close($ch);\n\n$result = json_decode($response, true);\nprint_r($result);\n?>\n',g='\n# Python 3.9\nimport json\nimport time\nimport hmac\nimport hashlib\nimport binascii\nimport requests\n\napp_id = "*** your appId ***"\napp_secret = "*** your appSecret ***"\nurl = "https://ccpayment.com/ccpayment/v2/addressUnbinding"\ncontent = {\n "chain": "POLYGON",\n "address": "0x3720C7f5b352E9da3A102B3b8c49080acAa4ceee"\n}\n\ntimestamp = int(time.time())\nbody = json.dumps(content)\nsign_text = f"{app_id}{timestamp}"\nif len(body) != 2:\n sign_text = f"{sign_text}{body}"\nelse:\n body = ""\n\nh = hmac.new(app_secret.encode(\'utf-8\'), sign_text.encode(\'utf-8\'), hashlib.sha256)\nserver_sign = binascii.hexlify(h.digest()).decode(\'utf-8\')\n\nres = requests.post(url=url,\n headers={\n "Content-Type": "application/json;charset=uf8",\n "Appid": app_id,\n "Sign": server_sign,\n "Timestamp": f"{timestamp}"},\n data=body\n )\nprint(res.text)\n',v="\nconst https = require('https');\nconst crypto = require('crypto');\n\nconst appId ='*** your appId ***';\nconst appSecret ='*** your appSecret ***';\n\nconst path = 'https://ccpayment.com/ccpayment/v2/addressUnbinding';\nconst args = JSON.stringify({ 'chain': \"POLYGON\" ,'address':'0x3720C7f5b352E9da3A102B3b8c49080acAa4ceee'});\n\nconst timestamp = Math.floor(Date.now() / 1000);\nlet signText = appId + timestamp;\nif (args) {\nsignText += args;\n}\n\nconst sign = crypto\n.createHmac('sha256', appSecret)\n.update(signText)\n.digest('hex');\n\nconst options = {\nmethod: 'POST',\nheaders: {\n'Content-Type': 'application/json',\n'Appid': appId,\n'Sign': sign,\n'Timestamp': timestamp.toString(),\n},\n};\n\nconst req = https.request(path, options, (res) => {\nlet respData = '';\n\nres.on('data', (chunk) => {\nrespData += chunk;\n});\n\nres.on('end', () => {\nconsole.log('Response:', respData);\n});\n});\n\nreq.write(args);\nreq.end();\n"},71461:function(e,t,n){n.d(t,{E6:function(){return u},F4:function(){return s},TX:function(){return c},W0:function(){return h},X4:function(){return d},Yo:function(){return p},Zx:function(){return r},vU:function(){return l}});var o=n(70865),a=n(96670),i=n(52322);function r(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64",viewBox:"0 0 64 64",fill:"none"},e),{children:[(0,i.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M32 52C43.046 52 52 43.046 52 32C52 20.9542 43.046 12 32 12C20.9544 12 12 20.9542 12 32C12 43.046 20.9544 52 32 52ZM22.4486 22.0857H41.3866V26.6577H34.2036V29.6811C39.8042 29.9168 44.042 31.0189 44.042 32.3431C44.042 33.6673 39.804 34.7695 34.2034 35.0051V44.6481H29.6318V35.0013C24.074 34.7581 19.8798 33.6605 19.8798 32.3431C19.8798 31.0258 24.0741 29.9282 29.6316 29.6848V26.6577H22.4486V22.0857ZM29.6316 29.9417C24.8092 30.1495 21.2016 30.9891 21.2016 31.9929C21.2016 33.1531 26.019 34.0935 31.961 34.0935C37.903 34.0935 42.7202 33.1531 42.7202 31.9929C42.7202 30.9831 39.0692 30.1395 34.2036 29.938V33.3777H29.6316V29.9417Z",fill:"#3C6FF5"}),(0,i.jsx)("path",{d:"M32 60C47.464 60 60 47.464 60 32C60 16.536 47.464 4 32 4C16.536 4 4 16.536 4 32C4 39.3688 6.84654 46.0729 11.5 51.0724M11.5 51.0724L12.5 45M11.5 51.0724L5 50.5",stroke:"#89AFFC",strokeWidth:"4",strokeLinecap:"round",strokeLinejoin:"round"})]}))}function s(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"65",height:"64",viewBox:"0 0 65 64",fill:"none"},e),{children:[(0,i.jsx)("path",{d:"M52.948 24.2623H9.12402C6.91489 24.2623 5.12402 22.4714 5.12402 20.2623V16.5823V9.5V8.52148C5.12402 6.31235 6.91488 4.52148 9.12402 4.52148H56.628C58.8372 4.52148 60.628 6.31235 60.628 8.52148V12.2015V20.2623C60.628 22.4714 58.8374 24.2623 56.6283 24.2623C55.5354 24.2623 54.2812 24.2623 52.948 24.2623Z",fill:"#89AFFC"}),(0,i.jsx)("path",{d:"M47.7465 59.9073H17.4265C14.2457 59.9073 11.6665 57.3281 11.6665 54.1473V18.8801C11.6665 15.6993 14.2457 13.1201 17.4265 13.1201H47.7465C50.9273 13.1201 53.5065 15.6993 53.5065 18.8801V54.1473C53.5065 57.3281 50.9273 59.9073 47.7465 59.9073Z",fill:"#3C6FF5"}),(0,i.jsx)("path",{d:"M36.5236 32.2497C36.1373 31.7719 35.6544 31.3538 35.075 30.9954C34.4955 30.6131 33.6625 30.422 32.576 30.422C31.4894 30.422 30.7047 30.637 30.2218 31.0671C29.7389 31.4732 29.4975 31.963 29.4975 32.5364C29.4975 33.1098 29.6544 33.5638 29.9683 33.8983C30.2822 34.2089 30.8013 34.4358 31.5257 34.5792L35.2198 35.3676C37.248 35.7977 38.8295 36.5145 39.9643 37.5179C41.0991 38.5214 41.6665 39.9907 41.6665 41.926C41.6665 43.694 41.087 45.1395 39.9281 46.2624C38.7933 47.3615 37.1997 48.0782 35.1474 48.4127V50.7422C35.1474 51.3873 34.9542 51.9249 34.5679 52.3549C34.2057 52.785 33.6625 53 32.9381 53C32.2379 53 31.7067 52.785 31.3446 52.3549C30.9824 51.9249 30.8013 51.3873 30.8013 50.7422V48.4844C29.7148 48.341 28.7611 48.0902 27.9401 47.7318C27.1434 47.3734 26.4552 46.9672 25.8758 46.5133C25.3204 46.0593 24.8737 45.5815 24.5357 45.0798C24.2218 44.578 23.9925 44.1002 23.8476 43.6462C23.7993 43.4551 23.751 43.2879 23.7027 43.1445C23.6786 43.0012 23.6665 42.8339 23.6665 42.6428C23.6665 41.9021 23.8838 41.3168 24.3184 40.8867C24.753 40.4328 25.3566 40.2058 26.1293 40.2058C27.0468 40.2058 27.7953 40.6956 28.3748 41.6751C28.8335 42.4397 29.4009 43.0848 30.077 43.6104C30.753 44.1121 31.6947 44.363 32.9019 44.363C34.1333 44.363 34.9904 44.1241 35.4733 43.6462C35.9562 43.1445 36.1977 42.5592 36.1977 41.8902C36.1977 41.2212 35.9683 40.6956 35.5096 40.3133C35.0508 39.9071 34.2902 39.6085 33.2279 39.4173L30.077 38.8081C27.9522 38.4019 26.4069 37.6732 25.4412 36.622C24.4995 35.5707 24.0287 34.2805 24.0287 32.7514C24.0287 31.7958 24.1977 30.9476 24.5357 30.2069C24.8737 29.4663 25.3446 28.8212 25.9482 28.2717C26.5518 27.7222 27.2641 27.2802 28.085 26.9457C28.9059 26.6112 29.8114 26.3842 30.8013 26.2647V24.2578C30.8013 23.5888 31.0065 23.0513 31.417 22.6451C31.8275 22.215 32.3707 22 33.0468 22C33.6746 22 34.1816 22.215 34.5679 22.6451C34.9542 23.0513 35.1474 23.5888 35.1474 24.2578V26.4081C35.9442 26.5514 36.6564 26.7545 37.2842 27.0173C37.912 27.2802 38.4552 27.5788 38.914 27.9133C39.3727 28.2239 39.7591 28.5584 40.0729 28.9168C40.3868 29.2513 40.6283 29.5738 40.7973 29.8844C40.918 30.0755 41.0267 30.3264 41.1232 30.637C41.244 30.9237 41.3043 31.2701 41.3043 31.6763C41.3043 32.2975 41.087 32.8112 40.6524 33.2173C40.2178 33.5996 39.6625 33.7908 38.9864 33.7908C38.4069 33.7908 37.9482 33.6593 37.6102 33.3965C37.2963 33.1337 36.9341 32.7514 36.5236 32.2497Z",fill:"white"})]}))}function c(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"65",height:"64",viewBox:"0 0 65 64",fill:"none"},e),{children:[(0,i.jsx)("path",{d:"M4.96875 7.82906C4.96875 5.71433 6.68308 4 8.79781 4H46.1311C48.2459 4 49.9602 5.71433 49.9602 7.82906V58.061C49.9602 58.8543 49.0506 59.3033 48.4209 58.8209L44.9184 56.1382C44.5749 55.8751 44.0977 55.8751 43.7542 56.1382L39.2944 59.5541C38.951 59.8172 38.4737 59.8172 38.1303 59.5541L33.6705 56.1382C33.327 55.8751 32.8498 55.8751 32.5063 56.1382L28.0466 59.5541C27.7031 59.8172 27.2259 59.8172 26.8824 59.5541L22.4226 56.1382C22.0792 55.8751 21.6019 55.8751 21.2585 56.1382L16.7987 59.5541C16.4552 59.8172 15.978 59.8172 15.6345 59.5541L11.1748 56.1382C10.8313 55.8751 10.3541 55.8751 10.0106 56.1382L6.50811 58.8209C5.87832 59.3033 4.96875 58.8543 4.96875 58.061V7.82906Z",fill:"#89AFFC"}),(0,i.jsx)("rect",{x:"11.6694",y:"12.1367",width:"30.6325",height:"5.74359",rx:"2.8718",fill:"white"}),(0,i.jsx)("rect",{x:"11.6694",y:"23.624",width:"30.6325",height:"5.74359",rx:"2.8718",fill:"white"}),(0,i.jsx)("rect",{x:"11.6694",y:"35.1113",width:"30.6325",height:"5.74359",rx:"2.8718",fill:"white"}),(0,i.jsx)("circle",{cx:"42.9395",cy:"43.7266",r:"16.2735",fill:"#3C6FF5"}),(0,i.jsx)("path",{d:"M36.5063 44.7241L41.1386 49.4032L50.1307 40.3203",stroke:"white",strokeWidth:"4.54144",strokeLinecap:"round",strokeLinejoin:"round"})]}))}function d(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},e),{children:[(0,i.jsx)("path",{d:"M1 23L2.55426 17.351C1.59402 15.6939 1.08968 13.8141 1.09208 11.901C1.09438 5.88996 6.00853 1 12.046 1C14.9764 1.00138 17.7262 2.13667 19.7943 4.19688C20.8144 5.20759 21.6229 6.4097 22.1732 7.73361C22.7234 9.05752 23.0044 10.4769 22.9999 11.9097C22.9972 17.9203 18.083 22.8112 12.046 22.8112H12.0414C10.2082 22.8103 8.40667 22.3528 6.80683 21.4843L1 23Z",fill:"#1f2025"}),(0,i.jsx)("path",{className:"app",d:"M9.05039 7.46377C8.81101 6.94738 8.56765 7.01739 8.38638 7.00892C8.21404 7.00134 8.01737 7 7.8202 7C7.62303 7 7.30369 7.066 7.03302 7.33133C6.76235 7.59666 6 8.23792 6 9.54229C6 10.8471 7.05785 12.1073 7.20536 12.2839C7.35286 12.4609 9.28729 15.1379 12.2493 16.2858C12.9535 16.5587 13.5033 16.7219 13.9324 16.8441C14.6396 17.0456 15.2833 17.0175 15.7918 16.9493C16.359 16.873 17.5385 16.308 17.7849 15.6891C18.0307 15.0697 18.0307 14.539 17.9572 14.4284C17.8832
114.3183 17.6865 14.2518 17.391 14.1189C17.096 13.9865 15.6443 13.3452 15.3737 13.2569C15.103 13.1682 14.9063 13.1241 14.7092 13.3894C14.5125 13.6547 13.9468 14.2518 13.7745 14.4284C13.6021 14.6055 13.4298 14.6278 13.1348 14.4953C12.8393 14.3624 11.8882 14.0824 10.7608 13.1798C9.88277 12.477 9.29027 11.6088 9.11794 11.3434C8.9456 11.0781 9.09956 10.935 9.24706 10.8025C9.38016 10.6839 9.54257 10.493 9.69007 10.3387C9.83807 10.1835 9.88724 10.073 9.98557 9.89636C10.0839 9.71933 10.0347 9.56458 9.96074 9.4317C9.88724 9.29925 9.29673 7.99489 9.05039 7.46422V7.46377Z",fill:"white"})]}))}function l(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({className:"copy",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),{children:[(0,i.jsx)("rect",{width:"24",height:"24",rx:"8",fill:"#1f2025"}),(0,i.jsxs)("g",{clipPath:"url(#clip0_16855_11215)",children:[(0,i.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.4813 6.83168C14.0452 5.26779 16.4738 5.1608 17.9057 6.59272C19.3376 8.02465 19.2306 10.4532 17.6668 12.0171L16.2004 13.4835C15.9323 13.7516 15.5158 13.77 15.2703 13.5245C15.0248 13.2789 15.0432 12.8625 15.3113 12.5944L16.7777 11.128C17.8053 10.1004 17.8756 8.50465 16.9347 7.56377C15.9938 6.62288 14.398 6.69318 13.3704 7.72078L11.9627 9.12848C10.9351 10.1561 10.8648 11.7519 11.8057 12.6927C12.0512 12.9383 12.0329 13.3547 11.7647 13.6228C11.4966 13.891 11.0802 13.9093 10.8346 13.6638C9.40272 12.2319 9.50971 9.80328 11.0736 8.23938L12.4813 6.83168Z",fill:"white"}),(0,i.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.0197 17.6673C10.4558 19.2312 8.02719 19.3382 6.59526 17.9063C5.16334 16.4744 5.27033 14.0458 6.83422 12.4819L8.30058 11.0155C8.56872 10.7474 8.98513 10.729 9.23065 10.9746C9.47616 11.2201 9.45782 11.6365 9.18967 11.9046L7.72332 13.371C6.69572 14.3986 6.62542 15.9944 7.56631 16.9353C8.50719 17.8761 10.103 17.8058 11.1306 16.7782L12.5383 15.3705C13.5659 14.3429 13.6362 12.7472 12.6953 11.8063C12.4498 11.5608 12.4681 11.1443 12.7363 10.8762C13.0044 10.6081 13.4208 10.5897 13.6663 10.8352C15.0983 12.2672 14.9913 14.6957 13.4274 16.2596L12.0197 17.6673Z",fill:"white"})]}),(0,i.jsx)("defs",{children:(0,i.jsx)("clipPath",{id:"clip0_16855_11215",children:(0,i.jsx)("rect",{width:"16",height:"16",fill:"white",transform:"translate(4 4)"})})})]}))}function u(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64",viewBox:"0 0 64 64",fill:"none"},e),{children:[(0,i.jsx)("path",{d:"M47.2292 51.5784C49.0249 51.5762 50.7463 50.8591 52.0157 49.5844C53.2851 48.3097 53.9988 46.5815 54 44.7793C53.9969 42.9784 53.2824 41.2522 52.0132 39.9792C50.7439 38.7062 49.0235 37.9902 47.2292 37.9884C44.3846 37.9884 41.9509 39.7637 40.9524 42.2615H26.8781V44.7793C26.8781 50.0017 22.6487 54.2466 17.4488 54.2466C12.2502 54.2466 8.01724 50.0017 8.01724 44.7793C8.01724 39.5604 12.249 35.319 17.4488 35.319V30.2822C9.48284 30.2822 3 36.7876 3 44.7805C3 52.7768 9.48284 59.2822 17.4488 59.2822C24.5591 59.2822 30.4871 54.0986 31.6765 47.2983H40.9524C41.9509 49.8008 44.3846 51.5784 47.2292 51.5784Z",fill:"#3C6FF5"}),(0,i.jsx)("path",{d:"M22.6793 30.0553L17.9137 38.2855C15.2064 37.9616 12.3313 39.2251 10.9326 41.6302C10.475 42.4157 10.178 43.2838 10.059 44.1843C9.94004 45.0849 10.0013 46 10.2393 46.8768C10.4732 47.7543 10.8793 48.577 11.4342 49.2972C11.989 50.0174 12.6816 50.6208 13.472 51.0726C14.2609 51.5268 15.1319 51.8218 16.0352 51.9406C16.9385 52.0594 17.8564 51.9997 18.7366 51.7649C19.6168 51.5301 20.4419 51.1249 21.1649 50.5723C21.8879 50.0197 22.4946 49.3306 22.9504 48.5443C24.4089 46.0293 24.0851 42.9738 22.3842 40.8162L29.6003 28.3758L27.3681 27.0919C26.2666 26.462 25.3014 25.6207 24.5281 24.6168C23.7548 23.6128 23.1888 22.4661 22.8628 21.2429C22.5316 20.0214 22.4466 18.7465 22.6127 17.492C22.7789 16.2376 23.1929 15.0284 23.8308 13.9343C26.4937 9.33327 32.4191 7.76133 37.0336 10.4079C41.6444 13.0641 43.2314 18.9657 40.5673 23.5643L45.0174 26.1261C49.1017 19.0828 46.6715 10.0409 39.6029 5.97303C32.5283 1.90752 23.4589 4.32699 19.3795 11.3726C18.402 13.0487 17.7679 14.9014 17.514 16.8235C17.2601 18.7455 17.3915 20.6987 17.9005 22.5698C18.6782 25.4975 20.3478 28.1127 22.6793 30.0553Z",fill:"#89AFFC"}),(0,i.jsx)("path",{d:"M50.3196 30.8525C47.4641 30.0783 44.4401 30.2105 41.6624 31.231L37.0456 23.1943C38.6953 21.0802 39.0115 18.0872 37.5951 15.6169C35.8053 12.5021 31.4977 11.3278 28.3767 13.1361C27.6073 13.579 26.9331 14.171 26.3934 14.8777C25.8536 15.5844 25.4589 16.3917 25.2323 17.2529C25.
10009 18.112 24.9416 19.0086 25.0578 19.8909C25.174 20.7732 25.4633 21.6235 25.909 22.3927C26.5019 23.423 27.354 24.2788 28.3799 24.8742C29.4058 25.4696 30.5695 25.7838 31.7544 25.7853C32.0706 25.7853 32.3774 25.7068 32.6901 25.6611L39.7244 37.906L41.8922 36.6498C42.9599 36.025 44.1406 35.6197 45.3656 35.4575C46.5907 35.2954 47.8357 35.3796 49.028 35.7052C50.2214 36.0228 51.3402 36.575 52.3196 37.3299C53.2989 38.0849 54.1194 39.0275 54.7334 40.1033C55.3539 41.1761 55.7565 42.3617 55.9182 43.5917C56.0798 44.8216 55.9971 46.0716 55.675 47.2693C55.3575 48.4678 54.8069 49.5914 54.055 50.5751C53.303 51.5589 52.3646 52.3833 51.2938 53.001C46.8042 55.5978 41.0463 54.051 38.4515 49.5416L34.1229 52.0564C36.7877 56.6924 41.6414 59.2822 46.6222 59.2822C49.0607 59.2822 51.5342 58.6611 53.793 57.3498C55.4343 56.4048 56.8724 55.1419 58.024 53.6344C59.1756 52.1268 60.0178 50.4047 60.5018 48.5678C60.9967 46.7337 61.1246 44.8192 60.8778 42.9352C60.6311 41.0512 60.0147 39.2351 59.0643 37.592C58.1233 35.9436 56.8658 34.4993 55.3649 33.3426C53.8641 32.186 52.1495 31.34 50.3208 30.8537L50.3196 30.8525Z",fill:"#3C6FF5"})]}))}function h(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"65",height:"64",viewBox:"0 0 65 64",fill:"none"},e),{children:[(0,i.jsx)("path",{d:"M6.66663 8C6.66663 4.68629 9.35292 2 12.6666 2H44.6666C47.9803 2 50.6666 4.68629 50.6666 8V56C50.6666 59.3137 47.9803 62 44.6666 62H12.6666C9.35292 62 6.66663 59.3137 6.66663 56V8Z",fill:"#89AFFC"}),(0,i.jsx)("rect",{x:"13.6666",y:"12",width:"30",height:"6",rx:"3",fill:"white"}),(0,i.jsx)("rect",{x:"13.6666",y:"24",width:"30",height:"6",rx:"3",fill:"white"}),(0,i.jsx)("rect",{x:"13.6666",y:"36",width:"15",height:"6",rx:"3",fill:"white"}),(0,i.jsx)("path",{d:"M62.8525 43.9428L60.7007 43.6383C60.2229 43.5698 59.8354 43.2425 59.6473 42.7972C59.2222 41.781 58.6805 40.8295 58.0334 39.9618C57.7438 39.5736 57.6573 39.0674 57.8378 38.6183L58.6542 36.5821C58.9062 35.9579 58.6617 35.2386 58.0824 34.9036L53.4288 32.1824C52.8495 31.8436 52.1159 31.9883 51.7058 32.5211L50.3741 34.2452C50.0769 34.6334 49.5954 34.8123 49.1138 34.7514C48.5872 34.6829 48.0492 34.6448 47.5037 34.6448C46.9582 34.6448 46.4203 34.6829 45.8936 34.7514C45.4121 34.8123 44.9305 34.6334 44.6333 34.2452L43.3016 32.5211C42.8916 31.9883 42.158 31.8436 41.5786 32.1824L36.9251 34.8998C36.3457 35.2386 36.105 35.9541 36.3533 36.5783L37.1696 38.6145C37.3502 39.0674 37.2637 39.5698 36.974 39.958C36.3269 40.8257 35.7815 41.7772 35.3601 42.7934C35.172 43.2425 34.7845 43.5698 34.3068 43.6345L32.1549 43.939C31.4928 44.0342 31 44.6051 31 45.2825V50.7213C31 51.3949 31.4928 51.9658 32.1512 52.061L34.303 52.3655C34.7808 52.434 35.1683 52.7613 35.3564 53.2066C35.7815 54.2228 36.3232 55.1743 36.9702 56.042C37.2599 56.4302 37.3464 56.9364 37.1659 57.3855L36.3495 59.4217C36.0975 60.0459 36.342 60.7653 36.9213 61.1002L41.5749 63.8176C42.1542 64.1564 42.8878 64.0118 43.2978 63.4789L44.6296 61.7548C44.9268 61.3666 45.4083 61.1877 45.8898 61.2486C46.4165 61.3171 46.9545 61.3552 47.5 61.3552C48.0454 61.3552 48.5834 61.3171 49.1101 61.2486C49.5916 61.1877 50.0731 61.3666 50.3703 61.7548L51.7021 63.4789C52.1121 64.0118 52.8457 64.1564 53.425 63.8176L58.0786 61.1002C58.6579 60.7614 58.8987 60.0459 58.6504 59.4217L57.8341 57.3855C57.6535 56.9364 57.74 56.4302 58.0297 56.042C58.6767 55.1743 59.2222 54.2228 59.6436 53.2066C59.8317 52.7575 60.2191 52.4302 60.6969 52.3655L62.8488 52.061C63.5109 51.9658 63.9999 51.3949 63.9999 50.7213V45.2825C64.0074 44.6051 63.5146 44.0342 62.8525 43.9428ZM47.5037 53.2865C44.6183 53.2865 42.2784 50.9192 42.2784 48C42.2784 45.0808 44.6183 42.7135 47.5037 42.7135C50.3891 42.7135 52.7291 45.0808 52.7291 48C52.7291 50.9192 50.3891 53.2865 47.5037 53.2865Z",fill:"#3C6FF5"})]}))}function p(e){return(0,i.jsxs)("svg",(0,a.Z)((0,o.Z)({xmlns:"http://www.w3.org/2000/svg",width:"65",height:"64",viewBox:"0 0 65 64",fill:"none"},e),{children:[(0,i.jsx)("path",{d:"M42.9963 42.5289C35.6134 39.7928 33.3282 40.6651 33.3282 35.5569C33.3282 32.4559 35.6134 33.5505 36.4923 27.8954C36.8439 25.5241 38.9533 27.8954 39.3049 22.606C39.3049 20.5996 38.2502 20.0519 38.2502 20.0519C38.2502 20.0519 38.7775 16.9509 38.9533 14.5796C39.3049 11.6615 37.3713 4 27 4C16.8045 4 14.8709 11.6615 15.0467 14.5796C15.2225 16.9509 15.7498 20.0519 15.7498 20.0519C15.7498 20.0519 14.8709 20.5996 14.8709 22.788C15.2225 28.0783 17.1561 25.707 17.6834 28.0782C18.7382 33.5505 20.8476 32.6387 20.8476 35.7397C20.8476 40.8471 18.5624 39.9748 11.1794 42.7118C3.62073 45.4479 2 48.184 2 50.1904V55.59C2 56.7596 2.46671 57.8813 3.29745 58.7083C4.12819 59.5354 5.25491 60 6.42976 60
1H47.5702C48.7451 60 49.8718 59.5354 50.7026 58.7083C51.5333 57.8813 52 56.7596 52 55.59V50.1904C52 48.184 50.3793 45.4479 42.9963 42.5289Z",fill:"#89AFFC"}),(0,i.jsx)("path",{d:"M34 47.76C34 55.44 40.08 61.52 47.76 61.52C55.44 61.52 61.52 55.44 61.52 47.76C61.52 40.08 55.44 34 47.76 34C40.08 34 34 40.08 34 47.76Z",fill:"#3C6FF5"}),(0,i.jsx)("path",{d:"M42.6694 45.8988H46.566V42.0023C46.566 40.623 46.8073 39.5195 48.1866 39.5195C49.566 39.5195 49.8073 40.623 49.8073 42.0023V45.8988H53.7039C55.0832 45.8988 56.1866 46.1402 56.1866 47.5195C56.1866 48.8988 55.0832 49.1402 53.7039 49.1402H49.8073V53.0368C49.8073 54.4161 49.566 55.5195 48.1866 55.5195C46.8073 55.5195 46.566 54.4161 46.566 53.0368V49.1402H42.6694C41.2901 49.1402 40.1866 48.8988 40.1866 47.5195C40.1866 46.1402 41.2901 45.8988 42.6694 45.8988Z",fill:"#D8E7FE"})]}))}},2860:function(e,t,n){n.d(t,{$5:function(){return l},Lx:function(){return u},kr:function(){return d}});var o=n(92228),a=n(52322);n(2784);var i=n(5632),r=n(35868),s=n(58694);function c(){var e=(0,o.Z)(["\n background-color: #fff;\n position: absolute;\n z-index: 999;\n top: 56px;\n left: 0;\n width: 100%;\n padding: 16px 8px 16px 16px;\n border-radius: 8px;\n box-shadow: 0px 8px 16px 0px rgba(113, 117, 126, 0.2);\n max-height: 480px;\n .main {\n max-height: 448px;\n padding-right: 8px;\n overflow-y: auto;\n /* æ´ä¸ªæ»å¨æ¡ */\n ::-webkit-scrollbar {\n width: 6px; /* åç´æ»å¨æ¡å®½åº¦ */\n height: 126px; /* æ°´å¹³æ»å¨æ¡é«åº¦ */\n }\n\n /* æ»å¨æ¡è½¨éï¼èæ¯ï¼ */\n ::-webkit-scrollbar-track {\n background: unset;\n }\n\n /* æ»å¨æ¡æ»å */\n ::-webkit-scrollbar-thumb {\n background-color: #CACFD8;\n border-radius: 2px;\n height: 126px;\n }\n .head {\n font-size: 12px;\n line-height: 18px;\n color: #71757E;\n }\n .item-box {\n background: #F8F9FB;\n border-radius: 8px;\n padding: 8px;\n margin-bottom: 8px;\n cursor: pointer;\n &:hover {\n background: #E8ECF2;\n }\n .title {\n font-size: 14px;\n line-height: 24px;\n color: #1f2025;\n ",";\n ",";\n .t {\n max-width: 100%;\n ",";\n }\n .time {\n color: #71757E;\n font-size: 12px;\n ",";\n }\n }\n .content {\n font-size: 12px;\n line-height: 24px;\n color: #71757E;\n ",";\n }\n }\n }\n"]);return c=function(){return e},e}var d=[{url:"/support-center/introductions/usd-settlement",title:"USD Settlement",time:"02 Mar. 2024 00:00",content:'\n Our "USD Settlement" feature on CCPayment allows you to easily convert your USDT (Tether) into fiat currencies. This guide will walk you through the steps to sell USDT using CCPayment.\n Step 1: Log in to CCPayment\n Log in to your CCPayment Dashboard.\n Step 2: Go to "USD Settlement" \n In the dashboard, you will see the option to "USD Settlement". Set your amount (Limit: 2,000 â 1,000,000 USDT per transaction). The platform shows your USD output, fee, and rate in real time before you commit. We currently only support USDTâtoâUSD exchanges (minimum 2,000 USDT), with more fiat options coming soon. Stay tuned.\n Step 3: Add a Recipient\n Click "+ Choose Recipient" and fill in your bank details. Please provide accurate banking details and make sure all matches exactly with your bank account to avoid issues with the transfer. This is especially important for international transfers to ensure the funds are routed correctly.\n After you\'ve filled in all the information, double-check the details to make sure everything is accurate, then click the Save button to proceed. Saved recipients carry over to future transactions, so this is a one-time setup per account.\n Step 4: Complete Security Verification \n Confirm with your email code and Google Authenticator. For your fund security, please do not share your verification codes with anyone. \n Step 5: Submit the Settlement Order\n Once submitted, your order moves through three stages: Order Submitted â Payment Processing (3â7 business days) â Transaction Completed.\n Step 6: Track the Order \n Click Sell Record to view and track y
1our order\'s progress. The status will update as the order is processed.\n Step 7: Confirm Receipt\n Once the status changes to "Pending Arrival", you can click to view the deposit details and check whether the corresponding bank has credited the funds.\n Check whether the USD funds have been credited to the recipient\'s bank account. Once you have confirmed that the funds have arrived, click Confirm Receipt.\n Important: Do not click Confirm Receipt until you have verified that the funds have been received.\n After you confirm receipt, the order status will update to Success, indicating that the settlement is complete.\n '},{url:"/support-center/introductions/auto-withdraw",title:"Auto Withdraw",time:"02 Mar. 2024 00:00",content:'\n CCPayment\'s Auto Withdraw feature automatically transfers your cryptocurrency assets to a designated wallet address based on your configured settings, reducing the need for manual withdrawals. Follow this guide to set up and use Auto Withdraw effectively.\n Step 1: Log in to CCPayment\n Log in to your CCPayment Dashboard.\n Step 2: Access Auto Withdraw Settings\n Once logged in, go to Merchant Settings â Settings. Locate Auto Withdraw and click Set up to open the Auto Withdraw Configuration panel.\n Step 3: Configure Auto Withdraw\n After opening the Auto Withdraw Configuration panel, configure the following settings:\n 1. Frequency of Auto Withdrawal: Choose how often you want the withdrawals to occur (instantly, daily, or weekly). This provides flexibility in managing your funds flow according to your business needs.\n 2. Auto Withdraw Trigger Amount: Set a minimum balance or threshold amount that will trigger auto withdrawal. For example, you can choose to withdraw only when your balance reaches a specific amount.\n 3. Withdrawal Ratio: Enter a percentage in the "Withdrawal Ratio" field. This percentage will determine how much of the token balance will be withdrawn. For example, if you wish to withdraw the entire balance, you can enter 100%.\n 4. Destination Wallet/Address: Add the receiving address where you want your funds to be sent to (You can add or update this information as needed), and then click the Save button to complete the settings.\n Step 4: View Auto Withdraw Records\n Once configured, Auto Withdraw will be initiated automatically when your selected time and trigger conditions are met.\n To view your Auto Withdraw records, go to Transaction â Deposit/Withdrawal, click Filters, and select Auto Withdrawal under Type. You can then check the details and status of each transaction.\n '},{url:"/support-center/introductions/withdrawal-approval",title:"Withdrawal Approval",time:"07 Sep. 2026 00:00",content:"\n CCPayment's Withdrawal Approval feature allows you to review withdrawal requests that meet your configured approval rules before they are processed. You can set approval thresholds, assign approvers, manage withdrawal destinations, and configure separate approval rules for standard and bulk withdrawals, giving you greater control over your funds.\n Follow this guide to configure and use Withdrawal Approval effectively.\n Step 1: Access Withdrawal Approval Settings\n Log in to your CCPayment merchant account. Go to Withdrawal Approval â Withdrawal Settings to configure your withdrawal management, approval, and address rules.\n Step 2: Manage Withdrawal Types\n In the Withdrawal Management section, you can select the withdrawal types your account is allowed to process:\n API withdrawal\n Merchant dashboard withdrawal\n Auto-withdrawal\n API Bulk Withdrawal\n By default, all withdrawal types are enabled. If you deselect a withdrawal type, all withdrawal requests of that type will be rejected.\n Review your selections carefully, then click Confirm.\n Step 3: Configure the Whitelist and Blacklist\n In the Whitelist/Blacklist section, click Add Address to add a withdrawal address or account to the whitelist or blacklist.\n Whitelist: Withdrawals to a whitelisted address or account do not require withdrawal approval.\n Blacklist: Withdrawal requests to a blacklisted address or account cannot be submitted.\n Select the address type and network, then enter the wallet address. Complete the required security verification and click Confirm.\n Please verify the network, address, and Memo/Tag (if required) before saving.\n Step 4: Configure Withdrawal Approval\n Configure Single Withdrawal Approval Settings\n Turn on Withdrawal Approval Settings to enable approval for single withdrawal requests.\n In the Approval Settings panel, configure the following:\n Withdrawal Types: Select API withdrawal, Withdrawal, or both.\n Approval Threshold: Enter the USD-denominated threshold. Withdrawal requests above this amount will require approval.\n Approver: Select one or more account members responsible for reviewing the requests.\n Approval Requirement: If multiple approvers are selected, decide whether approval from all assigned approvers is required.\n Select Withdrawal will proceed once all approvers have approved to require approval from every assigned approver.\n Leave it unselected if approval from any one of the assigned approvers is sufficient.\n The approval requirement can be configured separately for each rule.\n Add More Approval Rules\n To add another approval rule, click Add Approval. In the Add Approval panel, set the approval threshold, select the approvers, and configure the approval requirement.\n In the Add Approval panel, set the Approval Threshold and select one or more Approvers. Then:\n Click Save to save the current rule.\n Click Save & Add to save the current rule and continue adding another one.\n You can configure up to three approval rules.\n When multiple approval rules are added, select one of the following Approval Types:\n Amount Range-Based\n Select Amount Range-Based to assign different approvers according to the withdrawal amount range. Only the approvers assigned to the applicable range need to review the request.\n For example, if thresholds of $10,000, $15,000, and $20,000 are assigned to Approvers A, B, and C:\n A $12,000 withdrawal will be reviewed by Approver A.\n An $18,000 withdrawal will be reviewed by Approver B.\n A $25,000 withdrawal will be reviewed by Approver C.\n Tiered\n Select Tiered to create a sequential approval process. A withdrawal request must complete each applicable approval stage in order before it can proceed.\n You can configure up to three approval tiers.\n For example, if the tiers are configured as follows:\n Tier 1 â $10,000: Approver A\n Tier 2 â $20,000: Approver B\n Tier 3 â $30,000: Approver C\n Then:\n A $12,000 withdrawal requires approval from Approver A.\n A $25,000 withdrawal requires approval from Approvers A and B, in sequence.\n A $35,000 withdrawal requires approval from all three tiers, in sequence.\n For each tier, you can separately decide whether approval from any assigned approver or all assigned approvers is required.\n Configure Bulk Withdrawal Approval Settings\n Turn on Bulk Withdrawal Approval Settings to enable approval for API bulk withdrawal requests.\n In the API Bulk Withdrawal Approval Configuration panel, set the approval threshold, assign one or more approvers, and configure whether approval from any assigned approver or all assigned approvers is required.\n Click Add Approval to add another approval threshold and create an additional approval stage. You can configure up to three approval stages.\n Approval process\n Bulk withdrawal approval uses a Tiered approval process.\n If a request reaches multiple configured thresholds, it must complete each applicable approval stage in order.\n After the current stage is approved, the request advances to the next stage.\n Once all required stages are approved, the request can proceed.\n Review the configuration, then click Save.\n Step 5: Configure the Verification Method and Request Validity\n Complete the following settings for both single withdrawal and API bulk withdrawal approval:\n Verification Method: Select the identity verification method required when processing approval requests.\n Validity Period: Set how long an approval request remains valid. The validity period is measured in hours.\n Expired Requests: Choose whether requests that are not processed within the validity period should be automatically approved or rejected.\n Review the automatic action for expired requests carefully, then click Save.\n Note: If unapproved withdrawal requests exist, the approval thresholds and approvers cannot be modified. Process the pending requests before changing these settings.\n Step 6: Approve or Reject a Withdrawal Request\n Withdrawal requests that require approval appear under Withdrawal Approval â Pending Approvals.\n The page contains two tabs:\n Single Withdrawal\n API Bulk Withdrawal\n Search by Record ID or address, or select My Pending Approvals to view requests awaiting your action.\n Locate the request and click Approval to open the approval panel.\n Note: Under tier-approval withdrawal, you can only approve or reject a request after it has been approved by a Tier 1 approver. Otherwise, only the details will be displayed.\n Review the withdrawal details and approval progress. Then:\n Click Approve to approve the request.\n Click Reject to reject the request.\n Step 7: View Approval Records\n Go to Withdrawal Approval â Approval Record, or click Record on the Pending Approvals page, to view processed approval requests.\n The record page contains separate tabs for:\n Single Withdrawal\n API Bulk Withdrawal\n You can filter the records by network and token or search by Record ID. Each record displays information such as the amount, network, transaction type, destination address or account, status, and approval details.\n Click Detail to view the complete approval record.\n To check the subsequent processing status of an approved withdrawal, view the corresponding withdrawal transaction under Transaction.\n "},{url:"/support-center/introductions/resend-webhook",title:"Resend Webhook",time:"02 Mar. 2024 00:00",content:"\n The \"Resend Webhook\" feature on CCPayment allows you to easily resend any previously failed or missing webhook notifications. Follow these steps to use the feature:\n Step 1: Access the Webhooks Section\n Log into CCPayment and navigate to the Webhook section on the dashboard.\n Resend Webhook by Calling API\n You can also resend webhooks by calling the API. Simply define the time range for the transactions you wish to resend, then initiate the process.\n https://ccpayment.com/api/doc/?en#resend-webhook-by-calling-api\n Step 2: Review Webhook List\n In this section, you will see a list of webhook events. Each event displays its status, date, and response, making it easy to identify any failed webhooks.\n Step 3: Resend Webhook\n Locate the webhook by its record ID or URL, then click the 'Resend' button to trigger a retry to the same endpoint.\n Step 4: Batch Resend\n You can also choose to resend webhooks in batches within a specific time period. Select the Batch Resend option, then specify the desired timeframe and status to resend multiple webhooks at once.\n Step 5: Confirm Success\n After resending, check the status to ensure it changes to 'Success'. You can also verify this by checking the receiving endpoint to confirm the webhook was processed correctly.\n Step 6: Troubleshooting (Optional)\n If the webhook fail
1s again, ensure that the receiving URL is active and able to accept incoming requests. Review the logs or consult with your development team if further troubleshooting is needed.\n "},{url:"/support-center/introductions/risky-address",time:"02 Mar. 2024 00:00",title:"Risky Address Management",content:'\n The Risky Address Management feature on CCPayment helps you quickly handle flagged addresses, ensuring seamless transactions and protecting your funds. Follow these steps to manage risky addresses effectively:\n Step 1: Access the Risky Address List\n Navigate to to view all addresses flagged as risky.\n Step 2: Replace Risky Addresses\n If an address receives a risky payment and its risk score increases, further deposits may cause it to be flagged and frozen, resulting in funds loss. To mitigate this risk, your developer should replace flagged or risky addresses immediately to ensure smooth transactions and protect your funds.\n Step 3: Webhook Notifications for Risky Addresses\n If the risky addresses are disabled, CCPayment does not send webhook notifications for deposits made to risky addresses.\n Step 4: Webhook Notifications for Address Replacement\n CCPayment automatically sends a notification to your deposit webhook URL when a receiving address is flagged as risky, enabling you to replace it promptly. You can also click the "Test Notification" button to check if your deposit webhook URL is properly connected and able to receive notifications.\n Step 5: Replace a Risky Address\n After receiving the webhook notification about a risky address, you can call the Address Unbinding API to unbind it. This helps prevent potential asset freezing by the network. Once unbound, you can obtain a new deposit address for the same userID or referenceID by calling the Get Permanent Deposit Address/Get a User Deposit Address API.\n Step 6: Export Risky Address List\n Alternatively, you can click the Export button to manually select the relevant Network, Address, and Time Range to export the list of risky addresses. Then, ask your developer to replace all flagged addresses with new ones.\n '},{url:"/support-center/introductions/invite-member",title:"Invite Member",time:"22 Sep. 2026 00:00",content:'\n The "Invite Member" feature allows you to add team members to your CCPayment account and assign them different roles and permissions. This helps ensure that each team member can access only the features required for their responsibilities. Please note that only the account owner can invite new members. Follow the steps below to invite and manage team members.\n Step 1: Access the Member Page\n Go to Merchant Settings > Member, then click "Invite Member" in the upper-right corner.\n Step 2: Send an Invitation\n 1. In the pop-up window, select the appropriate role for the new member from the dropdown list. The permissions assigned to the selected role will be displayed below. Review them carefully to ensure that the role matches the member\'s responsibilities.\n 2. Enter the email address of the team member you want to invite, then click "Invite". In the Security Verification pop-up window, enter your login password. Click "Get Code" and enter the email verification code sent to your registered email address.\n If Google Authenticator is enabled for your account, you will also need to enter the six-digit Google Authenticator code.\n 3. Click "Confirm" to send the invitation. The invitee will receive an invitation email at the email address provided and can click "Accept Invitation" to join the team.\n Step 3: Confirm the Invitation\n Once the invitee accepts the invitation, they will appear on the Member page and gain access to your CCPayment dashboard.\n Step 4: Member Registration and Access\n 1. If the invitee is new to CCPayment, they must click "Accept Invitation" to be redirected to the registration page. After completing the registration, they can log in and access the account as a team member.\n 2. If the invitee already has a CCPayment account, they can simply click "Accept Invitation" to join the team instantly.\n Step 5: Manage Team Members\n You can manage team members by clicking the three-dot menu (â®) to edit their role or remove them from the account. For better security and oversight, click \'Action Log\' in the top-right corner to review recent team activities.\n '}];function l(e,t){var n=[];function o(e){if(e){var a=!0,i=!1,r=void 0;try{for(var s,c=e[Symbol.iterator]();!(a=(s=c.next()).done);a=!0)!function(){var e=s.value;if(e.content&&"string"==typeof e.content){var a=e.content.toLowerCase(),i=t.toLowerCase();
1if(a.includes(i)){var r=e.content.split(/\r?\n+/).filter(Boolean).find(function(e){return e.toLowerCase().includes(i)});r&&n.push({title:e.title,url:e.url,time:e.time,str:r.trim()})}}e.subs&&o(e.subs)}()}catch(d){i=!0,r=d}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}}}var a=!0,i=!1,r=void 0;try{for(var s,c=e[Symbol.iterator]();!(a=(s=c.next()).done);a=!0){var d=s.value;o(d.subs)}}catch(l){i=!0,r=l}finally{try{a||null==c.return||c.return()}finally{if(i)throw r}}return n}function u(e,t){var n=[],o=!0,a=!1,i=void 0;try{for(var r,s=e[Symbol.iterator]();!(o=(r=s.next()).done);o=!0){var c=r.value,d=c.content.replace(/\n+/g," ").replace(/\s+/g," ").trim().split(RegExp("(?<=[.!?])\\s+")).find(function(e){return e.toLowerCase().includes(t.toLowerCase())});d&&n.push({url:c.url,title:c.title,time:c.time,str:d.trim()})}}catch(l){a=!0,i=l}finally{try{o||null==s.return||s.return()}finally{if(a)throw i}}return n}t.ZP=function(e){var t=e.list,n=e.text,o=(0,i.useRouter)(),r=function(e){return function(e,t){var n=e.toLowerCase(),o=t.toLowerCase(),i=n.indexOf(o);if(-1===i)return e;var r=i>30,s=(r?"...":"")+e.slice(r?i-30:0,i),c=e.slice(i,i+t.length),d=e.slice(i+t.length);return(0,a.jsxs)(a.Fragment,{children:[s,(0,a.jsx)("span",{style:{background:"#D8E7FE",color:"#1f2025"},children:c}),d]})}(e,n)};return(0,a.jsx)(h,{children:(0,a.jsxs)("div",{className:"main",children:[(0,a.jsx)("div",{className:"head",children:"Result"}),t.length>0&&t.map(function(e){return(0,a.jsxs)("div",{className:"item-box",onClick:function(){o.push(e.url)},children:[(0,a.jsx)("div",{className:"title",children:(0,a.jsx)("span",{className:"t",children:r(e.title)})}),(0,a.jsx)("div",{className:"content",children:r(e.str)})]},e.title)}),0===t.length&&n&&(0,a.jsx)(a.Fragment,{children:"No result found"})]})})};var h=s.ZP.div.withConfig({componentId:"sc-d7acef0b-0"})(c(),r.Wu.fonts.medium,r.Wu.flex.justifyBetween,r.Wu.textOne,r.Wu.fonts.regular,r.Wu.textOne)}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.