TODA Pay
You make the request - we deliver the solution
Supports in this guide: Payments, Payouts
Provider website: todapay.com
What you need to do for start processing transactions (brief summary)
- Choose account type
- Get your credentials (from TODA Pay)
- Connect in Dashboard
- Send an API request
Choose account type
TODA Pay 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 card, bank transfer, open banking, e-wallet, or other local payment methods via a hosted page, or payouts -> choose Provider account
If you're not sure which one to use, confirm with your Corefy account manager.
Prerequisites: get from TODA Pay
Contact your TODA Pay account manager to get your account verified and receive the following credentials.
For H2H Merchant account:
- Commerce Account -> Corefy field
com_acc. - API Key -> Corefy field
api_key. - Key for Callback (optional) -> Corefy field
key_for_callback-> used to verify callback notifications from TODA Pay, if your account requires it. - API URL -> Corefy field
api_url-> your account-specific endpoint, given by TODA Pay. - Send Metadata (optional) -> Corefy field
send_metadata.
For Provider account:
- Commerce ID -> Corefy field
commerce_id. - API Key -> Corefy field
api_key. - Secret Key for Callback -> Corefy field
secret_key_callback. - API URL (optional) -> Corefy field
api_url. - Send Metadata (optional) -> Corefy field
send_metadata.
Payments processing (connect H2H Merchant account, create payment-invoice)
Connect H2H Merchant account in Corefy Dashboard
Step 1 - Open connection form
Open TODA Pay in the provider directory and press Connect at TODA Pay Provider Overview page in the New connection section. Choose H2H Merchant account.
Step 2 - Fill in fields and select settings
- Commerce Account
- API Key
- Key for Callback (optional)
- API URL
- Send Metadata (optional)
- Test Mode -> (enable if you are using sandbox credentials)
Choose Currency / Features; check with your Corefy account manager which are enabled for your account.
Success
You have connected TODA Pay 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 is EUR only. TODA Pay may return a 3D Secure challenge redirect depending on the card.
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "1f3a5c7e-9b0d-4e2f-8a4c-6b8d0e2f4a6c",
"service": "payment_card_eur_hpp",
"currency": "EUR",
"amount": 10
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "2e4b6d8f-0c1e-4a3b-8c5d-7e9f1a3b5c7d",
"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": "FR",
"city": "Paris"
}
}
}
}
}
customer is entirely optional and is only used to enrich the sale.
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 connector.
Options
ignore_callback-> optional, boolean - for cascading to work correctly, excludes finalizing the payment from the asynchronous callback; Corefy then relies only on an active status request (reconciliation) to finalize it.save_provider_instant_token-> optional, boolean - if TODA Pay's response includes an instant token, Corefy stores it; confirm with your account manager whether a follow-up charge using this token is available for your account.generate_random_customer_data-> optional, boolean - if enabled andcustomeris missing from your request, Corefy automatically fills it in with generated placeholder data instead of sending nothing.transliterate_customer_data-> optional, boolean - transliteratescustomerfields to Latin before sending them to TODA Pay.transliterate_card_holder-> optional, boolean - transliterates the card's embossed holder name to Latin before sending it to TODA Pay (independent of thecustomertransliteration above).set_description-> optional, boolean - sends your transaction descriptor as the payment's description, instead of leaving it blank.duplicate_original_resolution-> optional, boolean - if Corefy's own resolution mapping can't classify TODA Pay's response, falls back to reporting TODA Pay's original resolution code instead of leaving it blank.
Refunds
This connector does not support refunds on the H2H Merchant account - use the Provider account if you need refunds.
Payments processing (connect Provider account, create payment-invoice)
Connect Provider account in Corefy Dashboard
Step 1 - Open connection form
Open TODA Pay in the provider directory and press Connect at TODA Pay Provider Overview page in the New connection section. Choose Provider account.
Step 2 - Fill in fields and select settings
- Commerce ID
- API Key
- Secret Key for Callback
- API URL (optional)
- Send Metadata (optional)
- Test Mode -> (enable if you are using sandbox credentials)
Success
You have connected TODA Pay Provider account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice and redirects the customer to a TODA Pay-hosted page to complete the payment. TODA Pay supports a wide range of methods - card, open banking, bank transfers (including several EU banks directly), Klarna, EPS, iDEAL, MB WAY, Multibanco, Neteller, Paysafecard, Rapid Transfer, Skrill, SEPA transfer, Interac, BLIK, MyBank, and Revolut - 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": "3d5e7f91-2a4c-4b6d-8e0f-9a1c3e5f7a9b",
"service": "payment_card_eur_hpp",
"currency": "EUR",
"amount": 10
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "4c6e8a02-3b5d-4c7e-8f1a-0b2d4f6a8c0e",
"service": "payment_card_eur_hpp",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"name": "John Smith",
"email": "johnsmith@gmail.com"
}
}
}
}
customer is entirely optional - everything is only used to prefill the hosted form, it never blocks the sale.
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
allow_conversion-> optional, boolean - lets Corefy/TODA Pay automatically convert the transaction currency when the requested currency isn't directly supported, instead of rejecting the request outright.
Refunds
TODA Pay supports partial and multiple refunds against the same payment on the Provider account.
Payouts processing (connect Provider account, create payout-invoice)
Connect Provider account in Corefy Dashboard
Uses the same Provider account connection as Payments above - one connection covers both directions, nothing extra to fill in for payouts specifically.
First request to Corefy API (MIN)
What it does: creates a payout-invoice and sends funds via SEPA transfer or Interac. 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": "5a7c9e03-4d6f-4a8b-8c2d-1e3f5a7c9e0b",
"service": "sepa_transfer_eur",
"currency": "EUR",
"amount": 10,
"fields": {
"iban": "DE89370400440532013000",
"account_holder_name": "John Smith"
}
}
}
}
Payout - MAX
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "6b8d0f14-5e7a-4b9c-8d3e-2f4a6c8e0b1c",
"service": "sepa_transfer_eur",
"currency": "EUR",
"amount": 10,
"customer": {
"reference_id": "cus_123",
"name": "John Smith",
"email": "johnsmith@gmail.com"
},
"fields": {
"iban": "DE89370400440532013000",
"account_holder_name": "John Smith"
}
}
}
}
customer is entirely optional - everything is only forwarded to TODA Pay as recipient details.
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
send_description-> optional, boolean - sends a description with the payout, instead of leaving it blank.allow_conversion-> optional, boolean - lets Corefy/TODA Pay automatically convert the payout currency when the requested currency isn't directly supported, instead of rejecting the request outright.
Additional info
- Callback routing is automatic - Corefy generates the callback/return URLs per transaction, nothing to configure in TODA Pay's own back-office.
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify the credentials for the selected account type and environment - H2H Merchant account and Provider account use entirely different credential sets
- Refund fails on the H2H Merchant account flow -> refunds aren't supported there - use the Provider account instead
- Currency or service is not supported -> confirm allowed currencies/features in your TODA Pay account and in Corefy - the H2H Merchant account is EUR only
- Not sure which account type to use? -> H2H Merchant account is direct card only (EUR, no refunds); Provider account adds the wider range of local methods, refunds, and payouts
Question
Still looking for help connecting your TODA Pay account? Please contact our support team!