# Transactions

The **Transactions API** enables you to securely process both card-not-present and card-present transactions. This comprehensive API supports tokenization for secure card storage, various transaction types, and robust search capabilities.&#x20;

{% hint style="info" %}
All transactions are stored in batches. You can:

* Configure batches for automatic closure using the [Gateway Settings API](https://docs.xplorpay.com/api-reference/api/payments/cards/gateway-settings)
* Manage batch closure manually using the [Batches API](https://docs.xplorpay.com/api-reference/api/payments/cards/batches)
* Search for batches the [Batches Warehouse API](https://docs.xplorpay.com/api-reference/api/payments/cards/batches-warehouse)

For token operations, use the [Vault API](https://docs.xplorpay.com/api-reference/api/payments/cards/vault) endpoint.

Other useful links:

* [Card numbers for testing](https://docs.xplorpay.com/api-reference/resources/test-cards-and-ach-accounts)
* [Code samples in various languages](https://github.com/clearent/API-Examples)
  {% endhint %}

### **Available Endpoints**

* Search Transactions: `GET /rest/v2/transactions`
* Authorize: `POST /rest/v2/transactions/auth`
* Sale: `POST /rest/v2/transactions/sale`
* Capture: `POST /rest/v2/transactions/capture`
* Forced Sale: `POST /rest/v2/transactions/forced-sale`
* Refund: `POST /rest/v2/transactions/refund`
* Void: `POST /rest/v2/transactions/void`
* Adjust Tip: `PUT /rest/v2/transactions/{id}`

### Rate Limiting Notice for Integrators

The API enforces rate limits to ensure fair usage and system stability. If a single integrator exceeds the allowed request threshold, they may receive an HTTP 429 (Too Many Requests) response.

If you encounter a **429 error**:

* Wait for the period specified in the `Retry-After` header, if provided.
* Implement exponential backoff before retrying the request.

For sustained high-volume needs or to obtain detailed limit information, contact your integration specialist.
