When a recurring payment fails in your billing system, notify Churn Buster so that a recovery campaign can be started.

2-step setup:

  1. Add a trigger in your in-house logic, or subscribe to a webhook from your payment processor or subscription management tool, when recurring payments fail. You won't need to make this API request for one-off payments.
  2. When that trigger occurs or the webhook is received, submit the following API request to Churn Buster.
curl -X "POST" "https://api.churnbuster.io/v1/failed_payments" \
     -H "Content-Type: application/json" \
     -u "ACCOUNT_ID:API_KEY" \
     -d $'{
  "payment": {
    "source": "in_house",
    "source_id": "ch_abc123",
    "amount_in_cents": 2900,
    "currency": "USD"
  "customer": {
    "source": "in_house",
    "source_id": "cus_abc123",
    "email": "[email protected]",
    "properties": {
      "first_name": "Sarah",      
      "last_name": "Doe"

Preview sandbox API requests in the debugger here if using a test-mode API key, or here if using a live-mode API key.


A note about source  and source_id :
In most cases, you can use IDs from your payment processor. For example, when using Stripe, source  would be "stripe"  and source_id  would be "cus_sampleID" .

You could also use IDs from a custom billing system. In that case, source  could be "in_house"  and source_id  could be "yourInternalId" .

IDs should be unique to customers, subscriptions, payment methods, and payments.

Did this answer your question?