Christian Broadcasting Network

Billing operations

PayPal recurring schedules, vaulted agreements, and SOAP settlement — for authorized operators only.

Access is scoped to this environment. Inbound CRM webhooks use a separate HMAC secret.

Sign in

Use the email and password you registered with.

At least 8 characters.

Checking service…

CBN Billing operations

Overview

Due amounts, vault status, and today’s settlements.

CRM webhook

The CRM posts enrollment to POST /api/webhooks/donor with HMAC X-CBN-Signature. That saves the donor, vaults the B- BAID, and stores the next charge date. It does not charge. SOAP runs only on the daily cron when that date is due or overdue.

PayPal billing agreement

Create a PayPal billing agreement id (B-) and place it in the enrollment form.

  1. Start checkout and approve in PayPal.
  2. Execute the agreement so the B- fills in below.
  3. Post enrollment to save the donor and schedule the charge.
Open PayPal
Start checkout to create a billing agreement.

Donor enrollment

Posts the same JSON the CRM sends to /api/webhooks/donor. Empty fields use defaults. Typed fields override them. The first charge date is saved as today; SOAP runs about two minutes later.

Ready.

Charge

A SOAP sale is queued two minutes after enrollment. Charge now skips the wait.

Post enrollment first.

Exceptions

Delinquent, retrying, and overdue schedules. Open a row to pause, resume, or retry.

None.

Reconciliation

Due versus charged versus failed. Today includes past-due. Week is Monday–Sunday (Eastern). Month is calendar month.

Choose a period and view the report.

Tasks

Two production tasks: import existing BAIDs, or receive the CRM webhook. Neither charges. SOAP runs only when the next charge date is due or overdue.

SOAP: vaulted billing agreement, then Alt Pay Sale.

1
Import BAIDs

Load existing billing agreements from CSV. Saves donor, vaults the BAID, and sets the schedule active. Charge waits until the next date is due or overdue. Import only after the legacy bill job is off for these donors.

2
Webhook

CRM enrollment at /api/webhooks/donor saves the BAID the same way. No charge on inbound. Open Webhook in the menu for the path and signature.

3
Seed & auto-approve

Create donors and approve PayPal. Existing SOAP donors with a billing agreement are skipped.

4
Activate

Promote migrated_pending schedules that already have a vault credential.

5
Run billing

Sandbox only. Production charges only on the daily cron when due or overdue.

6
Helpers

Move due dates, look up unknown charges, and cutover. Sandbox only.

Ready.

PayPal still pending

Pending PayPal approvals. Open a row for the subscription.

Schedules

Search by donor ID or name. Open a row to view the subscription.

Sign in to load schedules.

Subscription

Charge log

Retry log

Activity