Endpoint
POST https://accounts.paytia.com/api/payment_service
Every flow on this API hits the same URL. You switch behaviour by sending a different transaction_flag and the fields that flow needs.
Flows
Each page below has the full field list, example values, and a live try-it explorer you can run against your own sandbox key.
Generate a secure one-time payment link tied to an amount and reference, then send it to a customer over email, SMS, chat, or any other channel.
Turn any Paytia payment link into a QR code for printed invoices, in-person collection, event ticketing, and scan-to-pay flows on field-rep tablets.
Set up scheduled recurring payments against a stored card token — daily, weekly, monthly intervals, with start and end dates and skip-rules supported.
Agent-assisted card-not-present payments taken during a phone call — agent stays on the line, card details captured securely outside the agent's view.
Embed Paytia's secure hosted checkout page into your online store — your customer pays without your servers ever touching card data, fully PCI DSS Level 1.
Charge a previously-stored card token without the customer present — useful for renewals, balance collections, and outstanding invoice top-ups.
Capture a customer's bank details securely for Direct Debit setup or one-off bank transfer — agents never see the sort code or account number.
Send funds out to a customer's bank account — refunds, payouts, settlements — with Paytia handling the bank rail and reference-matching audit.
Generate a Paytia payment link and send it straight to the customer's mobile by SMS — they tap once, pay on their own phone, and your system gets a webhook.
Process a charge against a stored payment method using its Paytia token — no card data needed at the point of charge, full PCI scope reduction.
Change the amount, interval, or end date on an existing recurring schedule mid-flight — useful for billing changes, holds, and reactivations.
Shared conventions
A few things hold true across every flow, so you don't have to re-learn them per endpoint:
- Amounts are decimal strings with two decimal places.
10.00, not10or1000. - Currency and country codes are ISO 3-letter / 2-letter (
GBP,GB). - Webhook URLs should be HTTPS. We retry on failure — your endpoint should be idempotent.
- Reference fields like
reference_numberare passed through to the underlying payment gateway. Some gateways require uniqueness. - Error responses use the HTTP code plus a plain-text reason. Full table at API error codes.