Files
baya-monorepo/product/payments/bnpl-landscape.md
T
2026-06-24 01:32:46 +03:30

6.4 KiB
Raw Blame History

← Payments overview

BNPL Landscape & the Full-Upfront Finding

See also the BNPL data model (../data-model/08-bnpl.md) and the business view (../business/09-installments-bnpl.md).

4. BNPL landscape — comparison

All six are Iranian. The structurally important fact (full-upfront-to-merchant, provider bears default risk) holds for every provider-financed option; Lendo is the outlier (bank-financed, customer pays interest).

Provider Settlement model Who bears financing cost Customer plan (installments / tenor / interest) Credit ceiling Merchant fee Service / marketplace eligibility Integration Confidence
SnappPay (اسنپ‌پی) Full-upfront, single lump minus commission; provider bears default risk Merchant (commission) 4 installments / 4 months (1 at purchase + 3 monthly); interest-free ~20M Toman (→~50M good payers); separate bank-credit product up to 100M Toman, 1224 mo, carries bank interest Undocumented (anecdotal ~715% + ~10% VAT; one merchant cited 15%); per-contract config Services incl. "بعضی خدمات پزشکی" eligible; in-person/appointment OK. Multi-vendor re-disbursement UNCONFIRMED API + IPG redirect (OAuth → eligible → token → verify → settle → revert/cancel/update/status) High (model) / Medium (fee, eligibility)
Digipay (دیجی‌پی) Full-upfront to contracted merchant; provider bears default risk Customer bears markup; merchant pays acquiring commission 1-month (interest-free) + 4-installment (~48% on installments 24) + 3/6/9/12-mo loan Varies widely by product/campaign (monthly ~130M Toman; 4-inst up to ~50200M; loan up to 2bn IRR) توافقی (negotiable), settlement-speed dependent; sells early settlement as a paid add-on Explicit services (travel, hotels, insurance, dental); single contracted merchant, no sub-merchant split UPG: ticket → redirect → callback → verify; deliver-confirm then refund. Type codes IPG=0/Wallet=11/Credit=5/BNPL=13/Credit-Card=24 High (model, API) / Uncertain (fee, mid-plan mechanics)
Tara (تارا) Provider-financed, full amount to seller Merchant (interest-free to customer) 2 interest-free installments, starting 1 month after purchase Up to 20M Toman (research's "10M / 2-month" is OUTDATED); other tiers 5M / 10M / 100M / 150M Per-contract Interest-free (بدون سود) standard tier API/gateway Medium
Torob Pay Full-upfront, cash to seller Merchant 4 equal installments, 25% down, interest-free New users ~12M Toman → 35M Concrete: 6% + VAT = 6.6% per order Third-party explainers (not first-party docs) Gateway Medium (firm fee)
ZarinPlus (ZarinPal) Provider-financed BNPL inside the ZarinPal gateway; standard ZarinPal merchant settlement ~T+1 Merchant 4 installments ~2M Toman (ID only) → 515M with history → up to 20M with cheque/promissory note ZarinPal gateway ~1% (cap ~4000 Toman) + per-txn; BNPL-specific terms not confirmed Inside ZarinPal IPG Gateway / تسهیم Medium
Lendo Bank-financed (Bank Ayandeh); merchant effectively gets full value CUSTOMER (~1823% interest + ~5% upfront service fee, often non-refundable) 6 / 9 / 12 months — a POS loan, not interest-free BNPL Bank-set POS loan AVOID for MVP

Key contrast: Torob Pay's 6.6% (6% + VAT) is the only published rate; SnappPay's true rate cannot be inferred from it and must be treated as negotiated per-contract config. Lendo's customer-borne interest + non-refundable fee make mid-engagement cancellations leave the customer out of pocket — a poor fit for short, cancellable nursing visits.


5. The decisive finding: full-upfront settlement

The provider pays the merchant the full amount minus commission in ONE lump and bears default risk. The customer's installments are owned by the provider and are decoupled from Balinyaar's escrow/payout. (VERIFIED — SnappPay CEO: "ارایه‌دهنده سرویس تمام پول پذیرنده را پرداخت کرده و هیچ ریسکی سمت پذیرنده نیست"; Digipay first-party bpg page: "مبلغ حاصل از فروش را یک‌جا دریافت کنید … نگران ریسک عدم بازپرداخت اقساط نباشید". No source described any tranched-to-merchant model among provider-financed BNPLs.)

Therefore, in Balinyaar's books, a BNPL order is identical to a card payment that lands net-of-fee in one inbound settlement. We DO NOT model customer-installment tracking (installment_entries, per-installment webhooks, default propagation). This removes the fragile subsystem the original model flagged as unresolved.

Verified caveats that must remain CONFIGURABLE / UNCERTAIN

  • Settlement TIMING is NOT instant. Cadence is contract-defined (daily / T+13 / weekly / 15-day / occasionally longer — one merchant alleged ~4 months), and the most concrete SnappPay statement gates settlement on the customer's first installment ("پس از واریز اولین قسط"). Digipay even sells early settlement as a paid feature, implying its baseline is delayed. Model a per-transaction settled_at and a per-provider settlement-lag; gate weekly nurse payouts on settlement actually received, so you never pay a nurse before you hold the cash.
  • Commission rate is per-contract config, never hardcoded. SnappPay publishes no public rate; read the actual deducted amount from each settlement record.
  • Marketplace re-disbursement eligibility is publicly UNCONFIRMED. SnappPay's and Digipay's documented model is single-merchant-receiver. Design so the provider pays Balinyaar (the merchant-of-record) one lump, and Balinyaar does the internal escrow→nurse allocation itself. Confirm any per-nurse routing directly with provider sales. Even Snapp Doctor's own home-nursing page does not advertise SnappPay installments — service eligibility is plausible, not confirmed for an in-home individual-nurse marketplace.
  • Onboarding requires BOTH جواز کسب AND eNamad (اینماد) for the Balinyaar entity (the original research omitted eNamad). For Digipay, an activity license is mandatory only for "sensitive trades" (صنوف حساس); home-healthcare may be treated as one — confirm.