Skip to main content
Payment account · Morocco

The ChariPay payment account: a wallet with a RIB that you use like a real account

A payment account held by a Bank Al-Maghrib-licensed payment institution: funds available instantly, a RIB in your company's name, transfers, bill payments.

Start in test mode
  • Free, no commitment
  • Test mode from sign-up
  • No approval to wait for

A payment account in Morocco is an account held by a payment institution licensed by Bank Al-Maghrib, opened in a company's name and reserved for payment operations. At ChariPay, it is the account on which every successful payment — by card or in cash at an agency — is available instantly. It carries a RIB in your company's name; from it, you send bank transfers, pay bills, run telecom top-ups through the API and pay out to your bank whenever you decide. A wallet with a RIB, then: a payment account that you use like a real account, without it being a bank account — ChariPay is not a bank.

A payment account, not a holding balance

In forty words: the ChariPay payment account is an account held by Chari Money, a payment institution licensed by Bank Al-Maghrib under law 103-12, opened in your company's name, credited with your collections and used for your outgoing payment operations.

Moroccan law defines the object itself: a payment account is any account held in the name of a payment-services user and used exclusively for payment operations (law 103-12, article 16). It is therefore neither an internal balance at a technical provider that nobody supervises, nor a holding balance waiting for settlement: it is a regulated account, kept by an institution subject to the central bank's licensing and oversight, with an identified holder — your company.

Let us say it plainly, because the question often comes up as "Chari bank": ChariPay is not a bank, Chari Money is not a bank, and the payment account is not a bank account. A payment institution provides the payment services the law lists — fund transfers, card payments, transfers and direct debits on funds held in a payment account, among others — and may also carry out foreign-exchange operations (articles 15 and 16). Only banks can be authorized to receive funds from the public on demand or for a term of two years or less (article 12); funds recorded in a payment account, for their part, are ring-fenced, as the last question on this page explains. That narrow scope is precisely what makes the status legible: you know what the account does, and what it does not do.

To place the actors — who is the provider, who is the licensed institution, who is the gateway — the PSP in Morocco page details each role and how to check a license. Bank Al-Maghrib publishes the state of the sector on its Structure of the banking system page: it counted eighteen licensed payment institutions at the end of 2024.

The money is available instantly

As soon as a payment succeeds — a card authenticated with 3-D Secure on your checkout, a payment link paid from WhatsApp, a reference settled in cash at an agency of the Chari network — the amount is credited to your payment account and available. No next-day wait, no T+3, no money sitting idle until a settlement run: the balance the portal shows is the balance you can commit right now, to a transfer, a bill or a top-up.

One clarification avoids misunderstandings: "available instantly in the account" does not mean "instant bank transfer". The money is available in your ChariPay payment account; the payout to your bank account is a separate operation, described further down, with its own circuit. The two notions complement each other: the first gives you the cash position, the second moves it where you want.

In practice, for a shop that collects in the morning, the money from those sales can pay a supplier or an electricity bill at noon, without going through the bank. For a seasonal business, the high season pays its expenses straight from the account, and the low season lets the nightly automatic payout do the work. The Wallet and payouts page shows the journey from payment to payout, screen by screen.

A RIB in your company's name

The payment account carries a RIB in your company's name, with a PDF certificate you can download from the portal or through the API. This RIB is a real account identifier: you can give it to a customer, a partner or your accountant, and the account can receive transfers, not only your collections. A customer who prefers to pay by bank transfer, a partner topping up the cash position, a supplier refund: all of it lands in the same account, with the same traceability.

Through the API, the Wallet module exposes four operations: read the balance, retrieve the RIB, download the PDF certificate and fund the account. The API key travels in the X-CHARI-PAY-API-KEY header, on the single base URL https://api-psp.charipay.ma — in the sandbox as in production, the key selects the environment. You can try these calls with a chari_sk_test_… key you create yourself: Start in test mode opens a test payment account for you — free, with no time limit and no approval to wait for; sign-up is described further down.

bash
# The payment account's RIB, in the company's name
curl 'https://api-psp.charipay.ma/v1/wallet/account' \
  -H 'X-CHARI-PAY-API-KEY: chari_sk_test_...'

# The RIB certificate, as a PDF
curl 'https://api-psp.charipay.ma/v1/wallet/account/rib-document' \
  -H 'X-CHARI-PAY-API-KEY: chari_sk_test_...' \
  -o rib-certificate.pdf

# Fund the account: POST /v1/wallet/cash-ins (idempotency key required)
curl -X POST 'https://api-psp.charipay.ma/v1/wallet/cash-ins' \
  -H 'X-CHARI-PAY-API-KEY: chari_sk_test_...' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: cashin_20261002_001' \
  -d '{ "amount": 250 }'

In the sandbox, funding can be immediate: the response then carries the test balance, with no payment URL. Otherwise, and always in production, it returns a card-funding URL (paymentUrl), and the operationId only appears once the card has been submitted:

json
{
  "operationId": 1042,
  "status": "SUCCESS",
  "environment": "SANDBOX",
  "requestedAmount": 250,
  "fundedAmount": 250,
  "balance": 250,
  "currency": "MAD",
  "reference": "PL-4A6F01D233",
  "createdAt": "2026-10-02T09:15:00Z"
}

And to display the available balance in your back office before an outgoing operation, one call is enough:

javascript
const res = await fetch('https://api-psp.charipay.ma/v1/wallet', {
  headers: { 'X-CHARI-PAY-API-KEY': process.env.CHARIPAY_API_KEY },
});
const wallet = await res.json(); // balance in MAD, for the key's environment

All amounts are in dirhams, in major units with two decimals; timestamps are ISO-8601 UTC. Field details and examples in four languages are in the Wallet module documentation.

Transferring from the account

From the payment account, you send transfers to any Moroccan bank account. Here the payment account works like a real account, with the safeguards of a payment institution:

  1. 1You pick the beneficiary — a saved beneficiary with its RIB and an alias of your choosing, or a new beneficiary you add. Up to five favorite beneficiaries are reachable directly from the dashboard for a quick transfer.
  2. 2You enter the amount and a reason (sixty characters at most), which travels with the transfer.
  3. 3The portal shows a fee quote before any confirmation: a fixed fee per transfer, announced before you confirm, never discovered afterwards.
  4. 4You confirm — with a one-time code if you have enabled that validation; several approvers may be required depending on your company's configuration.
  5. 5The balance is debited immediately and the transfer moves to in progress; the portal indicates receipt by the beneficiary within 24 business hours. A rejected transfer is not debited.

Two rules are worth knowing before the first transfer. First, a security hold applies after a new beneficiary is added: it is a fraud safeguard, not slowness. Second, an executed transfer is final — it cannot be canceled, which is the normal counterpart of an immediate debit. The fee amount is not published on this page: the quote displayed in the portal, at the moment of the transfer, is what counts.

The guide bank transfer from the payment account walks through the flow screen by screen, with the edge cases — rejected beneficiary, multi-approver validation, per-beneficiary history.

Paying bills from the account

The payment account also pays your bills with referenced creditors — phone, water, electricity, vehicle tax, among others — straight from your available balance, without going through your bank. The flow fits in a few screens: you choose the creditor, enter your reference, the portal finds the outstanding bills, you select the ones to pay, then you validate the outgoing operation by entering the two codes you receive. A receipt is sent by SMS to the payer, and the payment shows in the account history like any other movement.

What changes for a small business is the circuit: the money collected in the morning pays the afternoon's electricity bill, with no intermediate transfer to the bank and no trip to a payment counter. The amount is debited from your available balance, with no additional fees. For a question about a bill, the creditors' support line answers on 115, with the operation's authorization code.

The guide paying bills from the payment account details the flow, the creditors covered and how to read the receipt.

The ChariPay card

For 50 MAD, order a ChariPay card linked to your payment account and pay with the money you collect.

Telecom top-ups through the API

The same balance covers telecom line top-ups, through the API: the payment account is debited for the top-up amount, and the result reaches you by signed webhook — topup.succeeded or topup.failed, with the usual deduplication on Chari-Event-Id. It is a useful building block for companies managing a fleet of lines, for resellers and for platforms that offer phone credit to their users. It integrates like every other API operation: same base URL, same authentication header, same error envelope with its correlationId.

Paying out to your bank when you decide

The payment account complements your bank; it does not replace it. Your bank account remains the place for your salaries, taxes, loans and your relationship with your banker; the payment account is the place for your collections and your payment operations. Between the two, the payout happens at your pace, in one of two ways:

  • Automatically, every night, as soon as a settlement account is configured in the portal: the balance leaves for your bank without any action on your part.
  • On demand, by transfer, when you decide the amount and the moment.

Every payout carries a reference that appears on your bank statement, which makes reconciliation verifiable: one line on the statement, one line in the export, the same reference. In the meantime, the money does not sit idle — it is available in the payment account for everything described above. On making reconciliation add up despite time zones and refunds, read Reconciling your collections.

If you wonder what an online bank could add, and what it does not add for a business collecting online or in cash, we wrote what an online bank does and does not do for collecting payments.

Payment account vs bank account: the differences

Both accounts have a RIB, both receive and send transfers; that is where the resemblance ends. The table compares the ChariPay payment account with an ordinary business account at a bank, on the criteria that matter to a merchant.

CriterionChariPay payment accountBank account
Who holds itChari Money, a payment institutionA bank
RegulatorBank Al-Maghrib (law 103-12, payment-institution status)Bank Al-Maghrib (law 103-12, bank status)
RIB in the company's nameYes, with a PDF certificateYes
Collecting on behalf of third parties (3-D Secure cards, cash at an agency, payment links)Yes, that is its purposeNot on its own: you need a separate collection service
Availability of collectionsThe instant a payment succeedsDepends on the provider and the settlement circuit
Outgoing transfersYes, to any Moroccan bank account, fee quote before confirmationYes
Bill paymentsYes, from the balance, no additional feesDepends on the bank's services
Refunding a customerYes, from the portal or the API, free of chargeNo: goes through the provider that collected
Credit, overdraftNo: an operation exceeding the balance is blockedDepends on the bank
UsePayment operations onlyCurrent account, savings, financing

The upshot is simple: the payment account does what a bank account alone does not do — collect from your customers by card and in cash at an agency, and make the money available instantly — and it does not do what a bank does — credit, overdrafts, savings. For anything touching your specific tax or legal situation, your accountant or counsel remains the only one who can advise.

Roles, traceability, exports

An account on which money is available instantly calls for controls to match. The portal separates viewing from acting through four roles — owner, manager, cashier, accountant. The cashier only collects: no balance, no transfers, no refunds. The accountant reads everything without triggering anything. The owner, or an authorized manager, triggers outgoing operations.

Sensitive actions follow the dual-validation principle: the person who requests is never the person who approves. Every action is written to a cryptographically chained audit log, with its author and date — the history cannot be rewritten. The Security page describes the whole setup: double-entry ledger, strong authentication, re-authentication before every sensitive action, continuous monitoring.

On the accounting side, every account movement carries the reference of the sale, refund or payout that explains it. The CSV export, from the portal or via GET /v1/transactions/export.csv, covers the period of your choice up to 10,000 rows per export — beyond that, split by period. Timestamps are in UTC: Morocco being UTC+1, your reconciliation tool has to convert before totaling a day. The Transactions module documents the export, cursor pagination and each operation's timeline; Getting paid online: the accounting checklist lists the decisions to make with your accountant before the first dirham.

If you run a network of points of sale, franchisees or agents, Distribution scales this model: one wallet per sub-merchant, caps, automatic sweeping of balances and dual-validated payouts.

How to open a payment account

Opening follows the natural order of an integration: test first, then get verified, then collect for real.

  1. 1Sign up on the portal: Start in test mode asks for three fields — your name, your work email, your company. You then receive an activation link by email and choose your password.
  2. 2Test mode opens immediately. No approval to wait for: you create your own chari_sk_test_… test key from the portal, you make a first payment with the test card (4918 9141 0719 5005, CVV 123, 3-D Secure code 555), and the test payment account gets credited just as the real one would. The sandbox is free, with no time limit.
  3. 3You build your KYB file from the portal — identity documents and trade register — reviewed with dual human validation. KYB only gates production; it never blocks testing.
  4. 4You go live: once the file is approved, the setup fee of 6,000 MAD incl. VAT is paid once, your chari_sk_live_… key is created, and the payment account receives your first real collections. Until production is enabled, a live key receives an explicit 403, PRODUCTION_ACCESS_NOT_ENABLED.

The commission per successful transaction is set after reviewing your file, and refunding a customer is free: the full grid is on the Pricing page. The merchant portal is available in French and in English.

Frequently asked questions

Is the ChariPay payment account a bank account?

No. It is a payment account, held by Chari Money, a payment institution licensed by Bank Al-Maghrib — not by a bank. It carries a RIB in your company's name, receives your collections and serves your payment operations: transfers, bills, top-ups, payouts. It complements your bank; it does not replace it: your bank account remains necessary for everything related to credit and savings.

Who holds the account, and in whose name is it opened?

The account is held by Chari Money, a payment institution licensed by Bank Al-Maghrib, and opened in your company's name, identified by the KYB file approved before production. The RIB is in that name, and so is the PDF certificate. It is not an internal balance at a technical provider: it is a payment account within the meaning of law 103-12, with a holder and a supervised account keeper.

When is my money available?

The instant a payment succeeds, whether it is a card authenticated with 3-D Secure or a reference settled in cash at an agency of the Chari network. The amount is credited to the payment account and usable right away for a transfer, a bill or a top-up. The payout to your bank account is a separate operation, automatic every night if a settlement account is configured, or on demand.

Can I receive transfers on the payment account's RIB?

Yes. The payment account's RIB is in your company's name and also works for receiving: a customer who prefers to pay by bank transfer, a partner topping up the cash position, a supplier refunding you. You share it along with its PDF certificate, downloadable from the portal or through the API (GET /v1/wallet/account/rib-document). Funds received join the same balance, with the same traceability as your collections.

How much does a transfer from the account cost?

A fixed fee per transfer, shown in the portal as a quote before you confirm: you see the amount, then you validate or not. We do not publish that amount on this page because the quote at the moment of the transfer is what counts. Bill payments, for their part, are debited from your balance with no additional fees, and refunding a customer remains free.

Can my balance go negative?

No. The payment account offers neither overdraft nor credit: a transfer, a bill or a top-up exceeding the available balance is blocked rather than opening a silent overdraft. The same goes for a refund: if the balance does not cover it, the operation is refused and you are informed. You then decide whether to fund the account or wait for the next collections.

Do I still need a bank?

Yes. The payment account does not replace your bank; it complements what the bank does for you. Your bank account remains the destination of payouts and the home of credit and savings. The payment account, for its part, collects from your customers by card and in cash at an agency, makes the money available instantly and executes your everyday payments. The two work together, and the nightly payout links them.

Is my money regulated?

Yes, under the framework for payment institutions. Law 103-12 (article 17) requires that funds recorded in payment accounts be deposited in a global, separate and individualized account with a credit institution, and be distinctly identified in the payment institution's books. Chari Money is licensed and supervised by Bank Al-Maghrib in that capacity. For what this means in your specific situation, your counsel remains the only one who can advise.

Next step

Start in test mode gives you a test payment account, credited from your first payment with the test card, free of charge and with no time limit. Then browse Wallet and payouts to see the account in the portal, and the Wallet module if your back office needs to read the balance or the RIB through the API.

Sources

Updated on October 2, 2026

Read next

Ready to get paid in Morocco?

Create your account and integrate in test mode today — or tell us about your business.

  • Free, no commitment
  • Test mode from sign-up
  • No approval to wait for