Full reference for building integrations with TBC Bank's Open Banking, PSD2, and payment APIs.
TopicReference FileOAuth2 & Authenticationreferences/auth.mdAccount Information Services (AIS)references/ais.mdPayment Initiation Services (PIS)references/pis.mdConsents & SCAreferences/consent.mdOnline Installmentsreferences/installments.mdTPay Gatewayreferences/tpay.md
EnvironmentBase URLSandboxhttps://test-api.tbcbank.geDev OpenBankinghttps://dev-openbanking.tbcbank.geProductionhttps://api.tbcbank.geOpenBankinghttps://openbanking.tbcbank.ge
API path prefix: /0.8/v1/ (PSD2) or /v1/, /v2/ for non-PSD2
Every request must include:
http
Authorization: Bearer {access_token}
Content-Type: application/json
X-Request-ID: {uuid4} # Unique per request
PSU-IP-Address: {user_ip} # End-user's IP address
For signed requests (TPP operations) also include:
http
Digest: SHA-256={base64_body_hash}
Signature: keyId="{cert_serial}",algorithm="rsa-sha256",headers="...",signature="..."
json
{
"code": "string",
"type": "https://...",
"title": "Error summary",
"status": 400,
"detail": "Detailed description",
"traceId": "abc123"
}
consentId→ Read references/consent.md then references/ais.md
paymentId + _links→ Read references/pis.md
→ Read references/auth.md first — needed by all other flows
→ Read references/installments.md
→ Read references/tpay.md
"amount": "30.00")2023-07-01, 2025-03-26T00:00:00)_links pattern — always follow links from responses, don't hardcode pathstransactionStatus codes: RCVD (received), ACTC (accepted technical), ACSP (accepted settlement in progress), ACCC (accepted credit complete), RJCT (rejected)scaStatus codes: received, psuIdentified, psuAuthenticated, scaMethodSelected, finalised, failed