---
page_source: https://juspay.io/sea/docs/dashboard-sea/docs/payments/batch-transactions
page_title: Batch Transactions
---


# Batch Transactions




## Overview



The Batch Transactions module enables bulk creation of payment transactions through CSV file uploads. It provides real-time progress tracking, status monitoring, and detailed reporting for all transaction operations carried out on the Juspay payment platform.


## Accessing the Module



1. **Log in**  to the Juspay dashboard.
2. From the main navigation menu on the left, click on **Payments** .
3. Select **Bulk Operations**  from the Payments submenu.
4. Click on the **Transactions**  tab from the bulk operations navigation.
5. The navigation URL for this module is [https://portal.juspay.in/batch/batch-txn](https://portal.juspay.in/batch/batch-txn).

![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/dashboard/Screenshot%202025-09-26%20at%2011.43.50%E2%80%AFPM-hRjmC.png)
*Batch Transaction*




## Step-by-Step Usage Instructions




### Creating Batch Transactions




#### Step 1: Access the Batch Transactions Interface



1. Navigate to the Batch Transactions module using the steps above.
2. You will see the main dashboard with a description: "This module helps in creating transactions in bulk using a file upload. It provides a holistic view of the files uploaded. Upon clicking the filename in the table below a detailed view of each transaction uploaded is displayed."
3. The interface displays any previously uploaded batch transaction files in a table format.


#### Step 2: Initiate New Batch Transaction Upload



1. Click the **"Create Batch Transactions"**  button (visible only to users with appropriate permissions).
2. If maker-checker workflow is enabled for your account, you will first see a description modal:
   
   * Enter a description for the batch transaction request in the text field.
   * Click **"Submit"**  to proceed to the file upload interface.
3. If maker-checker is not enabled, you will directly access the file upload interface.

![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/dashboard/Screenshot%202025-09-26%20at%2011.44.10%E2%80%AFPM.png)
*Batch Transaction*




#### Step 3: Prepare and Upload CSV File



1. **Download Sample File** : Click on the sample file link to download the CSV template (`batch_transactions_sample.csv`).
2. **Prepare Your Data** : Fill in your transaction data following the CSV field specifications (see table below).
3. **File Limitations** : 
   
   * Maximum 1000 rows per file
   * CSV format only
   * File size limitations apply
4. **Upload Process** :
   
   * Click **"Choose File"**  or drag and drop your CSV file
   * The system validates the file format and structure
   * Mandatory fields are checked (Amount)
   * Column types are validated (Amount as Number, other fields as appropriate types)


#### Step 4: File Processing and Validation



1. **File Validation** : The system performs the following checks:
   
   * CSV format validation
   * Mandatory field presence (amount)
   * Data type validation for each column
   * Row count validation (maximum 1000 rows)
   * Payment method field combination validation
2. **Error Handling** : If validation fails, specific error messages are displayed:
   
   * Missing mandatory fields
   * Invalid data types
   * File format errors
   * Row limit exceeded
   * Invalid payment method combinations
3. **Successful Upload** : Upon successful validation:
   
   * File is queued for processing
   * Batch ID is generated
   * Initial status is set to processing


#### Step 5: Monitor Processing Status



1. **Status Indicators** : 
   
   * **ACCEPTED** : Successfully processed transactions (Green indicator)
   * **FAILED** : Failed transaction attempts (Red indicator)
   * **QUEUED** : Transactions waiting in processing queue (Blue indicator)


### Monitoring and Managing Batch Transactions




#### Viewing Batch Transaction Details



1. **Table View** : The main interface displays all uploaded batch files with:
   
   * File Name: Name of the uploaded CSV file
   * File Upload Status: Current processing status with color-coded labels
   * Amount: Sum of transaction amounts in the uploaded file (displayed in INR currency)
   * Date Created: File upload timestamp
   * Last Modified: Last update timestamp
   * Total Tasks: Number of transaction requests in the file
   * Tasks Progress: Visual progress bar showing completion status
   * Actions: Sync with Gateway button for manual synchronization
   
   ![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/dashboard/Screenshot%202025-09-26%20at%2011.44.01%E2%80%AFPM.png)
   *Batch Transaction - Table View*
2. **Detailed View** : Click on any filename to access detailed information:
   
   * **Batch Details Card** : Expandable/collapsible interface showing:
     
     * Batch ID: Unique identifier for the uploaded file
     * Date Created and Date Updated timestamps
     * Total Amount with currency formatting
     * Current status with color-coded indicators
   * **Progress Statistics** : Individual task counts for:
     
     * Total Accepted Tasks: Successfully processed transactions
     * Total Rejected Tasks: Failed transaction attempts
     * Total Queued Tasks: Transactions in processing queue
   
   ![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/dashboard/Screenshot%202025-09-26%20at%2011.44.36%E2%80%AFPM.png)
   *Batch Transaction - Detailed View*


#### Search and Filter Capabilities



1. **File Name Search** : 
   
   * Use the search input field with search icon
   * Enter filename to filter results
   * Search is case-sensitive and supports partial matches
   * Clear search using the cross icon
2. **Table Sorting** :
   
   * Click column headers to sort data
   * Available sorting for: File Name, Status, Amount, Date Created, Total Tasks
   * Toggle between ascending and descending order


### Data Export and Download




#### Downloading Processed Data



1. **Access Download** : Click the **"Download Data"**  button in the batch details view.
2. **CSV Export** : Downloads include:
   
   * Serial numbers (S.No column)
   * All processed transaction data with the following headers:
     
     * Amount
     * Currency
     * Transaction Status
     * Gateway ID
     * Gateway Reference ID
     * Order ID
     * Customer ID
     * Card Reference
     * Udf1 through Udf6 (User Defined Fields)
     * Task Status
     * Error Message
     * Created At
     * Updated At
3. **File Format** : 
   
   * CSV format with comma-separated values
   * Filename format: `batch_transactions.csv`
   * Includes header row with column names


#### Gateway Synchronization



1. **Manual Sync** : Click the **"Sync with Gateway"**  button for individual batch files.
2. **Purpose** : Synchronizes transaction status with payment gateway systems.
3. **Real-time Updates** : Status updates are reflected immediately in the interface.

![Image](https://dth95m2xtyv8v.cloudfront.net/tesseract/assets/dashboard/Screenshot%202025-09-26%20at%2011.44.17%E2%80%AFPM.png)
*Batch Transaction - Gateway Synchronization*




## CSV File Upload Specifications




### CSV Field Requirements




| Field Name | Mandatory/Optional | Data Type | Description | Sample Value | Validation Rules |
|---|---|---|---|---|---|
| amount | Mandatory | Number | Transaction amount to be processed | 100.50 | Must be a valid numeric value, supports decimal places |
| currency | Optional | String | Currency code for the transaction | "INR" | Standard currency codes (INR, USD, etc.) |
| card_number | Optional | String | Credit/debit card number for card transactions | "4111111111111111" | Valid card number format |
| expiry_MMYY | Optional | String | Card expiry date in MMYY format | "1225" | Must be in MMYY format |
| cvv | Optional | String | Card verification value | "123" | 3-4 digit numeric string |
| cryptogram | Optional | String | Cryptogram for tokenized transactions | "CRYPTO123" | String value for secure transactions |
| card_reference | Optional | String | Reference to stored card token | "CARDREF001" | String value for card references |
| customer_id | Optional | String | Unique customer identifier | "CUST_123456" | String value for customer tracking |
| order_id | Optional | String | Order identifier for the transaction | "ORD_789012" | String value for order tracking |
| gateway_id | Optional | String | Payment gateway identifier | "RAZORPAY" | Gateway name or identifier |
| gateway_reference_id | Optional | String | Gateway-specific transaction reference | "GWREF456" | String value from gateway |
| moto_id | Optional | String | Mail Order/Telephone Order identifier | "MOTO_789" | String value for MOTO transactions |
| order.metadata.CYBERSOURCE | Optional | String | Cybersource-specific metadata | "META_DATA" | String value for Cybersource integration |
| udf1 | Optional | String | User Defined Field 1 | "CustomValue1" | String value, custom data field |
| udf2 | Optional | String | User Defined Field 2 | "CustomValue2" | String value, custom data field |
| udf3 | Optional | String | User Defined Field 3 | "CustomValue3" | String value, custom data field |
| udf4 | Optional | String | User Defined Field 4 | "CustomValue4" | String value, custom data field |
| udf5 | Optional | String | User Defined Field 5 | "CustomValue5" | String value, custom data field |
| udf6 | Optional | String | User Defined Field 6 | "CustomValue6" | String value, custom data field |



### Payment Method Field Combinations



You must provide any of the following field combinations along with the Amount field:

1. **Card No. + CVV + Expiry** : `card_number` + `cvv` + `expiry_MMYY`
2. **Card No. + Expiry** : `card_number` + `expiry_MMYY`
3. **Token + Cryptogram + Expiry** : `card_reference` + `cryptogram` + `expiry_MMYY`
4. **Token + Moto Id + Expiry** : `card_reference` + `moto_id` + `expiry_MMYY`
5. **Customer Id + Card Reference + CVV** : `customer_id` + `card_reference` + `cvv`

**Note** : Expiry must be in MMYY format (e.g., "1225" for December 2025).


### CSV Format Examples



**Complete CSV Format with Sample Data:** 


#### csv Code Snippet:

```csv
amount,currency[OPTIONAL],card_number[OPTIONAL],expiry_MMYY[OPTIONAL],cvv[OPTIONAL],cryptogram[OPTIONAL],card_reference[OPTIONAL],customer_id[OPTIONAL],udf1[OPTIONAL],udf2[OPTIONAL],udf3[OPTIONAL],udf4[OPTIONAL],udf5[OPTIONAL],udf6[OPTIONAL],order_id[OPTIONAL],gateway_id[OPTIONAL],gateway_reference_id[OPTIONAL],moto_id[OPTIONAL],order.metadata.CYBERSOURCE[OPTIONAL]
100.50,INR,4111111111111111,1225,123,,,,Custom_Value_1,Custom_Value_2,,,,,ORD_789012,RAZORPAY,,,
250.00,USD,,,CRYPTO123,CARD_REF_001,CUST_123456,Custom_Value_1,Custom_Value_2,,,,,ORD_789013,STRIPE,,,
75.25,EUR,5555555555554444,0326,456,,,,Custom_Value_3,Custom_Value_4,,,,,ORD_789014,ADYEN,,,
500.00,GBP,,,,MOTO_789,CARD_REF_002,CUST_789012,Custom_Value_5,Custom_Value_6,,,,,ORD_789015,WORLDPAY,,,

```



### File Upload Constraints



* **Maximum Rows** : 1000 rows per CSV file
* **File Format** : CSV (Comma Separated Values) only
* **Encoding** : UTF-8 encoding recommended
* **File Size** : Standard file size limitations apply
* **Column Order** : Must match the specified header format
* **Empty Values** : Optional fields can be left empty but commas must be maintained
* **Payment Method Validation** : At least one valid payment method combination must be provided


## Use Cases




### Bulk Payment Processing



1. Export pending payment data from order management systems
2. Prepare CSV file with transaction amounts and payment method details
3. Upload file through Batch Transactions interface
4. Monitor processing status and download results


### Recurring Payment Management



1. Prepare CSV with customer IDs and stored card references
2. Include transaction amounts and order references
3. Upload file for automated recurring payment processing
4. Track individual transaction status


### Monthly Payment Reconciliation



1. Compile monthly payment requests from various sources
2. Create CSV with transaction amounts, gateway details, and reference data in UDF fields
3. Process bulk transactions and export results for financial reconciliation
4. Use downloaded data for accounting and audit purposes


## Troubleshooting



**File Upload Validation Errors:** 

* **"Invalid file format"** : Ensure file is in CSV format with proper comma separation
* **"Missing mandatory fields"** : Verify that amount column is present and not empty
* **"Row limit exceeded"** : Reduce file size to maximum 1000 rows per upload
* **"Invalid data type"** : Check that amount field contains only numeric values
* **"Invalid payment method combination"** : Ensure at least one valid payment method combination is provided


## Permissions and Roles



Access to the Batch Transactions module is controlled by the following permissions:

* **Transactions Module Access** : Required for accessing the batch transactions interface (ACL: `transactions`)
* **Transactions Write Permission** : Required for creating and uploading batch transaction files (ACL: `transactions` with ReadWrite access)
* **Transactions Read Permission** : Needed to view batch transaction status and download processed data (ACL: `transactions`)