
Overpay
A payment service for cross-border transfers and e-commerce payment acceptance.
Supports in this guide: Payments
Provider website: overpay.io
What you need to do for start processing transactions (brief summary)
- Get your credentials (from Overpay)
- Connect in Dashboard
- Send an API request
Prerequisites: get from Overpay
Contact your Overpay account manager to get your account verified and receive the following credentials.
- Shop ID -> Corefy field
shop_id. - Public key -> Corefy field
public_key. - Secret key -> Corefy field
secret_key.
Currencies/features are configured per your Overpay account - check available values with your account manager.
Payments processing (connect H2H Merchant account, create payment-invoice)
Connect H2H Merchant account in Corefy Dashboard
Step 1 - Open connection form
Open Overpay in the provider directory and press Connect at Overpay Provider Overview page in the New connection section.
Step 2 - Fill in fields and select settings
- Shop ID
- Public key
- Secret key
- Test Mode -> (enable if you are using sandbox credentials)
- 3DS Mode ->
SimpleorAdvanced - Provider URL -> fixed value, pre-filled
- Currency / Features -> choose values available for your account
Success
You have connected Overpay 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. CVV is always required, unless the currency is UZS, where it is optional.
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "50eb03f2-de01-474f-907a-53bbb2a30af3",
"service": "payment_card_kzt_hpp",
"currency": "KZT",
"amount": 600
}
}
}
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "50eb03f2-de01-474f-907a-53bbb2a30af3",
"service": "payment_card_kzt_hpp",
"currency": "KZT",
"amount": 600,
"customer": {
"email": "johnsmith@gmail.com",
"phone": "+15551234567",
"name": "John Smith",
"address": {
"country": "KZ",
"region": "Almaty",
"city": "Almaty",
"post_code": "050000",
"full_address": "1st Street 1"
}
}
}
}
}
Important
customer.emailand the customer's IP address are always sent to Overpay. Ifcustomer.emailis missing and theEMAILConstant isn't set either, a fixed placeholder email (john@example.com) is sent instead of leaving the field empty - this is a built-in code default, not something you need to configure. The same applies to the customer's IP: if it can't be resolved,127.0.0.1is sent.- The full billing address (
customer.address, name, phone) is only sent to Overpay when thesend_customer_dataOption (see Options below) is enabled - otherwise only email and IP are sent. - When
send_customer_datais enabled and an address field is still missing (and no matching Constant is set), built-in placeholder defaults are sent instead: countryDE, cityDenver, stateCO, zip96002, address1st Street. These are the same kind of code-level fallback as the email/IP default above, not real customer data.
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
ignore_callback-> optional, boolean - for cascading to work correctly, ignores Overpay's asynchronous callback and relies only on an active status request to finalize the payment.send_customer_data-> optional, boolean - when enabled, sends the customer's billing address (name, phone, country, city, state, zip, address) to Overpay; when disabled (default), onlycustomer.emailand the IP address are sent.
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 -> a built-in code default is sent (see the note above) rather than the field being omitted
Currently available constants (constant -> Corefy API field)
EMAIL->customer.emailDESCRIPTION-> transaction descriptionLANG-> transaction languageREASON-> refund reasonCOUNTRY->customer.address.countryCITY->customer.address.citySTATE->customer.address.regionZIP->customer.address.post_codeADDRESS->customer.address.full_address
Refunds
Overpay supports partial refunds, but only one refund per payment (no multiple partial refunds against the same payment).
Additional info
- Active reconciliation is available - both the asynchronous callback and an active status request can finalize the payment, unless
ignore_callbackis enabled. - No recurring - this connector does not support saving/charging a token through Corefy.
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify the Shop ID and key pair for the selected environment (
test_mode) - Billing address never reaches Overpay -> enable the
send_customer_dataOption - A fake email or address appears on the provider's side -> this happens when the request is missing
customer.email/address fields and no matching Constant is configured; set the relevant Constants (or send the fields in the request) to avoid the built-in placeholder defaults - Currency or service is not supported -> confirm allowed currencies/features in your Overpay account and in Corefy
- Refund fails with multiple attempts -> only one refund per payment is allowed
Question
Still looking for help connecting your Overpay account? Please contact our support team!