Skip to main content

Separate charges

Your Kapso plan includes a message allowance for using the platform. Meta separately charges for certain delivered WhatsApp messages. A message can count toward your Kapso allowance and also have a Meta fee. Meta’s price depends on the message category and the recipient’s market. See WhatsApp pricing for details.

Kapso credits

Kapso pays Meta for billable messages and deducts the customer charge from your project credits. For USD WABAs using Kapso messaging infrastructure, the customer charge is Meta’s published USD price. Enabled non-USD WABAs also include the FX margin shown in Kapso. This billing mode applies to the entire WhatsApp Business Account (WABA), including every number in it. All of those numbers must remain in the same Kapso project. You can connect Kapso billing with a zero balance and add credits later. Potentially paid sends pause when the project does not have enough credits.

Service messages

Non-template messages are billed by Meta as the service category since October 1, 2026. Because Meta only reports whether a delivery was billable or inside its free allowance after the fact, Kapso does not hold credits up front for a service send. Service sends are allowed while the balance is positive, and the charge is settled once Meta reports the delivery. If a balance sync finds the project at or below zero and the project already has a settled service charge, Kapso pauses potentially paid sends on every number in the WABA with the reason service_credits_exhausted. Adding credits lifts that pause. While it is active, service sends are rejected even if they might have turned out free, because the classification is only known after delivery. Reactions stay free and are never paused, and templates keep their existing credit check. Service billing also requires Meta’s published service rate for the recipient’s market and a supported WABA timezone. Sends are rejected with a service_-prefixed code when that information is unavailable rather than being charged at a guessed rate. The send endpoint returns 402 with that code. For a Multi-partner Solution using the Tech Provider’s infrastructure, Kapso does not control the send path. Usage is deducted after Meta reports it through Pricing Analytics, so charges can appear several minutes after messages are sent. Keep enough prepaid balance for usage between checks. Messages sent through the Tech Provider’s infrastructure include a 5% managed billing fee on top of Meta’s published USD list rate. This fee is separate from any FX margin.

Account currency

Meta assigns the billing currency of a WABA, and it cannot be changed in Kapso. Project credits, charges, and invoices stay in USD regardless of that currency. For USD accounts, no FX margin applies. For non-USD accounts, the charge includes an FX margin (5% at launch). The exact margin for your account is shown on the WhatsApp billing card in your project settings. A separate managed billing fee applies when messages run through the Tech Provider’s infrastructure. Kapso enables non-USD accounts one currency at a time. If your account’s currency is not enabled yet, connecting Kapso credits is blocked with unsupported_currency and the WABA stays on direct Meta billing. If Meta changes the account’s currency after Kapso billing is connected, potentially paid sends pause until the change is reviewed. Free messages are unaffected.

Availability

Kapso billing is available for eligible WABAs connected with Kapso’s default Meta app. A Tech Provider’s own Meta app is also eligible when the WABA belongs to an active Multi-partner Solution with Kapso. A standalone custom Meta app is not eligible. After billing is connected, moving the WABA to another project or changing its payment source requires support. If you want to stop using Kapso credits and pay Meta by card, plan for a new WABA and phone-number migration. Meta does not currently support switching an existing WABA from a partner shared credit line to a card, even after the credit allocation is revoked. See Payment issues before making changes. If the WABA already has its own Meta payment method, Meta rejects the Kapso credit line and the WABA stays on direct Meta billing. Setup completes normally and sends are not paused. The setup link’s billing mode is updated to customer_managed.

Sandbox service messages

Delivered sandbox service messages use the sending project’s credits at the recipient market’s published USD service rate, effective when sent. The shared sandbox number’s 1,000-message Meta allowance does not apply to these charges, even when Meta marks a delivery free. These are Kapso sandbox fees, separate from your plan’s message allowance. Reactions, failed sends, activation confirmations, and messages inside a free entry-point window are exempt. Charges appear in the existing WhatsApp usage totals. Add project credits to continue sending when the balance is insufficient.

Pay Meta directly

Meta charges the payment method configured for the WABA. Your business manages payment methods, billing details, tax information, and payment failures in Meta Billing Hub. This mode is also WABA-wide. Meta controls whether its payment source can be changed. If a message is blocked because Meta cannot collect payment, see Payment issues.