Python SDK for maib MIA QR API
Project description
Python SDK for maib MIA QR API
Installation
To easily install or upgrade to the latest release, use pip.
pip install --upgrade maib_mia_sdk
Getting started
Import SDK:
from maib_mia_sdk import MaibMiaSdk, MaibMiaAuthRequest, MaibMiaApiRequest
Add project configuration:
import os, datetime
MAIB_MIA_CLIENT_ID = os.getenv('MAIB_MIA_CLIENT_ID')
MAIB_MIA_CLIENT_SECRET = os.getenv('MAIB_MIA_CLIENT_SECRET')
MAIB_MIA_SIGNATURE_KEY = os.getenv('MAIB_MIA_SIGNATURE_KEY')
SDK usage examples
Get Access Token with Client ID and Client Secret
maib_mia_auth = MaibMiaAuthRequest \
.create(base_url=MaibMiaSdk.SANDBOX_BASE_URL) \
.generate_token(client_id=MAIB_MIA_CLIENT_ID, client_secret=MAIB_MIA_CLIENT_SECRET)
maib_mia_token = maib_mia_auth['accessToken']
Create a dynamic order payment QR
maib_mia_qr_data = {
'type': 'Dynamic',
'expiresAt': (datetime.datetime.now() + datetime.timedelta(hours=24)).isoformat(),
'amountType': 'Fixed',
'amount': 50.00,
'currency': 'MDL',
'orderId': '123',
'description': 'Order description',
'callbackUrl': 'https://example.com/callback',
'redirectUrl': 'https://example.com/success'
}
maib_mia_api_request = MaibMiaApiRequest.create(base_url=MaibMiaSdk.SANDBOX_BASE_URL)
maib_mia_create_qr_response = maib_mia_api_request.qr_create(
data=maib_mia_qr_data,
token=maib_mia_token)
Validate callback signature
callback_data = {
"result": {
"qrId": "c3108b2f-6c2e-43a2-bdea-123456789012",
"extensionId": "3fe7f013-23a6-4d09-a4a4-123456789012",
"qrStatus": "Paid",
"payId": "eb361f48-bb39-45e2-950b-123456789012",
"referenceId": "MIA0001234567",
"orderId": "123",
"amount": 50.00,
"commission": 0.1,
"currency": "MDL",
"payerName": "TEST QR PAYMENT",
"payerIban": "MD88AG000000011621810140",
"executedAt": "2025-04-18T14:04:11.81145+00:00",
"terminalId": null
},
"signature": "fHM+l4L1ycFWZDRTh/Vr8oybq1Q1xySdjyvmFQCmZ4s="
}
validate_callback_result = MaibMiaSdk.validate_callback_signature(
callback_data=callback_data,
signature_key=MAIB_MIA_SIGNATURE_KEY)
Perform a test QR payment
maib_test_pay_data = {
'qrId': maib_mia_create_qr_response['qrId'],
'amount': maib_mia_qr_data['amount'],
'iban': 'MD88AG000000011621810140',
'currency': maib_mia_qr_data['currency'],
'payerName': 'TEST QR PAYMENT'
}
maib_mia_test_pay_response = maib_mia_api_request.test_pay(
data=maib_test_pay_data,
token=maib_mia_token)
Get payment details
maib_mia_payment_details_response = maib_mia_api_request.payment_details(
pay_id=maib_mia_test_pay_response['payId'],
token=maib_mia_token)
Refund payment
maib_mia_pay_refund_data = {
'reason': 'Test refund reason'
}
maib_mia_refund_details_response = maib_mia_api_request.payment_refund(
pay_id=maib_mia_test_pay_response['payId'],
data=maib_mia_pay_refund_data,
token=maib_mia_token)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
maib_mia_sdk-1.0.7.tar.gz
(19.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file maib_mia_sdk-1.0.7.tar.gz.
File metadata
- Download URL: maib_mia_sdk-1.0.7.tar.gz
- Upload date:
- Size: 19.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df1f3a92b0feb1142f573b86b8b49ee01041b1afa937b082242ba7e827a39440
|
|
| MD5 |
7ab9039cf0a97436ad63117737b51e36
|
|
| BLAKE2b-256 |
9c554bf59562394fd169f8e8cf39704214bbd599f649023551e6f022ba83685a
|
File details
Details for the file maib_mia_sdk-1.0.7-py3-none-any.whl.
File metadata
- Download URL: maib_mia_sdk-1.0.7-py3-none-any.whl
- Upload date:
- Size: 19.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18e2411d0ac7aed4138bf605ec68a3edbe5af7d8056ffac28b58bbdadeb7f18d
|
|
| MD5 |
8e7d56299f9df39e82978f100e0c6d63
|
|
| BLAKE2b-256 |
880bc96194c8caccc5731029d01888a64b15992bfca444e8f4f69b45b38d5798
|