Businesses & providers
Create businesses, connect bKash and Nagad in Partner or Custom mode, and manage API keys and webhooks.
A business is a single brand or storefront under your account. Each business has its own payment providers, API keys, webhook settings, and payout bank account. You can run as many businesses as you need — they're billed and reconciled together at the account level.
Creating a business
Once your account is Active (see Getting started), create a business from the dashboard. You'll set:
- Display name — what customers see on the checkout and invoice pages
- Category, district, city — optional details about your business
- Contact phone / email — optional public contact info
- Logo — optional; shown on your invoices and payment pages
Creating your first business is what moves your account from Verified to Active.
Partner mode vs Custom mode
For each provider on each business, you choose how it connects:
| Partner mode | Custom mode | |
|---|---|---|
| MFS contract | Uses ShadhinPay's relationship — none of your own needed | You bring your own merchant account |
| Setup | Enabled by default, nothing to configure | Enter your provider credentials |
| Fees | Free tier + small per-transaction fee after (see Quota & billing) | You pay your provider directly; ShadhinPay charges a platform fee |
| Funds | Settled to you by ShadhinPay | Settled to you directly by the provider |
New businesses start with Partner mode enabled for every supported provider, so you can take payments immediately.
bKash and Nagad today
ShadhinPay supports bKash and Nagad at launch. More providers (Rocket, Upay, Pathao Pay, mCash) slot in behind the same setup as commercial agreements close — when they do, you'll be able to enable them the same way.
Switching a provider to Custom mode
If you already hold a contract with a provider, switch that provider to Custom mode and enter your credentials (for example, your bKash app key, app secret, username, password, and merchant number). ShadhinPay runs a quick connection check against the provider's sandbox before saving — if the credentials are wrong, the change is rejected and nothing is stored.
Your credentials are encrypted at rest and never shown again after you save them. You can re-run the connection check at any time from the provider's row.
API keys
API keys let your website or app talk to the ShadhinPay API on behalf of a business. Each key is either:
- Live (
sk_live_…) — moves real money. You must be Active to create one. - Test (
sk_test_…) — for the sandbox, no real money. Available any time.
A key's full value is shown only once, when you create it. Store it securely — ShadhinPay keeps only a hashed copy and the last four characters (so you can tell keys apart in the list). Creating, rotating, or revoking a key requires two-factor authentication.
- Rotate a key to replace it without downtime — the old key keeps working for a 24-hour grace period while you roll out the new one, then stops.
- Revoke a key immediately if it's compromised.
See Authentication for how developers use these.
Webhooks
Webhooks notify your systems when something happens — a payment completes, an invoice is paid, a payout settles. Configure a webhook per business:
- Set your endpoint URL (must be reachable over HTTPS in live mode).
- Choose which events to receive (sensible defaults are pre-selected).
- ShadhinPay sends a test ping to confirm your endpoint is reachable before saving — if it can't reach you, the URL isn't saved.
You also get a signing secret (shown once) so your code can verify that incoming webhooks genuinely came from ShadhinPay. Setting a webhook URL or rotating the secret requires two-factor authentication.
The full delivery contract — payload shape, signature verification, retries — is in the developer Webhooks guide.
Managing multiple businesses
- Each business has independent providers, keys, webhooks, and payout account.
- Your free transaction quota is shared across all businesses on the account (see Quota & billing).
- The dashboard has an overview across all businesses plus a per-business drill-down (see Analytics & exports).
Next steps
- Accepting payments
- Balance & payouts
- For integration: Developer authentication