Interkassa
Accept online payments from customers worldwide
Supports in this guide: Payments, Payouts
Provider website: interkassa.com
What you need to do for start processing transactions (brief summary)
- Choose account type
- Get your credentials (from Interkassa)
- Connect in Dashboard
- Send an API request
Choose account type
Interkassa can be connected in different ways (depending on your needs):
- If you do direct card payments (H2H, no redirect) -> choose H2H Merchant account
- If you do redirect payments across Interkassa's wider local-method coverage, or Payouts -> choose Provider account
Both account types can be connected at the same time. If you're not sure which one to use, confirm with your Corefy account manager.
Prerequisites: get from Interkassa
Get the following values from your Interkassa Personal Cabinet (Personal Data -> API settings):
- API user -> Corefy field
api_user - API key -> Corefy field
api_key - Checkout ID -> Corefy field
checkout_id - Secret key -> Corefy field
secret_key - Test secret key -> Corefy field
test_secret_key-> optional, Provider account only
H2H Merchant account additionally requires:
- Payment method -> Corefy field
payment_method-> choose Visa, Mastercard, or Card - selects which card scheme this connection processes
Payments processing (connect H2H Merchant account, create payment-invoice)
Connect H2H Merchant account in Corefy Dashboard
Step 1 - Open connection form
Open Interkassa in the provider directory and press Connect at Interkassa Provider Overview page in the New connection section. Choose H2H Merchant account.
Step 2 - Fill in fields and select settings
- API user
- API key
- Checkout ID
- Secret key
- Payment method -> Visa / Mastercard / Card
- Currency / Features -> choose values available for your account
Success
You have connected Interkassa H2H Merchant account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice; card data itself is collected and submitted separately by Corefy's checkout/SDK layer, not as part of this request. CVV is always required (no CVV-exempt mode).
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "6be05631-8710-4b14-a369-1928a2b70eda",
"service": "payment_card_usd_hpp",
"currency": "USD",
"amount": 10
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "c22e66d5-48fa-41b0-b322-55a985204e50",
"service": "payment_card_usd_hpp",
"currency": "USD",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"name": "John Doe",
"email": "johndoe@example.com",
"metadata": {
"cpf_number": "12345678909"
}
}
}
}
}
Important
customer.nameis split into first/last name; if missing, Corefy falls back to the card's own embossed cardholder name.- For BRL transactions,
customer.metadata.cpf_number(the Brazilian CPF tax ID) is sent if provided; otherwise it's sent empty, which Interkassa may reject depending on the method.
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
ignore_callback-> optional, boolean - for cascading to work correctly, ignores Interkassa's asynchronous callback and relies only on an active status request to finalize the payment.transform_ik_payment_currency-> optional, boolean - when enabled, overrides the currency sent to Interkassa based on the connected card scheme (Visa -> USD, Mastercard -> EUR) instead of using the transaction's actual currency.provider_url_blacklist-> optional, string - a slash-separated list of hostnames; if Interkassa's redirect form would point at one of them, Corefy fails the payment instead of redirecting the customer there.
Refunds
Interkassa supports partial refunds, but only one refund per payment. The original transaction ID is required, and refund availability also depends on the payment method actually used for the sale.
Payments processing (connect Provider account, create payment-invoice)
Connect Provider account in Corefy Dashboard
Step 1 - Open connection form
Open Interkassa in the provider directory and press Connect at Interkassa Provider Overview page in the New connection section. Choose Provider account.
Step 2 - Fill in fields and select settings
- API user
- API key
- Checkout ID
- Secret key
- Test secret key -> optional
Success
You have connected Interkassa Provider account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice and redirects the customer to Interkassa's hosted payment page. Interkassa covers a wide range of local payment methods (UPI, PIX, BLIK, iDEAL, Bancontact, Multibanco, MB WAY, Boleto Bancario, Brazilian bank transfers, Apple Pay, Google Pay, Skrill, Neteller, and more) - the required customer/fields vary by method.
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "8afec793-9b41-4dc4-b281-c76cc54ffb89",
"service": "pix_brl_hpp",
"currency": "BRL",
"amount": 100
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "199be985-c243-478a-86a8-4b8c902e5bb6",
"service": "pix_brl_hpp",
"currency": "BRL",
"amount": 100,
"customer": {
"reference_id": "cus_123",
"name": "John Doe",
"email": "johndoe@example.com",
"phone": "+5511999999999",
"address": {
"post_code": "01310-100"
}
}
}
}
}
Important
Most methods only use customer.email/.name/.phone (and customer.address.post_code for Brazilian transfer methods) - none of these are enforced client-side, so a missing field is simply sent empty to Interkassa rather than substituted with a fake value.
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
replace_result_url-> optional, boolean, Apple Pay/Google Pay only - sends separate success/fail return URLs to Interkassa instead of a single combined result URL.psp_gateway-> optional, enumeration, configured per payment service - lets you pick which of Interkassa's own internal processing routes handles that specific method; the available choices depend on the service, and if left unset Interkassa picks one itself.
Refunds
Interkassa supports partial refunds, but only one refund per payment.
Payouts processing (connect Provider account, create payout-invoice)
Connect Provider account in Corefy Dashboard
Uses the same Provider account connected above - no separate connection step.
First request to Corefy API (MIN)
What it does: creates a payout-invoice. Payouts cover card, bank transfer, UPI, IMPS, PIX, Paytm, and SEPA transfer, each with their own required fields.
Payout - MIN
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "efbf0a2b-5590-42b7-b10b-94d49452147d",
"service": "bank_transfer_inr",
"currency": "INR",
"amount": 1000,
"customer": {
"reference_id": "cus_123"
},
"fields": {
"beneficiary_full_name": "John Doe",
"bank_name": "Example Bank",
"ifsc": "EXMP0001234",
"bank_account": "1234567890"
}
}
}
}
Important
- The exact set of required
fieldsdepends on the payout service and, for some methods, on thepsp_gatewaychosen - confirm the field list for your specific method with your Corefy account manager. customer.reference_idis required;fields.beneficiary_full_nameis split into first/last name for Interkassa.
Payout - MAX
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "a1b2c3d4-5e6f-4789-8a02-5b6c7d8e9f0a",
"service": "bank_transfer_inr",
"currency": "INR",
"amount": 1000,
"customer": {
"reference_id": "cus_123",
"phone": "+919999999999",
"email": "johndoe@example.com",
"metadata": {
"ip": "203.0.113.42"
}
},
"fields": {
"beneficiary_full_name": "John Doe",
"bank_name": "Example Bank",
"ifsc": "EXMP0001234",
"bank_account": "1234567890"
}
}
}
}
Extended request (MAX)
Why add extra fields (typical reasons): - Provide additional customer details for compliance/reconciliation - Include optional fields required by your specific flow
Options
psp_gateway-> optional, enumeration, configured per payout service - same mechanism as on Payments, lets you pick which of Interkassa's own internal routes processes that payout method.
Refunds
Interkassa does not support refunds on Payouts.
Additional info
- Active reconciliation is available on all flows - both the asynchronous callback and an active status request can finalize a Payment or Payout, unless
ignore_callbackis enabled on the H2H Merchant account. - No recurring - this connector does not support saving/charging a token through Corefy.
- 3D Secure is handled automatically - if the account requires 3DS but non-3DS is attempted, or CVV is missing, the payment is declined before reaching Interkassa.
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify the API user, API key, Checkout ID, and secret key for the selected environment
- Currency or service is not supported -> confirm allowed currencies/features in your Interkassa account and in Corefy
- Payment redirected to an unexpected page -> check the
provider_url_blacklistoption on your H2H Merchant account - Payout rejected for missing fields -> the required
fieldsset varies by payout method andpsp_gateway- confirm with your Corefy account manager - Refund fails with multiple attempts -> only one refund per payment is allowed, and only on Payments (Payouts don't support refunds)
- Not sure which account type to use? -> ask your Corefy account manager
Question
Still looking for help connecting your Interkassa account? Please contact our support team!