Skip to content

One API. Terminal, phone, online.

Create payments, drive terminals from the till, receive events by webhook. Clear errors, idempotency, sandbox without waiting.

POST /v1/paymentsbash
curl https://api.freika.com/v1/payments \
  -H "Authorization: Bearer fk_test_..." \
  -H "Idempotency-Key: bestellung-1042" \
  -d amount=8900 -d currency=CHF -d channel=online \
  -d success_url=https://deinshop.ch/danke

{
  "id": "pay_01J9X3A4Q6",
  "status": "pending",
  "checkout_url": "https://pay.freika.com/c/01J9X3A4Q6"
}

Principles

Rappen, never francs
Amounts are integers. 2450 is CHF 24.50. No rounding errors, no surprises.
Idempotent
Every write call carries an Idempotency-Key. Dropped connections never lead to duplicate payments.
Signed webhooks
HMAC-SHA256 with timestamp and replay protection. Retries for up to three days, delivery log in the dashboard.
Errors that help
Problem Details per RFC 9457 with a stable code and field reference. No guessing.
One key, two worlds
fk_test_ and fk_live_. Everything else is identical. The sandbox has a simulation terminal.
OpenAPI first
The reference is generated from the specification. Generate clients in any language or use our SDKs.

Drive terminals from the till

Your till sends the amount, the terminal takes over. Result via long polling, WebSocket or webhook. With progress messages such as "PIN entry" for your till display.

curl https://api.freika.com/v1/terminals/trm_theke_links/payments \
  -H "Authorization: Bearer fk_live_..." \
  -H "Idempotency-Key: bon-42" \
  -d amount=2450 -d currency=CHF -d tip_prompt=true

# Ergebnis abwarten (Long-Polling, bis 30 s)
curl "https://api.freika.com/v1/payments/pay_01J9XT8?wait=30" \
  -H "Authorization: Bearer fk_live_..."

Building a till system or a platform?

In the partner programme you create organisations for your customers via the API, get support with the integration and receive 10 % of the percentage fees, ongoing.

Ready in two minutes.

Create an account, test the sandbox, order a terminal. No contract, no monthly fee.