Skip to content

Kaito Merchant API (2.0.0)

Merchant services including payment acceptance, settlements, and financial reporting.

Payment Acceptance: In-person payment acceptance supporting nfc (Tap-to-Pay), qr (QR code), alias (handle resolution), and card_present (chip/swipe).

Charge Flow: Create merchant -> Create charge -> Display QR/NFC -> Confirm via polling or webhook.

Refunds: Full or partial refunds via /refunds.

Banking & Settlements: View settlement history via /settlements, account balances via /balances, and download reconciliation reports in CSV, XLSX, or JSON format. Query /fees for fee breakdown.

Download OpenAPI description
Languages
Servers
Mock server
https://developer.kaito.io/_mock/merchant/
Production
https://api.kai2.io/
Sandbox
https://sandbox.api.kai2.io/

Charges

Create and manage payment charges

Operations

Refunds

Process refunds

Operations

Merchants

Manage merchant accounts

Operations

Settlements

View settlement history

Operations

Balances

View account balances

Operations

Reconciliation

Download reconciliation reports

Operations

Fees

View fee breakdown

Operations

Get fee summary

Request

Security
oAuth2
Query
fromstring(date)required
tostring(date)required
curl -i -X GET \
  'https://developer.kaito.io/_mock/merchant/v1/fees?from=2019-08-24&to=2019-08-24' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Fee summary

Headers
X-Trace-Idstring(TraceId)

Correlation id for troubleshooting

Example: "trc_01JH8K5P3V9M2K5Q7W6J3Z1A9B"
Bodyapplication/json
fromstring(date)required
tostring(date)required
currencystringrequired
itemsArray of objects(FeeBreakdown)required
items[].​typestring(FeeType)required
Enum"processing""network""fx""payout""kaito""partner"
items[].​amountnumberrequired
Example: 2.5
items[].​currencystringrequired
Example: "USD"
items[].​descriptionstring or null
Example: "Card processing fee (2.9% + $0.30)"
totalnumberrequired
Response
application/json
{ "from": "2019-08-24", "to": "2019-08-24", "currency": "string", "items": [ {} ], "total": 0 }