Skip to content

Logo

Bennupay

Supports in this guide: Payments

Provider website: bennupay.io


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

  1. Choose account type
  2. Get your credentials (from Bennupay)
  3. Connect in Dashboard
  4. Send an API request

Choose account type

Bennupay can be connected in different ways (depending on your needs):

  • If you do card payments with a choice between server-to-server and a Bennupay-hosted checkout page (more currencies, more configuration) -> choose H2H Merchant account
  • If you do simple redirect/hosted-checkout card payments only -> choose Provider account

These are two separate credential sets — connecting one doesn't connect the other. If you are not sure which one to use, confirm with your Corefy account manager.


Prerequisites: get from Bennupay

Bennupay issues separate credentials for each account type below.

For H2H Merchant account:

  • API Key -> Corefy field api_key -> where to find: Bennupay backoffice / issued by Bennupay manager
  • Brand ID -> Corefy field brand_id -> where to find: Bennupay backoffice / issued by Bennupay manager
  • S2S Token -> Corefy field s2s_token -> only needed if you'll use the server to server API Type
  • Webhook Public Key -> Corefy field webhook_public_key -> optional — if left blank, Corefy automatically registers a webhook with Bennupay and retrieves this key for you when the connection is saved

For Provider account:

  • API Key -> Corefy field api_key -> where to find: Bennupay backoffice / issued by Bennupay manager
  • Brand ID -> Corefy field brand_id -> where to find: Bennupay backoffice / issued by Bennupay manager

Payments processing (connect H2H Merchant account, create payment-invoice)

Connect H2H Merchant account in Corefy Dashboard

Step 1 - Open connection form

Open Bennupay in the provider directory and press Connect at Bennupay Provider Overview page in the New connection section. Choose H2H Merchant account.

Step 2 - Fill in fields and select settings

  • API Key
  • API Type -> server to server (card data submitted directly by Corefy) or direct post (customer completes payment on Bennupay's own hosted page)
  • S2S Token -> (only relevant for the server to server API Type)
  • Brand ID
  • Webhook Public Key -> (optional — auto-provisioned if left blank)

Choose Currency and Features. You can set these parameters according to available currencies and features for your Bennupay account, but it is necessary to check details of the connection with your Corefy account manager.

Success

You have connected Bennupay 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": 100,
      "customer": {
        "reference_id": "55041b5b-adfd-4073-a92b-fd8b495a4cc1",
        "email": "johnsmith@gmail.com"
      },
      "reference_id": "86e68af6-6b95-4cc0-be16-e4df8044604c"
    }
  }
}

Payment - MAX

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "service": "payment_card_eur_hpp",
      "currency": "EUR",
      "amount": 100,
      "customer": {
        "reference_id": "bc75bc54-5023-4f98-8c0d-ec5ed7e8f380",
        "name": "John Smith",
        "email": "johnsmith@gmail.com",
        "phone": "+15551234567",
        "individual_tax_id": "123456789",
        "address": {
          "country": "DE",
          "region": "Berlin",
          "city": "Berlin",
          "post_code": "10115",
          "full_address": "1st Street 1"
        }
      },
      "reference_id": "08f5e97c-1170-4bda-9625-3bde3c6dcd20"
    }
  }
}
All fields above are always forwarded as-is when present — there's no option to suppress them. Bennupay also supports GBP, NOK, USD, SEK, CHF, AUD, CAD, DKK, HUF, and a currency the connector's own configuration lists as BRK (use payment_card_<currency>_hpp as the service code, in lowercase) — confirm the exact currency codes available for your account with your Corefy account manager.


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


Payments processing (connect Provider account, create payment-invoice)

Connect Provider account in Corefy Dashboard

Step 1 - Open connection form

Open Bennupay in the provider directory and press Connect at Bennupay Provider Overview page in the New connection section. Choose Provider account.

Step 2 - Fill in fields and select settings

  • API Key
  • Brand ID
  • Currency -> choose one of USD, EUR, GBP for this connection

Choose Features. You can set this parameter according to available features for your Bennupay account, but it is necessary to check details of the connection with your Corefy account manager.

Success

You have connected Bennupay Provider account!


First request to Corefy API

What it does: creates a payment-invoice. This is a redirect flow — the customer is sent to Bennupay's hosted page to complete the payment.

Payment - Actual

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "service": "payment_card_usd_hpp",
      "currency": "USD",
      "amount": 100,
      "customer": {
        "reference_id": "55041b5b-adfd-4073-a92b-fd8b495a4cc1",
        "email": "johnsmith@gmail.com"
      },
      "reference_id": "86e68af6-6b95-4cc0-be16-e4df8044604c"
    }
  }
}
customer.email is required by Bennupay — if omitted from the request, Corefy falls back to the EMAIL constant below, so one of the two must supply a value. It's the only customer field this flow reads, so there's no separate MAX example. currency must match the single currency chosen when connecting this account (use payment_card_eur_hpp/payment_card_gbp_hpp for EUR/GBP).


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

Additional info

  1. Callback routing uses a dedicated, fixed endpoint that Corefy manages on your behalf — you don't need to configure anything in your Bennupay account for it. Signature validation is applied using your Webhook Public Key.

FAQ / Troubleshooting

  • Invalid credentials / auth error -> verify credentials for the selected environment and account type
  • Currency or service is not supported -> confirm allowed currencies/features in your Bennupay account and in Corefy
  • Not sure which account type to use? -> ask your Corefy account manager
  • Connection fails at setup -> if you left Webhook Public Key blank, Corefy attempts to auto-register a webhook with Bennupay during connection — confirm your API Key/Brand ID are correct if this fails

Question

Still looking for help connecting your Bennupay account? Please contact our support team!