
SPAYZ.io
Integrated software for the business space - local payment methods across South Korea, Vietnam, Thailand, Malaysia and Indonesia.
Supports in this guide: Payments, Payouts
Provider website: spayz.io
What you need to do for start processing transactions (brief summary)
- Get your credentials (from SPAYZ.io)
- Connect in Dashboard
- Send an API request
Choose account type
- Merchant account -> use for Payments
- Provider account -> use for Payouts
Both account types use the same three credential fields.
Prerequisites: get from SPAYZ.io
Contact your SPAYZ.io account manager to get your account verified and receive the following credentials.
- Merchant ID -> Corefy field
mid. - API key -> Corefy field
api_key. - Callback public key -> Corefy field
callback_public_key-> used to verify the authenticity of payout callbacks SPAYZ.io sends back to Corefy.
KRW, VND, THB, MYR, IDR.
Payments processing (connect Merchant account, create payment-invoice)
Connect Merchant account in Corefy Dashboard
Step 1 - Open connection form
Open SPAYZ.io in the provider directory and press Connect at SPAYZ.io Provider Overview page in the New connection section, choosing the Merchant account option.
Step 2 - Fill in fields and select settings
- Merchant ID
- API key
- Callback public key
- Currency / Features -> choose values available for your account (KRW, VND, THB, MYR, IDR)
Success
You have connected SPAYZ.io Merchant account!
First request to Corefy API (MIN)
What it does: creates a payment-invoice; depending on the service, the customer is either redirected to a SPAYZ.io-hosted page (HPP, e.g. bank_transfer_krw_hpp, fpx_myr_hpp, dana_idr_hpp) or shown bank/QR requisites directly without a redirect (invoice services, e.g. bank_transfer_krw_invoice, promptpay_qr_thb_invoice).
Payment - MIN
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "726c5cd5-2145-4d31-9bc7-d15dc0681d69",
"service": "bank_transfer_krw_hpp",
"currency": "KRW",
"amount": 10000,
"customer": {
"reference_id": "36ce2130-b8b8-49e7-86db-72c745472044",
"name": "John Doe",
"email": "johndoe@email.com",
"metadata": {
"ip": "127.0.0.1"
}
}
}
}
}
Important
customer.name,customer.metadata.ipare required for every Payment service.customer.emailis additionally required for HPP (redirect) services - not required for invoice (QR/bank-details) services.- IDR amounts must be whole numbers - a decimal amount is rejected before it's sent to SPAYZ.io, for HPP-type IDR services.
Payment - MAX
POST /api/payment-invoices
{
"data": {
"type": "payment-invoice",
"attributes": {
"reference_id": "91f56672-6764-4aae-9761-1da464336ad8",
"service": "bank_transfer_krw_hpp",
"currency": "KRW",
"amount": 10000,
"customer": {
"reference_id": "36ce2130-b8b8-49e7-86db-72c745472044",
"name": "John Doe",
"email": "johndoe@email.com",
"phone": "380654321234",
"metadata": {
"ip": "127.0.0.1"
}
}
}
}
}
Important
No Options or Constants are configured for this connector - if a customer field is missing where required, the request is rejected rather than falling back to a placeholder value.
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
Refunds
SPAYZ.io does not support refunds.
Payouts processing (connect Provider account, create payout-invoice)
Connect Provider account in Corefy Dashboard
Step 1 - Open connection form
Open SPAYZ.io in the provider directory and press Connect at SPAYZ.io Provider Overview page in the New connection section, choosing the Provider account option.
Step 2 - Fill in fields and select settings
- Merchant ID
- API key
- Callback public key
Success
You have connected SPAYZ.io Provider account!
First request to Corefy API (MIN)
What it does: creates a payout-invoice sent to the local bank transfer method matching the payout's currency.
Payout - MIN
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "a8361481-9f0e-4cb2-bdb4-a97d4e70e473",
"service": "bank_transfer_krw",
"currency": "KRW",
"amount": 10000,
"customer": {
"reference_id": "36ce2130-b8b8-49e7-86db-72c745472044"
},
"metadata": {
"ip": "127.0.0.1"
},
"fields": {
"beneficiary_name": "John",
"beneficiary_lastname": "Wick",
"bank_code": "10099",
"account_name": "John Wick",
"account_number": "12345678901234567890"
}
}
}
}
Important
fields.beneficiary_name, fields.beneficiary_lastname, fields.bank_code, fields.account_name, and fields.account_number are passed through to SPAYZ.io for every payout; none are substituted with a placeholder if missing.
Payout - MAX
POST /api/payout-invoices
{
"data": {
"type": "payout-invoice",
"attributes": {
"reference_id": "a8361481-9f0e-4cb2-bdb4-a97d4e70e473",
"service": "bank_transfer_krw",
"currency": "KRW",
"amount": 10000,
"customer": {
"reference_id": "36ce2130-b8b8-49e7-86db-72c745472044"
},
"metadata": {
"ip": "127.0.0.1"
},
"fields": {
"beneficiary_name": "John",
"beneficiary_lastname": "Wick",
"beneficiary_email": "johnwick@gmail.com",
"beneficiary_phone": "380654321234",
"bank_code": "10099",
"account_name": "John Wick",
"account_number": "12345678901234567890"
}
}
}
}
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
Additional info
Payment services by country/currency
| Country | Currency | Local methods |
|---|---|---|
| South Korea | KRW | Bank transfer (P2P) - HPP and invoice variants |
| Vietnam | VND | Online banking, bank transfer (P2P) |
| Thailand | THB | PromptPay QR - HPP and invoice variants |
| Malaysia | MYR | FPX, Online banking, DuitNow, Touch'n'Go |
| Indonesia | IDR | QRIS, Dana, OVO |
Payouts are available as local bank transfers in all five countries/currencies above (service bank_transfer_<currency>).
- Active reconciliation is available on both Payments and Payouts.
- No recurring - this connector does not support saving/charging a token through Corefy.
- No Options or Constants are configured for this connector on either flow.
- A Merchant account is bound to a single local method and currency, as reported by your SPAYZ.io merchant ID itself - only the one matching payment route becomes available after connecting.
FAQ / Troubleshooting
- Invalid credentials / auth error -> verify the Merchant ID and API key
- Payment rejected for missing customer fields ->
customer.nameandcustomer.metadata.ipare required for all services;customer.emailis additionally required for HPP (redirect) services - IDR payment rejected for invalid amount -> IDR HPP services require whole-number amounts (no cents)
- Payout callback signature invalid -> verify the Callback public key matches what SPAYZ.io issued for this account
- Refund fails -> SPAYZ.io does not support refunds through Corefy
Question
Still looking for help connecting your SPAYZ.io account? Please contact our support team!