Skip to content

Logo

Ecommpay

Supports in this guide: Payments, Payouts

Provider website: ecommpay.com


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

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

Choose account type

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

  • If you do H2H card payments (card data sent directly) -> choose H2H Merchant account
  • If you do payouts -> choose Provider account

If you're not sure which one to use, confirm with your Corefy account manager.


Prerequisites: get from Ecommpay

For H2H Merchant account:

  • Project ID -> Corefy field project_id -> where to find: Ecommpay backoffice / issued by Ecommpay manager.
  • Secret Key -> Corefy field secret_key -> used to sign every request.
  • API URL (optional) -> Corefy field api_url -> leave as default unless your account manager tells you otherwise.

For Provider account:

  • Project ID -> Corefy field project_id.
  • Secret Key -> Corefy field secret_key.
  • Token / Token Key (optional) -> Corefy fields token/token_key -> only needed if you want Corefy to list your Ecommpay deposit/balance accounts when connecting - ask your Ecommpay account manager if this applies to you.

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

Connect H2H Merchant account in Corefy Dashboard

Step 1 - Open connection form

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

Step 2 - Fill in fields and select settings

  • Project ID
  • Secret Key
  • API URL (optional)
  • Test Mode -> (enable if you are using sandbox credentials)
  • Send Merchant URL -> (enable to send your website URL to Ecommpay with every request)
  • Send Payment Extra Param -> (enable to forward a custom payment_extra_param value from your request's metadata)

Choose Currency and Features. You can set these parameters according to available currencies and features for your Ecommpay account (EUR, USD, RUB confirmed), but it is necessary to check details of the connection with your Corefy account manager.

Success

You have connected Ecommpay 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.

Payment - MIN

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "reference_id": "8e3dbbb0-17af-4c9a-bedb-93bdac6900a2",
      "service": "payment_card_eur_hpp",
      "currency": "EUR",
      "amount": 10
    }
  }
}

Payment - MAX

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "reference_id": "6795502c-e27d-4d07-85e0-93245aab9a3f",
      "service": "payment_card_eur_hpp",
      "currency": "EUR",
      "amount": 10,
      "customer": {
        "reference_id": "cus_123",
        "name": "John Smith",
        "email": "johnsmith@gmail.com",
        "phone": "+15551234567",
        "address": {
          "country": "DE",
          "city": "Berlin",
          "street": "1 Main street",
          "post_code": "10115"
        }
      },
      "metadata": {
        "payment_extra_param": "custom-value"
      }
    }
  }
}

All of customer's fields are optional - anything you don't send falls back to the Constants below (or is simply omitted) instead of failing the request. metadata.payment_extra_param is only forwarded when Send Payment Extra Param is enabled. This connector also supports USD and RUB (use payment_card_usd_hpp/payment_card_rub_hpp as the service code).


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 (4)

  • ignore_callback - tells Corefy to disregard Ecommpay's own callback notifications entirely.
  • async_acs_data_extraction - actively polls for 3D Secure (ACS) challenge data instead of waiting once for the callback.
  • enable_visa_aft_refund_rules - skips the normal 24-hour refund delay for Visa cards.
  • enable_mastercard_aft_refund_rules - skips the normal 24-hour refund delay for Mastercard cards.
ignore_callback

What it does: when enabled, Corefy ignores callback notifications sent by Ecommpay for this connection, relying on status checks/reconciliation instead.

When to use: enable only if instructed by Ecommpay or your Corefy account manager.

Default: false

Allowed values: true / false

async_acs_data_extraction

What it does: by default, Corefy waits once for Ecommpay's callback to deliver the 3D Secure (ACS) challenge data. When enabled, it instead actively polls both the callback store and Ecommpay's own status endpoint until that data (or a final status) shows up.

When to use: enable it if Ecommpay's callback for the ACS step is sometimes delayed or missed for your account.

Default: false

Allowed values: true / false

enable_visa_aft_refund_rules

What it does: by default, a refund on a Visa transaction less than 24 hours old is held (delayed) rather than processed immediately. Enabling this option skips that delay for Visa cards.

When to use: enable it if you need to issue same-day refunds on Visa transactions and don't need the 24-hour hold.

Default: false

Allowed values: true / false

enable_mastercard_aft_refund_rules

What it does: the same 24-hour refund delay as above, but for Mastercard transactions - enabling this option skips the delay for Mastercard cards specifically.

When to use: enable it if you need to issue same-day refunds on Mastercard 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)

  • CUSTOMER_NAME -> customer.name
  • CUSTOMER_EMAIL -> customer.email
  • PHONE -> customer.phone
  • COUNTRY -> customer.address.country
  • CITY -> customer.address.city
  • STREET -> customer.address.street
  • ZIP -> customer.address.post_code
  • FULL_ADDRESS -> customer.address.full_address

Payouts processing (connect Provider account, create payout-invoice)

Connect Provider account in Corefy Dashboard

Step 1 - Open connection form

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

Step 2 - Fill in fields and select settings

  • Project ID
  • Secret Key
  • Token / Token Key (optional)
  • Test Mode -> (enable if you are using sandbox credentials)

Success

You have connected Ecommpay Provider account!


First request to Corefy API (MIN)

What it does: creates a payout-invoice and sends funds to a card.

Payout - MIN

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "0dde9e79-2c64-4703-adaf-93d710633401",
      "service": "payment_card_eur",
      "currency": "EUR",
      "amount": 10,
      "customer": {
        "reference_id": "cus_123"
      },
      "fields": {
        "card_number": "4111111111111111",
        "card_exp_month": "12",
        "card_exp_year": "27"
      }
    }
  }
}

Payout - MAX

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "7976b4ce-fadd-4585-baa0-6b02c65351dc",
      "service": "payment_card_eur",
      "currency": "EUR",
      "amount": 10,
      "customer": {
        "reference_id": "cus_123",
        "name": "John Smith",
        "address": {
          "country": "US",
          "region": "California",
          "city": "Los Angeles",
          "full_address": "1 Main street",
          "post_code": "90001"
        }
      },
      "fields": {
        "card_number": "4111111111111111",
        "card_exp_month": "12",
        "card_exp_year": "27"
      }
    }
  }
}

fields.card_number/card_exp_month/card_exp_year are required; the cardholder's name is derived from customer.name. This connector also supports PLN, USD, and KRW (use payment_card_pln/payment_card_usd/payment_card_krw as the service code).


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)

  • send_recipient_and_sender - sends detailed recipient (cardholder) and sender (your customer) information with the payout.
send_recipient_and_sender

What it does: when enabled, includes a detailed recipient block (cardholder name) and sender block (your customer's name, address, and reference ID as a wallet identifier) with the payout request. For US/CA addresses, the sender's state is included too.

When to use: enable it if Ecommpay or your account manager asked you to provide this additional compliance/AML detail on payouts.

Default: false

Allowed values: true / false


Additional info

  1. Callback routing. For H2H Merchant account, the callback endpoint is /ecommpay/callback - register it in Ecommpay's own back-office. For Provider account payouts, callback routing is handled automatically - Corefy generates the callback URL per transaction.

FAQ / Troubleshooting

  • Invalid credentials / auth error -> verify credentials for the selected environment and account type
  • Refund rejected / delayed unexpectedly -> Ecommpay holds refunds on transactions less than 24 hours old by default; enable enable_visa_aft_refund_rules/enable_mastercard_aft_refund_rules if you need same-day refunds for that card network
  • Currency or service is not supported -> confirm allowed currencies/features in your Ecommpay account and in Corefy
  • Not sure which account type to use? -> ask your Corefy account manager

Question

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