Integration Overview
In a live service, backend result verification is required in addition to the frontend payment call.
Integration Architecture
Customer
Frontend
Backend
Hecto Financial
11. Payment Request
1. Payment Request
22. Order Number Generation Request
2. Order Number Generation Request
33. Return Order Number + Hash Value
3. Return Order Number + Hash Value
44. Launch Checkout
4. Launch Checkout
55. Display Checkout
5. Display Checkout
66. Enter Payment Information
6. Enter Payment Information
77. Webhook (notiUrl)
7. Webhook (notiUrl)
88. OK Response
8. OK Response
99. Payment Complete (nextUrl)
9. Payment Complete (nextUrl)
Step 1: Backend — Order Creation
Before making a payment request, the backend generates an order number, encrypts the transaction amount (AES-256), and generates a request signature hash (SHA-256).
NOTE
Encryption and Hash Generation Rules
For AES-256 encryption rules, SHA-256 hash generation order, and required parameters by payment method, refer to the Before You Begin documentation. Before You Begin — Encryption/Decryption and Request Signature (pktHash)
Step 2: Frontend — Launch Checkout
Use the values received from the backend to launch the checkout page. You can use either the SDK or HTML Form Submit method.
For the SDK URL and usage, refer to the Checkout Integration documentation.
Frontend-Backend Role Division
| Party | Responsibility |
|---|---|
| Backend | Order number generation (mchtTrdNo), amount encryption (trdAmt), hash generation (pktHash) |
| Frontend | Launch the checkout page, select UI display method (popup/iframe/self/blank) |
| Shared Configuration | Payment method selection (method), environment configuration (env), result reception URLs (notiUrl, nextUrl, cancUrl) |
NOTE
Detailed Parameters by Payment Method
Each payment method (credit card, bank transfer, virtual account, etc.) has additional required parameters. Refer to the documentation for each payment method for detailed parameters. Checkout Integration — Parameters by Payment Method
Step 3: Backend — Webhook Processing
Hecto Financial sends the payment result via POST to your server's notiUrl. Actual order processing must always be performed in notiUrl.
NOTE
Detailed Guide
For detailed webhook integration content, received data, hash verification, idempotency handling, etc., refer to the webhooks integration documentation. Webhooks (notiUrl) Integration Guide
Integration Checklist
| Step | Check Item |
|---|---|
| Backend | Is the order number generated uniquely on a daily basis? |
| Backend | Is pktHash generated in the correct order? |
| Backend | Is the amount encrypted with AES-256-ECB? |
| Frontend | Is the SDK script loaded for the correct environment? |
| Frontend | Are all required parameters passed? |
| notiUrl | Is hash verification performed? |
| notiUrl | Is amount verification performed? |
| notiUrl | Is duplicate payment handling in place? |
| notiUrl | Is OK or FAIL returned as Plain Text? |
Next Steps
Complete Your Integration
Need technical support?
Code Samples
HectoFinancial GitHub