Python SDK for Victoriabank MIA API
- Victoriabank IPS Business WebApi docs: https://test-ipspj.victoriabank.md
- Victoriabank IPS DemoPay WebApi https://test-ipspj-demopay.victoriabank.md/swagger/
- GitHub project https://github.com/alexminza/victoriabank-mia-sdk-python
- PyPI package https://pypi.org/project/victoriabank-mia-sdk/
Installation
To easily install or upgrade to the latest release, use pip:
pip install --upgrade victoriabank-mia-sdk
Getting started
Import SDK:
from victoriabank_mia_sdk import VictoriabankMiaSdk, VictoriabankMiaAuthRequest, VictoriabankMiaApiRequest
Add project configuration:
import os, datetime
VB_PUBLIC_KEY_PATH = os.getenv('VB_PUBLIC_KEY_PATH')
VB_MIA_USERNAME = os.getenv('VB_MIA_USERNAME')
VB_MIA_PASSWORD = os.getenv('VB_MIA_PASSWORD')
VB_IBAN = os.getenv('VB_IBAN')
SDK usage examples
Get Access Token with username and password
vb_mia_auth = VictoriabankMiaAuthRequest \
.create(base_url=VictoriabankMiaSdk.SANDBOX_BASE_URL) \
.generate_token(username=VB_MIA_USERNAME, password=VB_MIA_PASSWORD)
vb_mia_token = vb_mia_auth['accessToken']
Create a dynamic order payment QR
vb_mia_qr_data = {
'header': {
'qrType': 'DYNM', # Type of QR code: DYNM - Dynamic QR, STAT - Static QR, HYBR - Hybrid QR
'amountType': 'Fixed', # Specifies the type of amount: Fixed - Dynamic QR, Controlled - Static QR, Free - Hybrid QR
'pmtContext': 'e' #Payment context: m - mobile payment, e - e-commerce payment, i - invoice payment, 0 - other
},
'extension': {
'creditorAccount': {
'iban': f'{VB_IBAN}' # The account from which funds will be debited credited.
},
'amount': {
'sum': 123.45, # The total sum to be paid.
'currency': 'MDL' # The currency in which the sum is specified.
},
'dba': 'TEST SRL', #Commercial name that will appear in client APP.
'remittanceInfo4Payer': 'Order #123', #Payment destination.
'creditorRef': '123', #External payment reference.
'ttl': {
'length': 60, #The duration for which the QR code is valid.
'units': 'mm' #The unit of time for the TTL: ss - seconds, mm - minutes
}
}
}
vb_mia_api_request = VictoriabankMiaApiRequest.create(base_url=VictoriabankMiaSdk.SANDBOX_BASE_URL)
vb_mia_create_qr_response = vb_mia_api_request.qr_create(
data=vb_mia_qr_data,
token=vb_mia_token)
Decode callback and validate signature
callback_jwt = """eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJzaWduYWxDb2RlIjoiRXhwaXJhdGlvbiIsInNpZ25hbER0VG0iOiIyMDI0LTEwLTAxVDE1OjA3OjQ1KzAzOjAwIiwicXJIZWFkZXJVVUlEIjoiYmQxMjA0OWItNjUxZC00MGEwLWIyYmMtZDZhMGY3ZTJiN2M3IiwicXJFeHRlbnNpb25VVUlEIjoiNjU0YWNkNjktNjAyYy00MzUxLTk1OTItODE0M2FlMjhkM2U0IiwicGF5bWVudCI6bnVsbH0.WJ5t8jtg2_6DPrxQNIcu50gsW7cDC8IMdjvOBO9wW3toIdeAljlMPxd_lLCWJiKXToRAVHU7a1EB4mLyzyw1iCcRadnsSqm21TrpDZWTjv3uL-XiMLrWOsGBf0aJJRFcGbysU_ym9YLonQMmYLF0voq39yAPMHO7CLCniSMhVdJ9Q5xnrq52y6Yn5YzefCNb2tAQ-erm-8_mCaF0DWd0UFhPA6TRXyV2l5GCkLbyhlUB9gVoVTdSN-XxA_1aoNTusheZPDH1InL03Bx3G8muaVxOMrMIsVCJJYAaTFKiQTBf0M49oTQpdPWeeS9wHaS7aSS3gUcFsOOEPavj7J8vxg"""
with open(VB_PUBLIC_KEY_PATH, mode='rb') as vb_public_key_file:
vb_public_key_pem = vb_public_key_file.read()
decoded_payload = VictoriabankMiaSdk.decode_callback(
callback_jwt=callback_jwt,
public_key_pem=vb_public_key_pem)
Perform a test QR payment
vb_test_pay_data = {
'qrHeaderUUID': vb_mia_create_qr_response['qrHeaderUUID']
}
vb_test_pay_response = vb_mia_api_request.test_pay(
data=vb_test_pay_data,
token=vb_mia_token)
Get payment details
vb_qr_extension_status_response = vb_mia_api_request.qr_extension_status(
qr_extension_id=vb_mia_create_qr_response['qrExtensionUUID'],
token=vb_mia_token)
Refund payment
vb_payment_reference: str = vb_qr_extension_status_response['payments'][0]['reference']
vb_transaction_id = vb_payment_reference.split('|')[3]
vb_transaction_reverse_response = vb_mia_api_request.transaction_reverse(
transaction_id=vb_transaction_id,
token=vb_mia_token)
Metadata
Release files for victoriabank-mia-sdk 1.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| victoriabank_mia_sdk-1.1.5.tar.gz | 22.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| victoriabank_mia_sdk-1.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.9 kB
Release files / victoriabank_mia_sdk-1.1.5.tar.gz
| Download URL | victoriabank_mia_sdk-1.1.5.tar.gz |
|---|---|
| Size | 22.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f42883a174ccbad528f315c538226ddf10d4f83425c93f4c685daa0e002b2066
|
|
BLAKE2b-256 checksum How to use checksums |
0b25c5ff7ba0eac9b3fa1d64bc94f5a80e6f0086e60db37722f5a11dded53973
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2025.
Transparency logRelease files / victoriabank_mia_sdk-1.1.5-py3-none-any.whl
| Download URL | victoriabank_mia_sdk-1.1.5-py3-none-any.whl |
|---|---|
| Size | 21.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
348740f1328e5aadd4a48c9a6484dcedccffdc5c8a6e9bb45e8b3cee761c09e7
|
|
BLAKE2b-256 checksum How to use checksums |
0214bd20d801b760345d3d3f41310da323f5350fc92947a096e2f99d4cf97dc2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 27, 2025.
Transparency log