Free is sandbox-only for SMS - each live-mode event is logged as
skipped_free_plan so you can see what would have gone out, but never contacts the provider. Growth and Pro include a monthly allowance of live SMS receipts (200 and 1,000 respectively) - see Plans and limits.What triggers an SMS
A customer phone number must be present on the checkout session, payment, or billing customer for SMS to fire - there’s no separate phone-collection step.
Sandbox testing - logged, never delivered
In test mode, SMS is never delivered. Each one is logged in your SMS history with the full text andskipped_sandbox, so you can see exactly what would be sent and to which number.
This matches the default sandbox email behavior and our privacy policy commitment: customer-facing test messages are recorded but not delivered. Billing has one narrow exception for invoice emails addressed to your own PayBridgeNP account email, capped at 50 deliveries per month.
To verify the real send path, use your sk_live_… key and a real phone number you control. Live sends require a Growth plan or higher, and count against that plan’s monthly allowance.
Live SMS allowance (live mode)
In live mode, Free never sends SMS (logged asskipped_free_plan). Growth and Pro get 200 and 1,000 live sends a month, reset each calendar month. After that, live sends use any SMS credits you have; without enough credits they are logged as skipped_live_quota and not delivered. Payments are never affected, only the receipt SMS. Skipped rows still show the text that would have been sent.
In sandbox mode, no SMS is ever delivered regardless of plan - dispatches are logged only (status skipped_sandbox), and sandbox sends never count against your live allowance.
When you upgrade, live events from the moment of upgrade onward send for every template you have turned on, against your new plan’s allowance. Payment-success SMS stays off until you turn it on (see below). There’s no backfill of skipped sends.
When you downgrade, the next live event after your billing period ends is evaluated against your new plan’s allowance (zero for Free, which produces skipped_free_plan again; a lower monthly figure for Growth). No SMS is held in a queue.
Phone number format
The SMS API expects 10-digit Nepali mobile numbers. These formats are accepted and normalised:9XXXXXXXXX(10 digits, starts with 96–99) - used as-is977XXXXXXXXXX(13 digits with country code) - country code stripped+977XXXXXXXXXX(E.164) - formatting and country code stripped
skipped_invalid_phone with the original value preserved for debugging.
Viewing SMS history
The SMS history page in your dashboard (Account → SMS) shows every send attempt for the last 30 days, including suppressed ones. Each row carries:- Status pill -
sent,failed,skipped_sandbox,skipped_sandbox_quota,skipped_free_plan,skipped_live_quota,skipped_rate_limited,skipped_invalid_phone,skipped_template_disabled, orskipped_no_provider - Template - which event triggered it
- Recipient - the normalized phone number
- Mode -
liveorsandbox - Body preview - the exact text that was (or would have been) sent
- Timestamp
Body templates
Bodies are short, plain text, optimized to fit a single SMS segment (160 ASCII characters). They include:- The amount in NPR (e.g.
NPR 1,500) - Your merchant name as registered in PayBridgeNP
- For invoice reminders: a short hosted-token URL the customer can click to pay
Cost
SMS receipts are included up to the monthly allowance (Growth 200, Pro 1,000), with no per-message charge. Past it, sends use SMS credits, which plans with SMS can buy; without credits they are skipped, never billed.Failure modes
Privacy and retention
SMS history records each message’s text, recipient and status, including skipped sends, so you can see what customers received. The text holds nothing beyond what the payment, refund or invoice already shows.Turning templates on and off
Growth and Pro merchants can turn individual templates on or off in the dashboard’s SMS settings (e.g. send refund SMS but not payment-success SMS). A template that is off logs subsequent events asskipped_template_disabled and does not call the provider.
Payment-success SMS is off by default for new accounts: turn it on in the SMS settings to send customers a receipt by text. Accounts that existed before this change keep the setting they had. Moving from a paid plan to Free also turns it off, so after upgrading again you choose whether to send receipts. The other templates (failed payments, refunds, invoice reminders) are on by default.
To disable SMS entirely, downgrade to the free plan or contact support to apply a per-merchant override.