Kale.Money
Supports in this guide: Payments
Provider website: kale.money
What you need to do for start processing transactions (brief summary)
- Choose account type
- Get your credentials (from Kale.Money)
- Connect in Dashboard
- Send an API request
Choose account type
Kale.Money can be connected in different ways (depending on your needs):
- If you do card payments (card data sent directly, no redirect) -> choose H2H Merchant account
- If you do Apple Pay / Google Pay (redirect to Kale.Money's hosted checkout) -> choose Merchant account
The two account types use separate credentials and are set up separately, even though the credential field names happen to look the same. If you're not sure which one to use, confirm with your Corefy account manager.
Note
Kale.Money currently only supports EUR.
Prerequisites: get from Kale.Money
To create an account, send a connection request at kale.money/contacts or contact your Kale.Money manager directly. Kale.Money's own API reference is at docs.kale.money.
- Public key -> Corefy field
public_key-> sent on every request as thePublic-Keyheader -> where to find: Kale.Money merchant back-office. - Private key -> Corefy field
private_key-> used to compute the HMAC-SHA256Signatureon every request and callback -> where to find: Kale.Money merchant back-office. Store it securely.
Note
Both account types use this same Public key / Private key pair conceptually (Kale.Money signs all of its endpoints the same way), but each account type is connected and credentialed separately in the Dashboard - connecting one does not connect the other.
Payments processing (connect H2H Merchant account, create payment-invoice)
Connect H2H Merchant account in Corefy Dashboard
Step 1 - Open connection form
Open Kale.Money in the provider directory and press Connect at Kale.Money Provider Overview page in the New connection section. Choose H2H Merchant account.
Step 2 - Fill in fields and select settings
- Public key
- Private key
- Test Mode -> (enable if you are using sandbox credentials)
- Currency / Features -> choose values available for your account
Success
You have connected Kale.Money H2H Merchant account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice.
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"service": "payment_card_eur_hpp",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"email": "johndoe@email.com"
}
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"service": "payment_card_eur_hpp",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"name": "John Doe",
"email": "johndoe@email.com",
"phone": "+448650405942",
"address": {
"full_address": "Shevchenka str",
"country": "US",
"region": "NY",
"city": "New York",
"post_code": "777777"
}
}
}
}
}
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
Options are configured on the Corefy side and affect how Corefy builds provider requests or processes responses.
Currently available options (1)
ignore_callback- skips Kale.Money's callback for finalizing the transaction and relies on reconciliation instead.
ignore_callback
What it does: normally Corefy waits briefly for Kale.Money's callback to finalize the sale, falling back to reconciliation only if no callback arrives in time. Enabling this option skips waiting on the callback and finalizes the transaction from reconciliation directly.
When to use: enable it if you'd rather not rely on Kale.Money's callback delivery for finalizing transactions.
Default: false
Allowed values: true / false
Constants (fallback fields)
Constants are static values that Corefy can send to the provider instead of dynamic data from your API request, when those fields are missing in the request.
Priority (predictable rule): 1. If a value is present in the request -> Corefy uses the request value 2. Else if the constant is set -> Corefy uses the constant 3. Else -> provider may reject the request or apply its defaults (depends on provider)
Currently available constants (constant -> Corefy API field)
EMAIL->customer.emailPHONE->customer.phoneFIRST_NAME->customer.name(first part)LAST_NAME->customer.name(last part)ADDRESS->customer.address.full_addressCITY->customer.address.cityPOST_CODE->customer.address.post_code
Payments processing (connect Merchant account, create payment-invoice)
This account type covers Apple Pay and Google Pay - Kale.Money handles both wallets through the same redirect flow.
Connect Merchant account in Corefy Dashboard
Step 1 - Open connection form
Open Kale.Money in the provider directory and press Connect at Kale.Money Provider Overview page in the New connection section. Choose Merchant account.
Note
This account type connects with your own Kale.Money credentials rather than routing through a shared Corefy account - a genuinely different connection mechanism from most other providers' "Provider account," which is why it's labeled differently here. The exact on-screen label hasn't been visually confirmed yet (this flow just shipped) - if the form shows a different name than "Merchant account", let us know so this doc can be corrected.
Step 2 - Fill in fields and select settings
- Public key
- Private key
- Test Mode -> (enable if you are using sandbox credentials)
- API URL (optional, overrides the default gateway endpoint - leave blank unless told otherwise)
- Currency / Features -> choose Apple Pay and/or Google Pay as available for your account
Success
You have connected Kale.Money Merchant account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice and returns a redirect link to Kale.Money's hosted checkout page.
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"service": "applepay_eur_hpp",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"email": "johndoe@email.com"
}
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"service": "applepay_eur_hpp",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"name": "John Wick",
"email": "johndoe@email.com"
}
}
}
}
Use googlepay_eur_hpp instead of applepay_eur_hpp for Google Pay - the request shape is identical, only the service code changes. Unlike the H2H Merchant account flow, this account type has no address/phone fields at all - only customer.name (split into first/last) and customer.email are used, and there's no card data since the customer completes the wallet payment on Kale.Money's own hosted page.
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
Constants (fallback fields)
Constants are static values that Corefy can send to the provider instead of dynamic data from your API request, when those fields are missing in the request.
Priority (predictable rule): 1. If a value is present in the request -> Corefy uses the request value 2. Else if the constant is set -> Corefy uses the constant 3. Else -> provider may reject the request or apply its defaults (depends on provider)
Currently available constants (constant -> Corefy API field)
WEBSITE_URL-> merchant website URL sent to Kale.Money (no per-request override - taken from your merchant profile by default)CUSTOMER_FIRST_NAME->customer.name(first part)CUSTOMER_LAST_NAME->customer.name(last part)CUSTOMER_EMAIL->customer.email
These constants are configured per service (applepay_eur_hpp and googlepay_eur_hpp separately).
Additional info
H2H Merchant account:
- Callback routing is handled automatically: Kale.Money calls back a notification URL Corefy generates per transaction. There's no fixed callback URL to configure in Kale.Money's back-office. If the callback doesn't arrive with a final status in time, Corefy reconciles the payment with Kale.Money directly (see the
ignore_callbackoption above for skipping the callback wait entirely).
Merchant account (Apple Pay / Google Pay):
- After the customer completes the wallet payment on Kale.Money's hosted page, they're redirected back to your return URL; the final result is confirmed via callback (validated the same way as the H2H flow, using a signature field in the callback body rather than a header) or, if it doesn't arrive, by reconciling directly with Kale.Money.
Both account types:
- Every request and callback is signed with HMAC-SHA256 over the request's/callback's own non-null values, using your Private key - Corefy handles this automatically.
FAQ / Troubleshooting
Signature is invalid-> verify the Private key used to connect matches the one currently active in your Kale.Money accountPublic-Key does not exist-> verify the Public key matches the selected environment (sandbox vs production)- Currency not supported -> Kale.Money only supports
EUR - Not sure which account type to use? -> ask your Corefy account manager
Question
Still looking for help connecting your Kale.Money account? Please contact our support team!