How to Accept BaridiMob Payments on Your Website (and Confirm Them Automatically)
Updated · 7 min read · WadieaPay
Short answer
Show your CCP account (RIP) and the order amount at checkout, ask the customer for the reference number of their BaridiMob transfer, then confirm it from your server with the free baridimob SDK: it signs in to your BaridiMob account once, searches your history for that reference and tells you whether the payment arrived, is incoming and has the right amount.
How a BaridiMob payment works for a shop
- At checkout, your site shows your CCP account (RIP) and the exact amount.
- The customer sends the money from the BaridiMob app. BaridiMob gives them a 12-digit reference number.
- The customer types that reference into your site.
- Your server checks your BaridiMob history and marks the order as paid if the transfer is there.
Receiving the transfer is free for you; the customer pays the BaridiMob fee (12 to 24 DA per transfer). The only problem is step 4: done by hand, it is slow and receipt screenshots can be faked.
1. Install the SDK
WadieaPay's core is the open-source baridimob SDK (MIT license), available for TypeScript/JavaScript, Python and Dart/Flutter with the same features and names.
npm install baridimob # Node.js 18+
pip install baridimob # Python
flutter pub add baridimob # Dart / Flutter2. Sign in once
Sign in with your BaridiMob credentials. The first time on a new server, BaridiMob confirms the device with an SMS code; the session is then saved and reused, and renewed automatically when it expires.
import { createBaridiMob, fileStorage } from 'baridimob';
const bm = createBaridiMob({ storage: fileStorage('./.baridimob/session.json') });
const result = await bm.auth.login({ login: 'your-login', password: 'your-password' });
if (result.state === 'otp_required') {
await bm.auth.requestDeviceOtp(); // an SMS code is sent to your phone
await bm.auth.confirmDevice('123456'); // the code you received
}3. Verify a payment by reference and amount
const check = await bm.payments.verifyPayment({
refNum: '012345678901', // reference given by the customer
amount: 2500, // expected amount in DA
});
if (check.verified) {
// payment received: mark the order as paid
} else {
console.log(check.reason); // not_found, not_incoming, amount_mismatch or duplicate
}| Result | Meaning | What to do |
|---|---|---|
ok | Found, incoming, amount matches | Confirm the order |
not_found | No transfer with this reference yet | Ask the customer to check the reference, or retry a little later |
not_incoming | The transaction exists but is not money received | Refuse |
amount_mismatch | The amount differs from the order | Ask for the difference or refund |
duplicate | Several incoming transfers share this reference | Check by hand |
By default the search covers the last 30 days of your first account; options let you choose another account or period. Store every confirmed reference in your database and refuse it if it comes back, so one transfer cannot pay two orders.
4. Keep it secure
- The saved session is a live credential. Never commit it, share it or log it; encrypt it at rest in production.
- Reading your history never needs an SMS code. Moving money always requires a code that you pass explicitly, so a stolen session alone cannot send money.
- The SDK refuses plain HTTP, except for localhost during development.
- Run it on your own server: nothing passes through WadieaPay.
Limits to know
The SDK is an independent project, not affiliated with Algérie Poste. BaridiMob can change its service at any time, which can break it, so keep the SDK up to date and keep a manual fallback. If your customers mostly pay by card, compare card payment gateways in Algeria.
Frequently asked questions
Can I accept BaridiMob payments without a payment gateway?
Yes. Customers transfer money to your CCP account from the BaridiMob app, and you confirm each transfer by its reference number. WadieaPay's free baridimob SDK does the confirmation automatically from your server.
Is there a WooCommerce or Shopify plugin?
Not yet. Today you integrate the SDK in your backend (Node.js, Python or Dart). A plugin needs only a few calls: verify the reference and amount, then mark the order as paid.
Does WadieaPay hold my money?
No. Money goes straight from the customer's BaridiMob account to your CCP account. The SDK only reads your history to confirm the transfer, and it runs on your own server.
What if the customer types a wrong reference?
The check returns not_found. Ask the customer to copy the 12-digit reference from the BaridiMob receipt, or retry a few minutes later if the transfer was just made.
Accept BaridiMob payments for free
Install the open-source SDK and confirm every transfer automatically, from your own server.
Sources
More guides
Payment gateways in Algeria compared
SATIM, Chargily, Slick-Pay, SofizPay, PayPart, Guiddini and BaridiMob compared: fees, paperwork and which payments each accepts in Algeria in 2026.
Is there an official BaridiMob API?
Algérie Poste publishes no public developer API for BaridiMob. Here is what developers can use instead to read accounts and confirm payments.
