Mistok
Documentation · Gateways · UA

Portmone Ukraine

Cards, Apple/Google Pay, Privat24, hold (pre-authorisation). Official documentation: https://docs.portmone.com.ua/docs/en/PaymentGatewayEng/. Gateway fee: per contract with Portmone.

Credentials

payee_id, login, password and the signature key are issued by your Portmone manager. Test mode is switched on per payee_id; test cards 4444 3333 2222 1111 (success) and 4111 1111 1111 1111 (decline).

Environment variables
PORTMONE_PAYEE_ID PORTMONE_LOGIN PORTMONE_PASSWORD PORTMONE_KEY PORTMONE_API_BASE (opt.)
Webhook
POST /webhooks/portmone. Portmone callbacks are not signed (form-POST to success_url or a JSON notification) — Mistok authenticates every callback by re-reading the bill via result with login/password and checking payee_id and shopOrderNumber.

What Mistok calls

RequestFields / meaning
POST https://www.portmone.com.ua/gateway/ (createLinkPayment)payee{payeeId, login, dt, signature}, order{shopOrderNumber, billAmount, billCurrency, description, successUrl, failureUrl, preauthFlag, expTime} → {linkPayment}
POST /gateway/ (result)array of bills (shopBillId, status, billAmount, cardMask); re-read after every callback
POST /gateway/ (return)refund (full/partial)
POST /gateway/ (confirmPreauth)capture of a hold
POST /gateway/ (rejectPreauth)release of a hold (full amount)

Statuses

CREATED → created · PREAUTH → hold · PAYED → success · REJECTED → failure (also expired) · RETURN → reversed once refunds cover the paid amount.

Mistok’s model: created → processing → (hold →) success | failure | expired | reversed. The Shopify order receives a payment only on success and only after the amount and currency are checked against our record.

Sandbox

No separate test host. Signature: UPPER(HMAC-SHA256(key, UPPER(payeeId+dt+hex(shopOrderNumber)+billAmount)+UPPER(hex(login)))), dt = YYYYMMDDHHmmss.

Limitations

Not confirmed by a live run

Implemented from the official docs and SDKs; a first run on test keys is mandatory.

← all gateways · Mistok HTTP API