Last modified by Mihail Opinca on 2026/09/05 00:02

Show last authors
1 {{box}}
2 **Webinar: Implementing the MIA Plati Instant System**
3 {{/box}}
4
5 == Introducing the MIA Plati Instant System ==
6
7 MIA Plati Instant means not only transfers, but also instant purchases. No more questions: "Where is my card?" or "Where is the nearest ATM?". Forget about cash! MIA is the universal payment method, without classic POS terminals and without worrying about the rest.
8
9 Through the system created by the National Bank, you can pay for purchases in stores, at the market, in the gym or at the beauty salon.
10
11 * How does it work? You scan the QR code, choose your financial application and confirm the payment. Or, even faster, choose the "Pay via QR" option directly from the banking application.
12
13 MIA is an innovative tool that brings a new notion of time: transfers are instantaneous (maximum 10 seconds), being much faster than previous systems.
14
15 == Who can pay with MIA? ==
16
17 Any citizen of the Republic of Moldova who has a payment account and a mobile banking application at any banking institution or non-bank payment service provider (PSP). Today we have over 800,000 users — an enormous potential of customers who can pay without depending on a physical card.
18
19 == Main Advantages: Speed, Cost and Simplicity ==
20
21 1. **Speed**: Money arrives in the business account in no more than 10 seconds. Ideal for paying suppliers or other immediate financial obligations.
22
23 2. **Low costs**: Commissions are significantly lower than the average of other payment instruments (approximately 1.5%).
24
25 * Category 1 (0.5%): Utilities, education, public transport, hospitals.
26 * Category 2 (0.7%): Most commercial businesses. According to NBM Decision 140, from January 1, this commission decreased from 0.8% to 0.7%.
27
28 3. **Simplicity**: Does not require special POS terminals or fixed monthly fees. Connection is free.
29
30 == MIA Features for Business ==
31
32 * **QR Code Static**: Without a preset amount, it has a long validity. The customer enters the amount.
33 * **Dynamic QR Code**: Generated for a specific transaction, includes the amount and has a short validity.
34 * **Hybrid QR Code**: Excellent for physical locations (cashiers). The code is displayed on a holder, and the seller associates each new sale with that code.
35 * **E-commerce (Online Payments)**: On the checkout page, the customer selects MIA, is redirected to the banking application and confirms the payment without entering card details.
36 * **Payment Link**: Ideal for sales via chat, social media or marketplaces.
37 * **Request to Pay (RtP)**: The business sends a notification directly to the customer's application (e.g. for fitness subscriptions or monthly courses).
38
39 == Q&A Session ==
40
41 **Victoria (Community Association):**
42 Hello! Does MIA also work for donations? We are a public association and we want to know if it is accepted by the Tax Inspectorate.
43
44 **Dorina Miron:**
45 Yes, it works very well for donations. In 2025, we worked on a project with charities that have already implemented MIA. Static QR codes are widely used, where the donor enters any amount they want.
46
47 **Alexandra (Fintech Team):**
48 To clarify: MIA payments are treated the same as card payments. If the law requires you to issue a primary document (confirmation) for the donation, the process remains the same, regardless of whether the money comes by card, cash or MIA. For remote collections, it is not necessary to use cash and control equipment (ECC) to issue a physical fiscal receipt on the spot, but you must deliver a confirmation to the customer/donor.
49
50 **Valeriu (Contum Soft):**
51 We create mobile applications. Can we integrate MIA directly via API into the client's application (e.g. a dental clinic), without going through the entire classic e-commerce interface?
52
53 **Alexandra:**
54 Yes, it is possible. You can ask the payment service provider only for the API for MIA integration. For loyal customers, we recommend the RtP (Request to Pay) functionality. It is much more convenient for a client who makes an appointment to receive the payment request for the advance directly in the application.
55
56 ---
57
58 **Link To Download Android App with MIA payment support: https://github.com/Unisim-Soft-Com/Mia_Android/releases/download/SmartOne/UnaMia_v1.0_SmartOne.apk
59
60 ---
61
62 ==MIA - Plati Instante Product Presentation==
63
64 {{html}}
65 <div style="text-align: center;">
66 <iframe width="760" height="415" src="https://www.youtube.com/embed/mIyEza8Kg3c" title="Webinar: Implementing the MIA Plati Instant System" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
67 </div>
68 {{/html}}
69
70 --
71
72 ==Example of technology use==
73
74 {{html clean="false"}}
75 <div style="max-width:520px; margin:40px auto; padding:35px; background:#ffffff; border:1px solid #e2e8f0; border-radius:12px; box-shadow:0 6px 24px rgba(0,0,0,0.06); font-family:system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;">
76 <h2 style="text-align:center; margin:0 0 24px; font-size:1.9rem; font-weight:700; color:#0f172a;">MIA Payment Demo</h2>
77 <p style="text-align:center; margin:0 0 32px; color:#475569; line-height:1.5;">Fill in the details and click the button to generate the payment QR code.</p>
78
79 <form id="miaPaymentForm_en" action="https://api.unisim-soft.com/telegram/unisim_BileteGarileMD/mia-qr-form.php" method="GET" target="_blank" style="margin:0;">
80 <!-- Selected language -->
81 <input type="hidden" name="lang" value="en">
82 <!-- Hidden 'tip' field passing final amount to backend -->
83 <input type="hidden" name="tip" id="real_tip_en" value="5">
84
85 <div style="margin-bottom:24px;">
86 <label for="select_tip_en" style="display:block; margin-bottom:8px; font-weight:600; color:#334155; font-size:1rem;">Ticket / Payment Type</label>
87 <select id="select_tip_en" style="width:100%; height:50px; border:1px solid #cbd5e1; border-radius:8px; font-size:1rem; background:#f8fafc; padding:0 12px; cursor:pointer;">
88 <option value="usem_custom">USEM Contract Advance (custom amount - min. 1000 MDL)</option>
89 <option value="5">Concert - 50 MDL (demo: 5 MDL)</option>
90 <option value="8">1-Day Festival - 80 MDL (demo: 8 MDL)</option>
91 <option value="15">Festival Pass - 150 MDL (demo: 15 MDL)</option>
92 <option value="25">Discounted Ticket (Student) - 25 MDL</option>
93 </select>
94 </div>
95
96 <!-- Dynamic Custom Amount Field -->
97 <div id="custom_amount_box_en" style="display:none; margin-bottom:24px; background:#f0fdf4; border:1px solid #86efac; border-radius:8px; padding:16px;">
98 <label for="custom_amount_en" style="display:block; margin-bottom:8px; font-weight:600; color:#166534; font-size:1rem;">
99 USEM Advance Amount (MDL) <span style="color:#dc2626;">*</span>
100 </label>
101 <input type="number" id="custom_amount_en" min="1000" step="1" value="1000" placeholder="e.g.: 1000, 1500, 2500"
102 style="width:95%; padding:12px; border:1px solid #86efac; border-radius:8px; font-size:1.05rem; font-weight:600; color:#0f172a; background:#ffffff;">
103 <small style="display:block; margin-top:6px; color:#15803d; font-size:0.85rem;">
104 * Minimum advance payment is <strong>1000 MDL</strong> according to the contract.
105 </small>
106 </div>
107
108 <!-- Quantity field -->
109 <div id="cantitate_box_en" style="margin-bottom:24px;">
110 <label for="cant_input_en" style="display:block; margin-bottom:8px; font-weight:600; color:#334155; font-size:1rem;">Quantity</label>
111 <input type="number" id="cant_input_en" name="cant" value="1" min="1" style="width:95%; padding:12px; border:1px solid #cbd5e1; border-radius:8px; font-size:1rem; background:#f8fafc;">
112 </div>
113
114 <div style="margin-bottom:32px;">
115 <label id="nume_label_en" for="nume_input_en" style="display:block; margin-bottom:8px; font-weight:600; color:#334155; font-size:1rem;">Customer name (optional)</label>
116 <input type="text" id="nume_input_en" name="nume" placeholder="e.g.: John Doe" style="width:95%; padding:12px; border:1px solid #cbd5e1; border-radius:8px; font-size:1rem; background:#f8fafc;">
117 </div>
118
119 <button type="submit" style="width:100%; padding:14px; background:#28a745; color:#ffffff; border:none; border-radius:8px; font-size:1.1rem; font-weight:600; cursor:pointer; transition:background 0.2s;">
120 Generate payment QR code
121 </button>
122 </form>
123
124 <p style="text-align:center; margin:32px 0 0; color:#64748b; font-size:0.92rem; line-height:1.5;">
125 You will be redirected to the page displaying your generated QR code.<br />
126 Valid for a few minutes — scan it promptly using your mobile banking app.
127 </p>
128 </div>
129
130 <script type="text/javascript">
131 (function() {
132 var sel = document.getElementById('select_tip_en');
133 var customBox = document.getElementById('custom_amount_box_en');
134 var customInp = document.getElementById('custom_amount_en');
135 var cantBox = document.getElementById('cantitate_box_en');
136 var cantInp = document.getElementById('cant_input_en');
137 var numeLabel = document.getElementById('nume_label_en');
138 var numeInp = document.getElementById('nume_input_en');
139 var realTip = document.getElementById('real_tip_en');
140 var form = document.getElementById('miaPaymentForm_en');
141
142 function syncUI() {
143 if (sel.value === 'usem_custom') {
144 customBox.style.display = 'block';
145 cantBox.style.display = 'none';
146 cantInp.value = '1';
147 numeLabel.innerHTML = 'Student name / Contract no. <span style="font-weight:normal; color:#64748b;">(recommended)</span>';
148 numeInp.placeholder = 'e.g.: John Doe - Contract #45';
149 realTip.value = customInp.value || '1000';
150 } else {
151 customBox.style.display = 'none';
152 cantBox.style.display = 'block';
153 numeLabel.innerHTML = 'Customer name (optional)';
154 numeInp.placeholder = 'e.g.: John Doe';
155 realTip.value = sel.value;
156 }
157 }
158
159 sel.addEventListener('change', syncUI);
160
161 customInp.addEventListener('input', function() {
162 if (sel.value === 'usem_custom') {
163 realTip.value = customInp.value;
164 }
165 });
166
167 form.addEventListener('submit', function(e) {
168 if (sel.value === 'usem_custom') {
169 var sum = parseFloat(customInp.value);
170 if (isNaN(sum) || sum < 1000) {
171 e.preventDefault();
172 alert('Error: For "USEM Contract Advance", the minimum amount is 1000 MDL.');
173 customInp.focus();
174 return false;
175 }
176 realTip.value = sum;
177 } else {
178 realTip.value = sel.value;
179 }
180 });
181
182 syncUI();
183 })();
184 </script>
185 {{/html}}
186
187 ---