KIA PAY
Simple.Secure.Fast
KIA-PAY DEVELOPERS

Developer & Business Integration

Integrate KIATOKEN payments into business portals, websites, applications, invoicing systems, WordPress, Elementor, POS, CRM/ERP platforms, and other trusted business systems.

Hosted payment. Verified completion.

Your trusted server creates a payment request through the KIA-PAY Developer API. KIA-PAY returns a hosted payment URL, handles the payment experience and verification, and provides status updates and signed webhook delivery.

Business System
      ↓
KIA-PAY Developer API
      ↓
Hosted Secure Payment Page
      ↓
Customer Pays
      ↓
Verified Completion
      ↓
Webhook / Status Update
01

What is the KIA-PAY API?

The KIA-PAY API is a secure integration layer for businesses that want to accept KIATOKEN through their own website, customer portal, e-commerce workflow, invoicing system, POS, CRM/ERP platform, SaaS product, or mobile application.

External systems do not receive or use the merchant's KIA-PAY username and password. A trusted business server uses a merchant-owned Developer API key to communicate with KIA-PAY.

Create payment requestsAmount, currency, reference, customer data, notes, and tax.
Hosted payment pagesKIA-PAY returns a payment ID and secure hosted payment URL.
Track payment statusRetrieve verified payment state for reconciliation and checks.
Automate with webhooksReceive signed events when verified payment completion occurs.
02

Basic integration flow

  1. Create or use an approved KIA-PAY merchant account.
  2. Create a Developer API key for the appropriate environment.
  3. Store the API key only on your trusted server.
  4. Send a server-side request to create a payment.
  5. Open or redirect the customer to the returned payment URL.
  6. Use a signed webhook as the primary automatic update mechanism.
  7. Use the status endpoint for checks and reconciliation.
  8. Treat a payment as paid only after KIA-PAY marks it Completed.
AuthenticationSend the merchant Developer API key as a Bearer token in the Authorization header. Payment creation also requires an Idempotency-Key to protect against duplicate requests.
03

Production API endpoints

MethodEndpointPurpose
GEThttps://pay.kiahelps.com/api/v1/healthCheck API availability
POSThttps://pay.kiahelps.com/api/v1/paymentsCreate a payment request
GEThttps://pay.kiahelps.com/api/v1/payments/{paymentId}Retrieve payment status and details
Keep API keys private.Never expose a Developer API key in browser JavaScript, public HTML, Elementor custom code, a mobile client, or a public source-code repository.
04

Supported payment input

FieldTypeRequiredDescription
amountnumber / stringYesPositive payment amount
currencystringYesPayment currency
merchant_referencestringNoInvoice, order, or business reference
customer_notestringNoNote visible with the payment request
merchant_notestringNoInternal merchant note
customer_namestringNoCustomer full name
customer_emailstringNoCustomer email address
customer_phonestringNoCustomer phone number
customer_addressstringNoCustomer billing or mailing address
customer_id_typestringNodrivers_license, passport, national_id, or other
customer_id_numberstringNoOnly the last 4 characters are persisted in the payment record
apply_taxbooleanNoApply merchant-defined tax
tax_namestringNoTax label, such as Sales Tax
tax_ratenumber / stringNoTax percentage

Example create-payment request

POST /api/v1/payments
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Idempotency-Key: order-1001

{
  "amount": 100,
  "currency": "USD",
  "merchant_reference": "ORDER-1001",
  "customer_name": "Example Customer",
  "customer_email": "customer@example.com",
  "customer_phone": "555-123-4567",
  "customer_address": "123 Example Street",
  "customer_id_type": "drivers_license",
  "customer_id_number": "EXAMPLE1234",
  "customer_note": "Payment for Order 1001",
  "merchant_note": "Online order",
  "apply_tax": true,
  "tax_name": "Sales Tax",
  "tax_rate": "5"
}

A successful request returns payment information including a unique KIA-PAY payment ID and a hosted payment_urlthat can be opened for the customer.

Customer ID privacyWhen customer identification is supplied, the payment record is designed to persist the ID type and only the last four characters of the ID number rather than the full number.
Merchant-defined taxKIA-PAY can calculate merchant-defined tax from the supplied tax name and rate. The business remains responsible for determining and applying the appropriate tax.
05

Status, verification & expiration

Retrieve a payment through GET /api/v1/payments/{paymentId}. The response provides payment status and core payment details for the authenticated merchant.

pendingWaiting for verified payment.
completedPayment verified by KIA-PAY.
expiredThe payment request expired.
cancelledThe payment request was cancelled.
failedThe payment did not complete successfully.
Payment authorityDo not mark an invoice, order, subscription, or service as paid based only on a customer redirect, payment reference, or client-side message. Use verified KIA-PAY Completed status.

Current Developer API and merchant-created payment requests use a 24-hour expiration period.

06

Automatic business updates

Webhooks allow KIA-PAY to notify your business system when a verified event occurs. The primary payment event is payment.completed.

Mark invoices paidUpdate internal invoice state after verified completion.
Update ordersMove an order into paid or processing state.
Activate servicesTrigger controlled service activation or fulfillment.
Reconcile paymentsMatch KIA-PAY completion with business records.

Webhook delivery headers

Content-Type: application/json
User-Agent: KIA-PAY-Webhooks/1.0
KIA-Pay-Event-Id: evt_...
KIA-Pay-Timestamp: <unix seconds>
KIA-Pay-Signature: v1=<hex HMAC-SHA256>

Webhook endpoints must use a public HTTPS URL. Your handler should validate the signature, timestamp, event identity, and replay/duplicate behavior before applying a business action. Webhook processing should be idempotent.

07

Receipts & verification

Completed KIA-PAY payments support receipt information, receipt-hash verification, and automatic receipt email when an eligible customer email is available.

Receipt hashes are created only for completed payments. They are not created for pending, expired, cancelled, or failed payment requests.

08

Low-code business integration

The KIATOKEN KIA-PAY WordPress plugin provides a server-side bridge between a WordPress business website and the KIA-PAY Developer API. The API key remains in the plugin/server configuration rather than being exposed to the customer.

[kia_pay_portal]
  1. Install the KIATOKEN KIA-PAY plugin.
  2. Create a KIA-PAY Developer API key.
  3. Store the connection in the plugin settings.
  4. Use the KIA-PAY portal, payment shortcode, or Elementor widget.
  5. Publish and test payment creation.
  6. Confirm the hosted page belongs to the correct merchant.
  7. Complete a controlled payment and verify status and receipt behavior.
WordPress.org statusKIATOKEN KIA-PAY plugin version 1.0.0 has been submitted to the WordPress.org Plugin Directory and is currently awaiting human review.
09

Integrate from your trusted backend

KIA-PAY can be integrated with Node.js / Next.js, PHP / Laravel, Python / Django, ASP.NET, Java, and other server-side environments capable of making HTTPS requests.

Customer Browser
      ↓
Business Portal Backend
      ↓
KIA-PAY Developer API
      ↓
payment_id + payment_url
      ↓
Business Portal Backend
      ↓
Open KIA-PAY Hosted Payment Page

After payment creation, use the webhook as the primary automatic update mechanism and the payment-status endpoint for checks, reconciliation, and recovery workflows.

10

Integration requirements

  • Keep API keys and webhook secrets server-side.
  • Use separate keys per merchant and environment where appropriate.
  • Revoke and replace any exposed API key.
  • Use a unique Idempotency-Key for payment creation.
  • Verify webhook signatures and protect against replay and duplicate events.
  • Do not authorize a payment only from merchant_reference.
  • Do not log plaintext API keys, webhook secrets, or full customer ID numbers.
  • For fixed-price commerce, derive or verify the amount on the trusted server.
  • Use verified KIA-PAY Completed status as payment authority.

Bring KIATOKEN payments to your business.

Register a business, access your merchant account, or visit the Help Center for additional KIA-PAY guidance.