Skip to content

Logo

D24

Streamline your transactions

Supports in this guide: Payments, Payouts

Provider website: d24.com


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

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

Choose account type

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

  • If you do H2H card payments (card data sent directly, Chile only) -> choose H2H Merchant account
  • If you do local payment methods via a hosted page (Latin America, Asia, Africa & Middle East) -> choose 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 D24

Contact your D24 account manager to get your account verified and receive the following credentials. Each account type below is a separate connection with its own credentials, even though the field names are similar.

For H2H Merchant account:

  • API Key -> Corefy field api_key.
  • API Signature -> Corefy field api_signature -> used to sign every request.
  • API URL (optional) -> Corefy field api_url -> leave as default unless your account manager tells you otherwise.
  • Document type (optional) -> set as a connection constant; see Constants below.

For Merchant account:

  • API Key -> Corefy field api_key.
  • API Signature -> Corefy field api_signature.
  • Live URL (optional) -> Corefy field live_url.

For Provider account:

  • API Key -> Corefy field api_key.
  • API Passphrase (optional) -> Corefy field api_passphrase.
  • API Signature -> Corefy field api_signature.
  • Live URL (optional) -> Corefy field live_url.

All three account types also have a Test Mode field.


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

Connect H2H Merchant account in Corefy Dashboard

Step 1 - Open connection form

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

Step 2 - Fill in fields and select settings

  • API Key
  • API Signature
  • API URL (optional)
  • Test Mode -> (enable if you are using sandbox credentials)

Success

You have connected D24 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. This flow only supports card payments in CLP (Chilean peso). Depending on the issuer, D24 may complete the sale without any extra step, or return an authentication link that the customer must be redirected to - Corefy handles this redirect and the final status check automatically.

Payment - MIN

POST /api/payment-invoices

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

Payment - MAX

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "reference_id": "6795502c-e27d-4d07-85e0-93245aab9a3f",
      "service": "payment_card_clp",
      "currency": "CLP",
      "amount": 10000,
      "customer": {
        "reference_id": "cus_123",
        "name": "John Smith",
        "email": "johnsmith@gmail.com",
        "phone": "+15551234567",
        "individual_tax_id": "12345678-9",
        "date_of_birth": "1990-01-01",
        "address": {
          "country": "CL",
          "region": "RM",
          "city": "Santiago",
          "full_address": "1 Main street",
          "post_code": "7500000"
        },
        "metadata": {
          "document_type": "RUT"
        }
      }
    }
  }
}

Important

customer.address.region is only forwarded to D24 as the payer's state when it's 3 characters or shorter; longer region values are dropped from the request. customer.metadata.document_type is only used when the Send default document type option (below) is disabled - otherwise the connection's Document type constant is sent instead and customer.metadata.document_type is ignored, even if present.


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

  • save_instant_token -> optional, boolean - enables tokenizing the card during a sale (see Recurring below).
  • send_default_code -> optional, boolean - when enabled, the payer's document_type always comes from the Document type constant, ignoring customer.metadata.document_type entirely.

Constants (fallback fields)

Constants are static values that Corefy can send to the provider when those fields are missing in the request - or, for document_type specifically, in place of the request value whenever send_default_code is enabled (see the important note above).

Currently available constants (constant -> Corefy API field)

  • document_type -> customer.metadata.document_type (string, up to 10 characters, e.g. RUT)

Recurring (save and charge a token)

If Save Instant Token is enabled on your connection, this connector supports saving the card as a token during a sale (via Corefy's standard tokenize-on-sale request) and later charging that same token without sending full card data again.


Refunds

D24 supports partial refunds, but only one refund per payment (no multiple partial refunds against the same payment).


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

Connect Merchant account in Corefy Dashboard

Step 1 - Open connection form

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

Step 2 - Fill in fields and select settings

  • API Key
  • API Signature
  • Live URL (optional)
  • Test Mode -> (enable if you are using sandbox credentials)

Success

You have connected D24 Merchant account!


First request to Corefy API (MIN)

What it does: creates a payment-invoice and redirects the customer to a D24-hosted page to complete the payment using a local payment method. D24 supports a wide range of local methods across Latin America (Pix, Boleto Bancario, PicPay, RapidPagos, PagoFacil, bank transfers, D24 wallet, and more), Asia, and Africa/Middle East; the exact set available depends on what's enabled for your specific account - check with your account manager.

Payment - MIN

POST /api/payment-invoices

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

Payment - MAX

POST /api/payment-invoices

{
  "data": {
    "type": "payment-invoice",
    "attributes": {
      "reference_id": "6795502c-e27d-4d07-85e0-93245aab9a3f",
      "service": "pix_brl_hpp",
      "currency": "BRL",
      "amount": 10,
      "customer": {
        "reference_id": "cus_123",
        "name": "John Smith",
        "email": "johnsmith@gmail.com",
        "phone": "+15551234567",
        "date_of_birth": "1990-01-01",
        "address": {
          "country": "BR",
          "region": "SP",
          "city": "Sao Paulo",
          "full_address": "1 Main street",
          "post_code": "01000-000"
        }
      }
    }
  }
}

customer is entirely optional - everything is only used to prefill the hosted form, it never blocks the sale. Some local methods require an extra method-specific field (for example, a tax/document ID) - the Dashboard shows the exact field list once a method is selected.


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

No Options or Constants are configured for this flow.


Refunds

This flow does not expose a separate merchant-facing refund option - check with your account manager whether refunds are available for the local payment method you use.


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

Connect Provider account in Corefy Dashboard

Step 1 - Open connection form

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

Step 2 - Fill in fields and select settings

  • API Key
  • API Passphrase (optional)
  • API Signature
  • Live URL (optional)
  • Test Mode -> (enable if you are using sandbox credentials)

Success

You have connected D24 Provider account!


First request to Corefy API (MIN)

What it does: creates a payout-invoice and sends funds to the recipient via a local payout method (bank transfer, D24 wallet, and more depending on your account). Required fields vary by method - the Dashboard shows the exact field list once a method is selected.

Payout - MIN

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "0dde9e79-2c64-4703-adaf-93d710633401",
      "service": "bank_transfer_brl",
      "currency": "BRL",
      "amount": 10,
      "fields": {
        "beneficiary_name": "Jesse",
        "beneficiary_lastname": "Pinkman",
        "bank_account": "11954",
        "beneficiary_document_id": "12345678900"
      }
    }
  }
}

Payout - MAX

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "3c6d2f8e-8a2a-4e7a-9b1a-2f6a7b9c0d1e",
      "service": "bank_transfer_brl",
      "currency": "BRL",
      "amount": 10,
      "customer": {
        "reference_id": "cus_123",
        "email": "johnsmith@gmail.com",
        "phone": "+15551234567"
      },
      "fields": {
        "beneficiary_name": "Jesse",
        "beneficiary_lastname": "Pinkman",
        "bank_account": "11954",
        "bank_code": "21",
        "beneficiary_document_id": "12345678900",
        "beneficiary_country_code_iso": "BR"
      }
    }
  }
}

Payout - ARS bank transfer (Argentina)

POST /api/payout-invoices

{
  "data": {
    "type": "payout-invoice",
    "attributes": {
      "reference_id": "9b1f7d2a-5c43-4a91-8f0e-6d2a3c4b5e7f",
      "service": "bank_transfer_ars",
      "currency": "ARS",
      "amount": 1000,
      "customer": {
        "reference_id": "cus_123",
        "email": "jessepinkman@example.com",
        "phone": "+5491100000000"
      },
      "fields": {
        "bank_account": "1234567890123456789012",
        "beneficiary_name": "Jesse",
        "beneficiary_lastname": "Pinkman",
        "beneficiary_email": "jessepinkman@example.com",
        "beneficiary_document_id": "12345678",
        "beneficiary_document_type": "DNI",
        "beneficiary_country_code_iso": "AR"
      }
    }
  }
}

Important

For Argentina bank_account is the CBU or CVU - exactly 22 digits. bank_code is not required: the bank is derived from the account number itself. beneficiary_document_type is DNI or CUIL, and beneficiary_document_id holds the matching number - DNI 7-9 digits, CUIL 7-9 or exactly 11 digits.

D24 accepts the cashout and answers with its own identifier, which Corefy stores as the provider transaction id:

{
  "cashout_id": "300831"
}

The payout stays pending until D24 sends the final status by callback - Corefy processes it automatically.


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

No Constants are configured for this flow.


Options

  • refund_account -> optional, boolean, connection-level - when enabled, payout requests sent through this connection are treated as refunds of an original payment rather than new payouts. This is set up together with your account manager and isn't part of the regular payout request.

Additional info

  1. Callback routing is automatic - Corefy generates the callback/return URLs per transaction, nothing to configure in D24's own back-office.
  2. For Chile-specific local methods (D24 wallet, bank transfer in CLP), the beneficiary's tax/document ID is automatically normalized (non-alphanumeric characters removed) before being sent to D24.

FAQ / Troubleshooting

  • Sale is stuck pending after a 3DS challenge redirect -> Corefy checks the final status automatically; no manual action is needed on your side
  • Wrong or missing document_type on D24's side -> check whether Send default document type is enabled on your H2H Merchant account connection - if so, it always overrides customer.metadata.document_type
  • Invalid credentials / auth error -> verify the credentials for the selected account type and environment - H2H Merchant account, Merchant account, and Provider account use entirely different credential sets
  • Refund rejected for a second partial amount -> only one refund per payment is supported
  • Currency or service is not supported -> confirm allowed currencies/features in your D24 account and in Corefy

Question

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