First API Call (test)
Now that all setup steps are complete, make your first test API call!
Prerequisites Check
Before making the first call, make sure that:
- RPP registration is complete
- API user has been created
- Permissions have been set
- Authentication configured (CSR/JWT or HMAC)
- Credentials extracted (KID / API key / HMAC secret)
Don't forget that for the Payment API, Consent creation and approval is still required!
Test Environment URLs
API base URL (test):
https://premium-api-int.raiffeisen.hu
Pay Portal (test):
https://pay-portal-int-kubera.raiffeisen.hu
Availability: Weekdays from 7:00 to 20:00
Setting HTTP Headers
CSR/JWT-based authentication (Payment API, EAM, Payment Request)
Required headers:
| Header | Value | Description |
|---|---|---|
x-api-key | From RPP portal | The API key bound to the technical user (TECHUSER). A company can have multiple TECHUSERs and thus multiple x-api-key values. |
x-jws-signature | Detached JWT | The signature computed on the request body. Format: header..signature (payload omitted). Details: JWS signature generation |
x-correlation-id | UUID v4 | Request identifier for searching in logs. Unique value for each call. |
x-request-id | UUID v4 | Technical identifier for searching in logs. Unique value for each call. |
user-agent | Any string | Required header, content can be anything (e.g. MyApp/1.0.0). |
Content-Type | application/json | Format of the request body. |
JWS signature generation:
A Detached JWS signature is created from the request body for each API call. This is not an OAuth2 bearer token – there is no expiry, a new signature is required for each call.
Detailed guide: JWS Signature Generation
HMAC-based authentication (Online Payment Page)
Detailed guide: HMAC Authentication
First Test Calls by Product
Balance API
Example: Account balance query
GET /payment-api/v1/accounts/{accountId}/balances
x-api-key: <API_KEY>
x-jws-signature: <DETACHED_JWS>
x-correlation-id: <UUID>
x-request-id: <UUID>
user-agent: MyApp/1.0.0
{
"consentList": [
"1111",
"2222"
],
"AcctRptgReq": {
"GrpHdr": {
"MsgId": "UUID",
"CreDtTm": "2026-07-22T05:30:47+02:00"
},
"RptgReq": {
"ReqdMsgNmId": "BALN",
"Acct": {
"Id": {
"IBAN": "UUID"
}
},
"AcctOwnr": {
"Pty": {
"Nm": "nodasmdo"
}
}
}
}
}
Detailed documentation: [Balance API →](/i18n/en/docusaurus-plugin-content-docs/current/kezdes/szamlainfo/Számlaegyenleg%20lekérdezése/lekerdezes.md)
---
### Payment API
**Példa: Payment beküldés**
```bash
POST https://premium-api-int.raiffeisen.hu/v1/payment/domestic/init
x-api-key: <API_KEY>
x-jws-signature: <DETACHED_JWS>
x-correlation-id: <UUID>
x-request-id: <UUID>
Content-Type: application/json
user-agent: MyApp/1.0.0
{
"consentList": [
"3687",
"3688"
],
"debtorAccount": {
"iban": "HU91120113510184523800100006"
},
"instructedAmount": {
"currency": "HUF",
"amount": "1"
},
"creditorAccount": {
"iban": "HU77120836000041718100100009"
}
}
Detailed documentation: Payment API →
qvik EAM
Example: Creating a payment scenario (Init call)
POST /eam-api/v1/payment-scene/init
x-api-key: <API_KEY>
x-jws-signature: <DETACHED_JWS>
x-correlation-id: <UUID>
x-request-id: <UUID>
Content-Type: application/json
user-agent: MyApp/1.0.0
{
"amount": 1000,
"currency": "HUF",
"merchantReference": "TEST123"
}
Detailed documentation: qvik EAM →
Payment Request
Example: Creating a payment request
POST /rtp-api/v1/payment-request
x-api-key: <API_KEY>
x-jws-signature: <DETACHED_JWS>
x-correlation-id: <UUID>
x-request-id: <UUID>
Content-Type: application/json
user-agent: MyApp/1.0.0
{
"amount": 5000,
"currency": "HUF",
"debtorName": "Test Customer",
"remittanceInfo": "Invoice #12345"
}
Detailed documentation: Payment Request →
Online Payment Page
Example: Initiating a transaction
POST /v1/ofo/start
x-api-key: <API_KEY>
Signature: <HMAC_SIGNATURE>
x-correlation-id: <UUID>
x-request-id: <UUID>
Content-Type: application/json
{
"idempotencyKey": "f4e5b92d-60ff-46bd-a26a-8342116cdec5",
"technicalUserId": "10234",
"language": "HU",
"url": "https://demo-webshop.hu",
"transactionReference": "TEST123",
"paymentMethods": ["EAM"],
"transactionCurrency": "HUF",
"transactionAmount": 250,
"timestamp": "2024-10-04T14:23:45Z"
}
Detailed documentation: Online Payment Page →
Common Errors
401 Unauthorized
Cause: Incorrect JWT token or API key
Solution:
- Check that the KID is correct in the JWT header
- Check that you signed the JWT with the private key
- Check that the API key is correct
403 Forbidden
Cause: Insufficient permissions
Solution:
- Check on the RPP portal that the correct permissions (PAY / EAM / RTP) have been set
400 Bad Request
Cause: Incorrect payload format
Solution:
- Check the payload structure in the product documentation
- Check that all required fields are filled in
500 Internal Server Error
Cause: Test environment issue or incorrect configuration
Solution:
- Check that the test environment is accessible (weekdays 7:00-20:00)
- Contact support: premiumapi_support@raiffeisen.hu
Next Steps
- Continue development - Implement the full payment flow
- Prepare production environment - Go Live →