Skip to content

Logo

Kale.Money

Supports in this guide: Payments

Provider website: kale.money


What you need to do for start processing transactions (brief summary)

  1. Choose account type
  2. Get your credentials (from Kale.Money)
  3. Connect in Dashboard
  4. 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 the Public-Key header -> where to find: Kale.Money merchant back-office.
  • Private key -> Corefy field private_key -> used to compute the HMAC-SHA256 Signature on 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.email
  • PHONE -> customer.phone
  • FIRST_NAME -> customer.name (first part)
  • LAST_NAME -> customer.name (last part)
  • ADDRESS -> customer.address.full_address
  • CITY -> customer.address.city
  • POST_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:

  1. 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_callback option above for skipping the callback wait entirely).

Merchant account (Apple Pay / Google Pay):

  1. 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:

  1. 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 account
  • Public-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!