How to assign multiple cards at once?
- Michał Stachera

- Feb 14
- 6 min read
Updated: Dec 9
Table of Contents:
There are three ways to assign business cards in the Sparados service:
Filling out the card assignment form (by clicking the ASSIGN CARD button).
Assigning a card using the Sparados API (link to documentation).
Using a batch file to assign multiple cards at once.
Assigning cards from a batch file works similarly to filling out the form from option 1, but it allows you to assign multiple cards simultaneously.
In this tutorial, you'll learn how to do it:
How to assign couple cards at once?
Go to the CARDS tab

After clicking the ASSIGN MULTIPLE button, you will be redirected to the page for assigning multiple cards. Here, you need to upload a valid .csv file containing all the information required to generate the cards. You can use the sample file "example.csv" provided above the main field as a reference (The data in the file is for example purposes and should be replaced).

All group limits will follow the same rules as when assigning a single card. If the assigned limit exceeds your group's limit, approval will need to be obtained from the higher-level group.
If the information in the file is in an incorrect format, the system will display a message indicating the issue with a specific row or cell:

ASSIGN
The process of assigning multiple cards at once
What should a correct CSV file contain when assigning cards?
Field name | Format | Description | Example |
operation | text field | Operation Type REQUIRED | assign – when the card is to be assigned edit – when the data on the card is to be updated |
approvalId | UUID | Approval ID IGNORED | |
Employee's email address REQUIRED | |||
phonePrefix | prefix | Employee's phone number prefix REQUIRED | 48 |
phoneNumber | phone number | Employee's phone number REQUIRED | 781761200 |
totalAmount | number field | Account balance (for decimal amounts, use a dot as the separator) REQUIRED | 2000.99 |
totalAmountType | text field | ONLY FOR EDITING IGNORED | |
limitGeneral | amount:period | Periodic limit for all types of transactions with the period (daily, weekly, monthly) OPTIONAL (no limit by default) | 50:weekly |
limitEcommerce | amount:period | Periodic limit for online payments OPTIONAL (no limit by default) | 100:monthly |
limitAtm | amount:period | Periodic ATM withdrawal limit (To block ATM withdrawals, enter 0:daily)OPTIONAL (no limit by default) | 50:daily |
limitForeignTransaction | amount:period | Periodic foreign transaction limit OPTIONAL (no limit by default) | 50:daily |
startDate | Date | Account start date in the format YYYY-MM-DD, YYYY.MM.DD, or YYYY/MM/DD REQUIRED (Current date by default) | 2025-01-01 |
endDate | Date | Account expiration date in the format YYYY-MM-DD, YYYY.MM.DD, or YYYY/MM/DD REQUIRED | 2027-01-01 |
cardAliasId | UUID | Account ID (you can find it in account details in the ACCOUNTS tab) REQUIRED | 1ee5c171-393c-6140-b3d6-b9784a774ec2 |
visualId | UUID | Card graphic ID (you can find it on the card template in the CARDS -> ASSIGN CARD tab) OPTIONAL | 4b8a1286-4c79-475f-8932-4f3b29e7610e |
cardName | text field | Card name OPTIONAL (empty by default) | Lunch card Adam Kowalski |
allowChangeRequests | yes/no | Ability to request a limit increase OPTIONAL (yes by default) | yes |
labels | number field | Two-digit label codes separated by a delimiter OPTIONAL – CANNOT BE MODIFIED | 22 | 35 |
mccList | number field | Four-digit merchant category codes separated by the "|" delimiter, allowing purchases only in a specific category OPTIONAL | 5819|1911 |
mccType | text field | blacklist (excludes the specified MCC codes) whitelist (restricts payments only to the specified MCC codes) OPTIONAL (whitelist by default) | whitelist |
spendCategoryId | UUID | If spendCategoryId is provided, mccType and mccList are ignored. | 4b8a1286-4c79-475f-8932-4f3b29e7610e |
EDIT
The process of editing multiple cards at once
What should a correct CSV file contain when editing cards?
💡 Tip: The easiest file to fill out for editing purposes is the card assignment report (ASSIGN) – the approvalid field is already filled in with the correct number. You only need to remove two columns – status and statusCode – and make the necessary changes.
Field Name | Format | Description | Example |
operation | text field | Type of operation REQUIRED | assign – when the card is to be assigned edit – when data on the card is to be updated | |
approvalId | UUID | Rental ID REQUIRED – MUST MATCH THE ONE ASSIGNED TO THE CARD | 4b8a4286-4c79-475f-8932-4f3b29e7610e |
email adress | Employee’s email address NOT REQUIRED FOR EDIT – CAN BE CHANGED IF CARD IS NOT GENERATED | ||
phonePrefix | prefix | Employee’s phone country code NOT REQUIRED FOR EDIT – CAN BE CHANGED IF CARD IS NOT GENERATED | |
phoneNumber | phone number | Employee’s phone number NOT REQUIRED FOR EDIT – CAN BE CHANGED IF CARD IS NOT GENERATED | |
totalAmount | numeric field | Account balance (use a dot to separate decimals) REQUIRED | 300.99 |
totalAmountType* | text field | Type of account balance. naive – adds funds to balance simple – sets current balance to new value REQUIRED (Default is simple) | naive |
limitGeneral | amount:period | Periodic limit for all transaction types with the period (daily, weekly, monthly) OPTIONAL (No limit by default) – CAN BE CHANGED | 50:weekly |
limitEcommerce | amount:period | Periodic limit for online transactions OPTIONAL (No limit by default) – CAN BE CHANGED | 100:monthly |
limitAtm | amount:period | Periodic limit for ATM withdrawals (If you want to disable ATM withdrawals, enter 0:daily) OPTIONAL (No limit by default) – CAN BE CHANGED | 50:daily |
limitForeignTransaction | amount:period | Periodic limit for foreign transactions OPTIONAL (No limit by default) – CAN BE CHANGED | 50:daily |
startDate | Date | Start date of the account in the format: YYYY-MM-DD, YYYY.MM.DD, or YYYY/MM/DD REQUIRED (Default is current date) | 2025-01-01 |
endDate | number:period or date | Expiry date of the account in format: number:period or YYYY-MM-DD, YYYY.MM.DD, or YYYY/MM/DD REQUIRED | 3:months |
cardAliasId** | UUID | Account ID IGNORED | |
visualId** | UUID | Card graphic ID (you can find it on the card template under CARDS -> ASSIGN CARD) OPTIONAL – CAN BE CHANGED | 4b8a1286-4c79-475f-8932-4f3b29e7610e |
cardName | text field | Card name OPTIONAL – CAN BE CHANGED | Lunch card Adam Kowalski |
allowChangeRequests | yes/no | Allow requests for increasing the limit OPTIONAL (Default is yes) – CAN BE CHANGED | yes |
labels | numeric field | Two-digit label codes separated by delimiter "|" OPTIONAL – CANNOT BE MODIFIED | 22 | 35 |
mccList*** | numeric field | Four-digit merchant category codes (MCC) allowing purchases only in specific categories OPTIONAL – CAN BE CHANGED | 5819|1911 |
mccType | text field | blacklist – excludes the provided MCC codes whitelist – restricts payments only to the provided MCC codes OPTIONAL (Default is whitelist) | whitelist |
spendCategoryId | UUID | If spendCategoryId is provided, mccType and mccList are ignored. | 4b8a1286-4c79-475f-8932-4f3b29e7610e |
*Example of editing:
Simple → changes the card balance
You have 8,000.00 PLN / 13,776.80 PLN on the card
You add 14,000 PLN with Simple (+6,000 PLN)
Now you have 14,000 / 19,776.80
Naive → adds funds to the current balance
You have 8,000.00 PLN / 13,776.80 PLN on the card
You add 14,000 PLN with Naive
Now you have 22,000 PLN / 27,776.80 PLN
**Where to find Account ID and Card Graphic ID?
Most fields should be straightforward, but two columns might be harder to identify: Account ID and Card Graphic ID
Account ID:
ACCOUNTS -> Select an account
In the account details, next to the name of your account, there is a button to copy the Account ID

Card Graphic ID:
CARDS -> ASSIGN CARD
Scroll down to the Card Attributes section and select the graphic you want to assign to your new card. A button to copy the Graphic ID will appear.

*** MCC Codes
If you have filled in all fields in the correct format, save your file with the extension CSV (Comma delimited) (*.csv) or CSV UTF-8 (Comma delimited) (*.csv). Upload it to the field with the "drop file or browse" cloud on the panel. You should see a message confirming that your cards are being processed.

Where o find the status of card assignment?
In the REPORTS -> BULK CARD ASSIGNMENT tab, you can track the status of card assignments and download the report when it is ready. You will also see the date, information about the number of assigned cards, and how many were successful or failed.

After downloading the report, you can open it in programs like Excel or Numbers. It contains three additional columns:
What does a report consist of?
Field name | Description | Example |
status | This field will display one of two messages (success, error), indicating the outcome of the operation. | error |
statusCode | Code for the status (helps you identify the error) | 400 |
approvalid | assignment identification number | 1f058dff-44ed-6222-879e-2b9a199c3a1d |
Comparison of Card Assignment via API and Batch File:
API
Advantages:
✅ Integration with own systems
✅ Full automation of card management process
✅ Free access to Sparados API (API documentation)
Disadvantages:
❌ Implementation cost on the client’s side (approximately 20,000 - 40,000 PLN)
❌ Need to maintain a service connected to the API
❌ Implementation time: approximately 2 - 3 months
Advantages:
✅ Immediate implementation possible
✅No implementation or maintenance costs
Disadvantages:
❌ Manual work required to create the file
❌ Manually uploading the file to the service
If you'd like to learn more about MCC codes or assigning individual cards, check out the guides: MCC codes - what are they and how they work? How to activate Sparados card with no application?


