Settings

Connect payments before you sell.

AdsRoster creates Bachs hosted checkouts for each booking. Without keys in the matching environment, reserve and custom checkout both fail.

Sandbox vs live

The workspace environment switch picks which inventory and payment credentials you use. Sandbox keys only work with sandbox spots and public keys (aidx_test_…). Live keys only work with live (aidx_live_…).

Connect and verify sandbox first. Switch to live only after a paid sandbox booking settles correctly.

1. Create a Bachs API key

In the Bachs dashboard, create a secret key for the environment you are connecting. Grant:

Suggested API key names
Sandbox: AdsRoster — BYOK — Hosted — Test payments
Live: AdsRoster — BYOK — Hosted — Live payments

The connection is shared by every website in your workspace. You can add your workspace name to distinguish multiple workspaces; you do not need a key per website.

  • Payments: Read and Write
  • Products: Read
  • Refunds: Write
  • Customers: Write (preferred, optional)

There is no separate Checkout permission. Checkout sessions use Payments Write.

2. Register the webhook

Register the matching URL in your Bachs account. Both test (sandbox) and live payments use adsroster.com:

Use the same suggested name for the webhook in the matching Bachs environment. Names are labels for identifying the connection, not the API key or signing secret itself.

Webhook URL
https://adsroster.com/api/webhooks/bachs?environment=sandbox
# Live:
https://adsroster.com/api/webhooks/bachs?environment=live

Subscribe to:

  • collection.succeeded
  • refund.paid
  • refund.failed

Sandbox means test payments; live means real payments. Both use the same AdsRoster website. Copy the signing secret for the exact endpoint you registered and use an API key from the same Bachs environment.

Settings shows the webhook URL for your selected sandbox or live mode.

3. Save credentials in AdsRoster

Open Settings → Payouts in the workspace, paste the API key and webhook signing secret, and save. Both are encrypted at rest. Then run a booking in that environment and confirm payment settles (redirect alone is not proof; the webhook is).

4. Create a Bachs product (optional)

Products group sponsorship charges in Bachs. Create a one-time, NGN, Pay what you want product, then link it on each website. See Bachs product settings for the full checklist. You can reuse one product across websites or use a different product per site.

Go-live checklist

  1. Sandbox Bachs connected and webhook verified.
  2. One paid sandbox booking end-to-end.
  3. Live Bachs keys and live webhook registered.
  4. Production embed uses your live public key via env (NEXT_PUBLIC_ADSROSTER_PUBLIC_KEY). Omit baseUrl; the SDK defaults to production.
NextBachs productRequired product settings so AdsRoster can list and use your catalog.