
Cryptopay
Secure crypto payments for your business with Cryptopay
Supports in this guide: Payments, Payouts
Provider website: cryptopay.me
What you need to do for start processing transactions (brief summary)
- Get your credentials (from Cryptopay)
- Connect in Dashboard
- Send an API request
Prerequisites: get from Cryptopay
Contact your Cryptopay account manager to get your account verified and receive the following credentials.
- API Key -> Corefy field
api_key. - API Secret -> Corefy field
api_secret. - Callback Secret -> Corefy field
callback_secret-> used to verify callback notifications from Cryptopay. - API URL (optional) -> Corefy field
api_url-> leave as default unless your account manager tells you otherwise.
Note
Only the cryptocurrencies and networks actually enabled on your Cryptopay account are exposed as available services - Corefy fetches this list from Cryptopay automatically when the connection is used.
Payments processing (connect Provider account, create payment-invoice)
Connect Provider account in Corefy Dashboard
Step 1 - Open connection form
Open Cryptopay in the provider directory and press Connect at Cryptopay Provider Overview page in the New connection section.
Step 2 - Fill in fields and select settings
- API Key
- API Secret
- Callback Secret
- API URL (optional)
- Test Mode -> (enable if you are using sandbox credentials)
Choose Currency / Features; check with your Corefy account manager which cryptocurrencies are enabled for your account.
Success
You have connected Cryptopay Provider account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice and redirects the customer to a Cryptopay-hosted page to pay with the selected cryptocurrency. You bill in your own fiat currency - the customer pays the equivalent amount in crypto, at Cryptopay's own exchange rate.
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "7f8a9b01-2c3d-4e5f-8a67-8b9c0d1e2f3a",
"service": "bitcoin_eur_hpp",
"currency": "EUR",
"amount": 10
}
}
}
This connector also supports Tether, Cardano, Dai, Dogecoin, Ethereum, Litecoin, XRP, Solana, Tron, and USD Coin - the exact set (and, for multi-network assets like Tether, which networks) depends on what's enabled for your account.
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "8a9b0c12-3d4e-4f6a-8b78-9c0d1e2f3a4b",
"service": "bitcoin_eur_hpp",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"email": "johnsmith@gmail.com"
}
}
}
}
customer is entirely optional - only customer.email is forwarded to Cryptopay (nothing else from customer is used).
Extended request (MAX)
Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Positively influence conversion rate - Include optional fields required by your specific flow
No Constants are configured for this connector.
Options
currency_exponent-> optional, number - decimal precision to round the crypto amount to.amount_rounding-> optional, enum (up,half_up,half_down) - rounding mode to apply.
Important
Both currency_exponent and amount_rounding must be set together for custom rounding to take effect - if either is missing, Corefy falls back to its standard amount formatting.
Refunds
This connector does not support refunds.
Payouts processing (connect Provider account, create payout-invoice)
Connect Provider account in Corefy Dashboard
Uses the same Provider account connection as Payments above - one connection covers both directions, nothing extra to fill in for payouts specifically.
First request to Corefy API (MIN)
What it does: creates a payout-invoice and sends crypto directly to a wallet address. You specify the payout amount in your own fiat currency - Cryptopay converts and sends the equivalent amount in crypto.
Payout - MIN
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "9b0c1d23-4e5f-4a7b-8c89-0d1e2f3a4b5c",
"service": "bitcoin_eur",
"currency": "EUR",
"amount": 10,
"fields": {
"wallet_id": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq"
}
}
}
}
Important
fields.wallet_id (the destination wallet address) is required.
Payout - MAX
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "0c1d2e34-5f6a-4b8c-8d90-1e2f3a4b5c6d",
"service": "bitcoin_eur",
"currency": "EUR",
"amount": 10,
"fields": {
"wallet_id": "bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq",
"network_fee_level": "average"
}
}
}
}
fields.network_fee_level is optional - one of slow, average (default), fast - controls how much network fee Cryptopay pays to confirm the transaction faster.
Extended request (MAX)
Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Positively influence conversion rate - Include optional fields required by your specific flow
Options
currency_exponent-> optional, number - decimal precision to round the crypto amount to.amount_rounding-> optional, enum (up,half_up,half_down) - rounding mode to apply.
Important
Both options must be set together to take effect, same as on the Payments side.
Additional info
- Callback routing is automatic - Corefy generates the callback/return URLs per transaction, nothing to configure in Cryptopay's own back-office.
- Active reconciliation is available - both Payments and Payouts support an active status request, in addition to the asynchronous callback.
- No refunds - this connector does not support refunds through Corefy.
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify API Key/API Secret/Callback Secret for the selected environment
- Payout fails with an invalid wallet error -> double-check
fields.wallet_idmatches the destination network for the selected service - Refund request fails -> refunds aren't supported by this connector
- Currency or service is not supported -> confirm the cryptocurrency/network is enabled on your Cryptopay account and in Corefy
Question
Still looking for help connecting your Cryptopay account? Please contact our support team!