# 1. Get an API key

The Circle Payments API uses API keys as the mechanism to authenticate client requests. The API key must be set in the `Authorization` header of the request sent from your backend server. The format of the header is `Bearer secret-key-value`.

[Learn more about authenticating API calls here](🔗).

To obtain an API key for the sandbox environment, simply create an account and generate a new key in settings - it only takes a few seconds.

(Script tags will be stripped)

Once you have generated your API key, record it in a secure place.

# 2. Install the sample application

We have built a [sample web application](🔗) to demonstrate the use of Circle Payments API. You can clone the Github repository, configure the app and run it locally.

NPM and Yarn

If you don't already, make sure you have [npm](🔗) and [yarn](🔗) installed.

(Script tags will be stripped)

Enter Your API Key

Take the API key you generated on step 1, and enter it on the settings tab on the **top right corner** of the sample application.

(Script tags will be stripped)

# 3. Accept your first card payment

On the sample application, click on the `Charge Flow` button under the "Example UI implementation" section.

Use one of the [test card numbers](🔗) available on the sandbox environment. For example, `4007400000000007`, real card numbers are not accepted in the sandbox environment.

Type in an amount, pick a value for CVV and expiry date, and add some billing information details.

Submit the payment creation request by clicking on the `Make Payment` button.

🎉 Congrats, you processed your first card payment that settles in [USDC](🔗)! You should see a payment identifier on the resulting screen, something like `Payment id: 81855279-b53d-4119-9f1e-5d0af00f0c24`.

# 4. Check the status of your card payment

Now make an API call to retrieve the status of your card payment using the [get payment endpoint](🔗). Use your API key from step 1 and the payment identifier you obtained on step 3.

You should receive a response such as below.

🎉 You are all done!

Your payment will eventually change its `status` from `confirmed` to `paid` - at that point you have funds in your account available for use.

# 5. Like what you see? Keep going!

By accepting a card payment that settles in USDC, you have just touched the tip of the iceberg of [Circle APIs](🔗).

Make sure you read the longer form guide on [accepting payments online](🔗). Check how to [subscribe to notifications on changes in payments status](🔗). Also make sure you check the rest of the documentation - a few starting points are suggested below.

# 6. Ready for the next step?

If you are in advanced stages of experimenting with our APIs and want to plan moving to production, please start by [applying for a Circle Account](🔗) and subsequently [reach out to sales](🔗). We'll be happy to walk you through to the next steps.

We can't wait to see what you are going to build!