Importing from another system
When your club moves to SportyPlus from another system, you don't have to type everyone in again. Export your member list and your standing bookings from the old system as a spreadsheet, and import them here.
Both imports work in two steps. First you upload the file and see what would happen to every row. Nothing is saved at that point, so you can fix the file and upload it again as often as you need. Then you start the import.
Import your members first. A booking belongs to a member, so the bookings import only finds people who are already members of your club.
Importing members
Go to Club Admin → Community → Members → Import members, or choose Import on the member list.
- Export the member list from your old system as CSV or Excel (XLSX, XLS and ODS also work). One file can hold up to 5,000 members.
- Drop the file on the page. The preview opens.
- Check the rows marked Needs fixing, correct them in the file, and upload it again.
- Decide whether new members should get an email telling them how to sign in (see Telling members).
- Choose Import.
The columns
The first row of the file must name the columns. SportyPlus recognises the usual names, in English and in Croatian or Slovenian, so your old system's export usually works as it is. Columns it doesn't know are ignored. Download the template gives you an empty file with every column.
| Column | What it holds | Also recognised as |
|---|---|---|
first_name | Required | First name, Ime |
last_name | Required | Last name, Surname, Prezime, Priimek |
email | The member's email. Leave it empty for a junior who uses a parent's email. | E-mail, Mail |
gender | M, F or O; also Male/Female and the Croatian and Slovenian words | Sex, Spol |
birth_date | Date of birth. Required for a junior without an email. | Date of birth, DOB, Datum rođenja |
country | Two-letter code (HR) or the country's name. Empty means your club's country. | Država |
phone | Phone number | Mobile, Telefon, Mobitel |
guardian_email | The email of the junior's parent or guardian | Parent email |
membership | The name of one of your club's memberships | Membership type, Članarina |
membership_start | When the membership started. Empty means today. | Start date, Valid from |
membership_end | When the membership ends | End date, Expires, Valid until |
balance | Prepaid credit the member still has with the club | Wallet, Credit, Stanje |
Dates can be written as 2026-12-31, 31.12.2026 or 31/12/2026, or be real dates in a spreadsheet. Amounts can use a comma or a point for decimals, and a currency sign is ignored.
What happens to each row
The preview shows one of these for every row:
- New account — a new SportyPlus account is made and joins your club.
- Has an account — this person already uses SportyPlus, for example at another club. They join your club with the account they have, instead of getting a second one.
- Already a member — they're already in your club. Only their membership and balance from the file are added.
- Junior — a child without an email of their own. They're added under the account of the parent named in
guardian_email, who must be in the same file or already use SportyPlus. Family and children explains how parents manage their children. - Duplicate in the file — the same email appears earlier in the file. The row is skipped.
- Needs fixing — something has to be corrected first, such as a missing name or an unknown membership. The row is skipped, and the note says what's wrong.
Turn on Show only rows with notes to see just the rows that need a look.
Memberships
The membership column has to match the name of a membership your club already has, in any of its languages. If it doesn't, the row needs fixing: create the membership first under Memberships, or change the name in the file.
- The member keeps the membership until the date in
membership_end. With no end date, the membership doesn't expire. - A membership that has already ended isn't imported.
- If the member already holds that membership, it's left as it is.
- Members don't get a "thank you for your purchase" email for an imported membership. They paid your old system, not SportyPlus.
Prepaid credit
A positive balance is added to the member's wallet at your club as an opening balance, noted as carried over from the previous system. Members can spend it on bookings straight away.
A negative balance isn't imported. Settle money a member owes before the switch.
Importing the same file again
You can upload the file again, for example after fixing the rows that needed it. Members who were already imported show as Already a member, and their membership and opening balance aren't added a second time.
Telling members
Nobody is emailed unless you tick Email new members how to sign in. When you do, each new member gets an email from your club. It says their account is ready and their membership has been carried over, and links to your sign-in page, where they choose Forgot password? to set a password of their own.
Leave it off if you'd rather tell members yourself, for example once your switch date is set. They can sign in the same way at any time.
Importing recurring bookings
Standing weekly bookings, such as a member's Tuesday evening court, can be imported too. Go to Club Admin → Community → Members → Import recurring bookings.
Each row is one weekly booking:
| Column | What it holds |
|---|---|
email | The member's email. They must already be a member of your club. |
court | The court's name, as it's called in SportyPlus |
weekday | The day, as a name (Tuesday, utorak, torek) or a number (1 = Monday) |
start | The start time, such as 18:00 |
end or duration | The end time, or the length in minutes |
first_date | The first date. Empty means tomorrow. |
last_date | The last date. Required. |
name | Optional, shown on the booking |
SportyPlus books the court every week on that day, from the first date to the last. Only future dates are booked, and never more than 52 weeks ahead. A booking that runs longer has to be renewed later.
The preview already checks every date against the bookings on your courts. A date whose court is taken is skipped and listed with the reason, and nothing is overwritten. If you import the same file again, the dates booked the first time show as taken, so nothing is booked twice.
Imported bookings are free for the member, with a note that they were imported, because the member paid your old system for them. Booking limits from memberships don't apply, and opening hours aren't checked, the same as when an administrator books a court. Members aren't notified about imported bookings.