Skip to main content
Before creating your first charge, get your project ready: access the Dashboard, generate an API key, and configure the webhook that confirms each payment. It takes a few minutes and applies to both the sandbox and production.
1

Access the Dashboard

Sign in at app.payments.bob.company. If you don’t have access yet, reach out to the Bob team to create your account.
2

Select or create a project

Each project has its own keys, webhooks, and transactions. Pick the project that will receive the integration — or create a new one.
3

Generate your API key

In the side menu, open API Keys and click New key. Give it a descriptive name (e.g., backend-sandbox) and confirm. The key is shown only once — store it in a secrets manager or environment variable.
4

Configure the webhook

Provide an HTTPS route on your server to receive the project’s events (transaction.paid, transaction.expired). This is how you confirm each payment without polling.
5

Start in the sandbox

Use the sk_test_ key to run the full flow without moving real money. When you’re ready, swap it for the sk_live_ key for production.

Your API keys

Each project has two keys, one per environment: The key goes in the Authorization header of every request:
Create and use keys on the backend only. Never expose an sk_test_ or sk_live_ key in the browser, in public repositories, or in unprotected environment variables.
Use environment variables (process.env.BOB_API_KEY) so the key never lives in your code. If a key leaks, revoke it from the Dashboard and generate a new one.

Next steps

Create your first payment

Create a sandbox checkout session and track the result via webhook.

Authentication

Learn the sk_test_ and sk_live_ keys and auth errors in detail.

Test in the sandbox

Simulate payment states without processing real money.

Configure webhooks

Implement asynchronous confirmation on your server.