Navigation

Trigger Billing Troubleshooting

Solutions for common trigger billing issues

Covers the most common trigger billing issues. If your problem is not listed, check the charge history on the billing customer profile for detailed error info.

Frequently Asked Questions

Check the charge history on the customer profile for the decline code. Common causes: expired card, insufficient funds, fraud flag from the issuing bank, or PayPal vault authorization revoked.

For `client_confirm` charges, a status of `pending_client` means the invoice was sent but the client has not clicked **Pay Now** yet — this is not a failure.

Edge auto-pauses an enrollment after 3 consecutive charge failures (configurable). To fix: update the customer's payment method, then click **Resume**. The consecutive failure counter resets to `0` on resume.

Check these common causes:

- **Idempotency cooldown**: Edge enforces a 60-second cooldown between triggers for the same enrollment. Wait and retry.
- **Enrollment not active**: Verify the enrollment status is `active`, not `paused` or `cancelled`.
- **Customer not active**: The billing customer must be in `active` status.
- **Initial charge not completed**: For `client_confirm`, the first invoice must be paid before subsequent triggers fire.

The **Charge Now** button requires at least one active enrollment. Create a new enrollment or resume a paused one.

Check these:

- **Subscription exists**: Verify you have a webhook subscription for the specific event type (e.g., `trigger.charge.succeeded`).
- **Endpoint returning 200**: Your endpoint must return a `200` status code. Any other response is treated as a failure.
- **Webhook still active**: Edge auto-disables webhook subscriptions after repeated delivery failures. Check the subscription status.

No. Once a trigger charge is fired, the amount is locked. To correct it, refund the original charge and fire a new trigger with the correct amount.

Use the Stripe test card number `4242424242424242` with any future expiration date and any CVC. The full charge flow runs identically — webhooks fire, charge history records, and enrollment counters update — but no real money moves.

Need More Help?

Still having trouble? Contact support with the `charge_id` or `trigger_subscription_id` so we can investigate quickly.

Contact Support

Was this article helpful?

NotebookLM Overviews