# Integrate Hosted Batch
source: https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/index.md

## Overview {#overview}

Hosted Batch is a Mastercard Gateway feature that enables merchants to upload files with multiple payment transactions for bulk processing. Instead of sending transactions individually through an API, merchants upload a CSV file through the Mastercard Gateway portal. This approach is suitable for non-urgent, back-office activities such as end-of-day processing or recurring payments.

This method is simple, efficient and cost-effective for merchants with high transaction volumes or limited technical resources. It supports key transaction types, including authorize, capture, and refund, and provides structured response files for easy reconciliation.
Warning: The maximum-supported file size is 3 MB. Each Batch can include up to 18,000 records.

## Prerequisites {#prerequisites}

* Ensure that your merchant profile is enabled for the Batch service.
* Before you start the integration, see [Best Practices and Tips](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/index.md#best-practices-and-tips).

## Integration steps {#integration-steps}

**Step 1: [Access Mastercard Gateway](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/access-mc-gateway/index.md)**   

As a first step, check your connectivity to the Mastercard Gateway.

**Step 2: [Knowing your input fields](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/know-your-input-fields/index.md)**   

Before you start building the integration, you must be prepared with the values for the fields that require your input.

**Step 3: [Create a batch request](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/create-batch-request/index.md)**   

Creating the body of the request is a critical step in the integration.

**Step 4: [Send a batch request](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/send-batch-request/index.md)**   

There are many components to make sure the transaction request body is sent securely to the Mastercard Gateway.

**Step 5: [Retrieve batch status](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/retrieve-batch-status/index.md)**   

Once a batch is submitted, you can periodically request a batch status to determine the current state of the batch processing.

**Step 6: [Process batch response](https://developer.mastercard.com/mastercard-gateway/documentation/build/hosted-batch/integrate-hosted-batch/process-the-batch-response/index.md)**   

After a batch has completed processing, you can request a response file that contains the result of each of the uploaded operations.

**Step 7: [Test and go live](https://developer.mastercard.com/mastercard-gateway/documentation/testing/test-cards/index.md)**
