Payment + fiscal orchestration infrastructure
One integration.
Every payment flow.
Connect POS systems, payment providers and fiscalization through one API.
Odoo
Odoo sends one sale request to PTPAY with an idempotency key.
PTPAY
PTPAY validates the sale, attaches a correlation ID and routes it to the configured provider.
Viva.com
Viva.com runs the card payment on the merchant's terminal.
APPROVED
The provider's final result is confirmed and stored as the payment status.
Fiscalization
Only after payment is settled, the receipt is registered through eKasa — a separate fiscal status.
Receipt
Fiscal receipt data returns through PTPAY to Odoo for printing.
01 — One API
Integrate once. Not once per provider.
Every payment provider and every fiscal system has its own protocol, certification path and failure modes. PTPAY absorbs them behind one stable contract, so a POS or ERP team builds a single integration and keeps it.
Without PTPAY
Every system × every provider.
With PTPAY
Every system × one API.
Authorization: Bearer ptpay_live_••••
Idempotency-Key: ord-2026-000184
X-Correlation-ID: 7c1e…
{
"paymentMethod": "CARD",
"terminalId": "trm_…",
"amount": 1250,
"currency": "EUR",
"fiscalize": true
}
→ paymentStatus · fiscalStatus · overallStatus02 — Payment orchestration
Provider-neutral by architecture.
Each terminal is bound to a provider in configuration, not in the merchant's code. PTPAY routes the transaction, normalizes the result and never turns an uncertain outcome into a guessed one — an unconfirmed payment stays UNKNOWN until the provider confirms it.
03 — Payment + fiscalization
Two statuses. One transaction.
Getting paid and issuing a legal receipt are different events that can fail independently. PTPAY tracks them separately and orchestrates them as one sale — a fiscal error never makes a paid sale look unpaid.
CARD
- POS
- PTPAY
- Payment provider
- APPROVED
- Fiscalization
- Receipt
Fiscalization starts only after the provider confirms the payment.
CASH
- POS
- PTPAY
- Fiscalization
- Receipt
No payment provider is called. The cash payment is recorded, then fiscalized.
04 — Integrations
An ecosystem around one layer.
Business systems · POS
- OdooAvailable
- BookioPlanned
- PTPAY POSPlanned
- Custom POSAvailable
- API integrationsAvailable
Payment providers
- Viva.comIn development
- Global PaymentsAvailable
- TapayaPlanned
- Future providersPlanned
Fiscal systems
- eKasaAvailable
- Future fiscal systemsPlanned
Statuses reflect the current state of development. "In development" means implementation or controlled testing is under way — not production availability.
05 — For developers
Built API-first.
Unified sales API
One request for card or cash sales, with optional fiscalization and line-item VAT.
Payments
Create, read, cancel and refund payments through one provider-neutral resource.
Fiscalization
Fiscal receipts as a first-class resource with their own lifecycle and status.
Idempotency
Idempotency-Key on every write. Retries return the original result, never a duplicate.
Correlation IDs
X-Correlation-ID follows each request across PTPAY and provider calls.
Secure authentication
Hashed, scoped, revocable keys isolated per merchant and environment, with rate limits.
Base URL https://api.ptpay.io/v1 · API documentation is shared with integration partners. Request access