How to Set Up Online Registration with Stripe Payments: Step-by-Step Guide

Still chasing paper checks and making bank runs? This walkthrough gets your league set up with Stripe payments so families can register online and your treasurer can stop losing sleep.

Jacob Birmingham
Co-Founder & CTO
February 4, 202612 min read

Key Takeaways

  • Stripe setup takes 30-60 minutes including verification
  • Standard fees are 2.9% + $0.30 per transaction
  • You can pass fees to registrants or absorb them
  • Funds deposit to your bank in 2-3 business days

Paper checks are a nightmare. You've got the bounced one from the Kowalski family sitting in a drawer somewhere, three envelopes you keep meaning to deposit, and a spreadsheet that's three weeks out of date. Your treasurer is making bank runs on Saturday mornings like it's 1994. The worst part is you're doing all this for a hockey league—you should be talking about hockey, not chasing $350 money orders.

I helped the Greenfield Hockey Association in Sacramento switch from paper checks to Stripe three seasons ago. The treasurer had been managing payments manually for six years and was not thrilled about change. Two weeks after we set it up, she sent me a text: "I'm never going back." Families could register and pay from their phone. Deposits happened automatically. The folder of checks she used to carry to the bank disappeared entirely.

Here's the full setup, start to finish.

Why Stripe Is the Right Choice

Stripe is the payment processor behind most hockey registration software—RocketHockey, TeamSnap, SportsEngine, and most alternatives either use Stripe directly or run on infrastructure that works the same way. If you've ever bought anything online, there's a reasonable chance Stripe processed it. For hockey leagues specifically, this means your registration platform already integrates with Stripe, your treasurer will find plenty of documentation and support, and your families will trust the payment flow because it looks familiar.

The fees are 2.9% plus $0.30 per card transaction. ACH bank transfers are 0.8%, capped at five dollars—meaningfully cheaper for large registration payments, if your families are willing to use them. Funds deposit to your bank account in two to three business days. That's really the whole financial summary.

Before you start, have these ready: your EIN (or SSN if operating as a sole proprietorship), your bank account routing and account numbers, your organization's legal name and address, and the name and basic information of whoever will be the authorized representative on the account. This is the person Stripe will verify as having authority to manage payments—usually the treasurer or executive director.

Setting Up the Account

Go to stripe.com, create an account with your organization email, and verify. This part takes five minutes. The next part—account activation—takes a little longer because Stripe needs to verify your organization before money can actually flow.

Activation asks for your legal business name, EIN or SSN, business address, phone, and business type. For the representative verification, they need name, date of birth, and the last four digits of a social security number. This sounds invasive but it's standard—Stripe is federally required to verify identities to prevent fraud and money laundering. It's the same process any bank would run. Verification usually completes within 24 to 48 hours, sometimes faster.

Tip

Use your organization's formal legal name exactly as it appears in your formation documents. Mismatches between your submitted name and your EIN registration are the most common reason verification delays.

Once the account is active, connecting it to your registration platform takes about three clicks. In RocketHockey, it's Settings, then Payments, then Connect Stripe. You'll log into your Stripe account when prompted and authorize the connection. The platform will handle the rest. Other platforms have essentially the same flow.

Configuring Payment Settings

Two things to set up before you start accepting money:

The statement descriptor is what appears on your families' credit card statements when they pay. Use something recognizable—your league name, abbreviated if necessary. "GREENFIELD HOCKEY" is fine. "LEAGUE PROCESSING LLC" is how you end up with chargebacks from parents who don't remember what the charge is.

Payout schedule defaults to rolling two-day deposits, which means money hits your bank two business days after each transaction. You can switch to weekly or monthly if your treasurer prefers a predictable deposit schedule. Weekly usually makes reconciliation easier.

The Fee Question (Everyone Has Feelings About This)

Every league treasurer agonizes over this. Here's the honest take: both options are defensible, and your families have seen both.

If you absorb the fees, families pay one clean number. On a $300 registration, you receive roughly $291. Budget for a 3% revenue reduction. This is simpler to communicate and some families appreciate not seeing a surcharge.

If you pass the fees to registrants, add approximately 3% to the charged amount. On a $300 registration, families pay $309.30, you receive $300. This is increasingly standard across sports leagues, and most families expect it. It's honest—there's a real cost to processing payments, and you're not hiding it.

The third option—accepting ACH bank transfers alongside cards—lets you encourage families to use the cheaper method. If someone pays via ACH, the fee is 80 cents on a $300 transaction instead of $9. Some leagues offer a small discount for ACH to incentivize it.

Warning

Do not let families register with a "pay later" option unless your platform automatically blocks them from game access until they pay. I've seen leagues collect 40 registrations and receive payment for 31 of them because there was no enforcement mechanism. The other nine required individual follow-up calls.

Managing Payments During the Season

The Stripe Dashboard shows successful payments, failed payments, pending payouts, and any disputes—all in real time. Your treasurer will spend about ten minutes a week in here once things are running, mostly to review the payout summary and follow up on any failed transactions.

Cards get declined sometimes. Usually it's not a crisis—an expired card, a bank flagging an unusual transaction, a wrong billing ZIP code. When a payment fails, your registration platform should notify the registrant automatically with a link to update their card. If the failure repeats after they've tried to fix it, reach out directly and offer an alternative. Most platforms also support ACH as a fallback when cards aren't working.

Payment plans make sense for any registration over $500. Asking a family to pay $900 upfront creates friction; splitting it into three installments gets them registered earlier with less resistance. The standard structure is 50% at registration, 25% at 30 days, and 25% at 60 days. The platform charges the saved card automatically on schedule. When an installment fails, the system should notify the family and set a grace period before access is restricted.

Refunds process through the Stripe Dashboard or your platform's refund button. Full refunds return to the card in five to ten business days. Partial refunds work the same way. The fees are not refundable from Stripe's end, so if you're building a refund policy, account for that.

Keeping Your Books Clean

Stripe generates detailed reports that make reconciliation straightforward. The key rhythm:

Match each Stripe payout to the corresponding deposit in your bank account. Stripe groups multiple transactions into each payout, so you'll download a CSV to see which individual payments are in each deposit. Do this weekly or monthly—whenever you get behind, it gets harder to untangle.

The Stripe Dashboard also tracks failed payments, disputes, and fee totals by time period. Download monthly summaries for your tax records. If you're running through a software platform like RocketHockey, most of this reporting is available directly in your dashboard without going into Stripe at all.

Security Without the Paranoia

Two-factor authentication on your Stripe account is mandatory. Do this before you accept a single payment. Limit dashboard access to the people who actually need it—usually just the treasurer and executive director. Review who has access at least once a year.

Families don't need to worry about card security: their payment data goes directly to Stripe's servers, never to yours. You never see a full card number. PCI compliance is Stripe's problem, not yours. This is one of the genuine advantages of using a processor like Stripe over trying to handle payments independently.

Frequently Asked Questions

Can you still accept checks alongside Stripe? You can—just log them as offline payments in your platform so your reporting stays in one place. Whether it's worth maintaining the parallel system depends on how many families are still asking for it. At Greenfield, we kept a check option the first season and received eleven checks out of 140 registrations. By season two we dropped it.

What happens with a chargeback? Stripe walks you through the dispute process. Your job is to provide documentation: registration confirmation email, your published refund policy, anything showing the charge was legitimate and the family received what they paid for. The more paper trail you have, the better your odds. If someone disputes a charge they genuinely made, you almost always win if you respond promptly.

Do you need a separate business bank account? Strongly recommended. Having a dedicated account for league funds makes reconciliation easier, keeps personal and organizational finances separate, and simplifies tax prep. It takes about ten minutes to open one and it's worth it.

Can families save cards for future seasons or payment plan installments? Yes, if your platform supports it. Saved cards make automatic installment billing seamless and reduce the friction of re-entering card details at the start of each season.

The Part That Changed Our League

The Greenfield treasurer's six years of manual check processing wasn't just inconvenient—it was a genuine volunteer burden that was going to eventually wear her out. Getting that off her plate wasn't overhead. It was how we kept a great treasurer who'd been doing the job for years.

That's the real return on the two hours you'll spend setting up Stripe. Not just faster deposits—though deposits are faster. Not just fewer bounced checks—though that's real. It's the volunteer hours you give back to someone who was quietly burning out on Saturday morning bank runs.

For more registration guidance, see our league management guide or how to run your first hockey league season.

Jacob Birmingham's Insight

I've helped a lot of leagues make the switch from checks and cash to online payments. The fee anxiety is real—but do the math. The time you're spending on check processing, deposit runs, and hunting down late payments costs way more than 3%. And families pay faster when you make it easy.

Frequently Asked Questions

Can we accept checks alongside Stripe?

You can, but track them separately. One option is logging checks as offline payments in Stripe so your reporting stays in one place. Whether that's worth the extra step depends on how many families are still mailing checks.

What about payment disputes or chargebacks?

Stripe walks you through the dispute process. Your job is to provide documentation—registration confirmation, your refund policy, anything that shows the charge was legitimate. The better your paper trail, the better your odds.

Do we need a separate business bank account?

Recommended but not required. Separate accounts make your treasurer's life dramatically easier when it's time to reconcile or do taxes. Worth the ten minutes to open one.

Can families save cards for future payments?

Yes, if your platform supports it. This is especially useful for payment plans so the card gets charged automatically instead of chasing people down every month.

online registrationStripepaymentsregistration setup
Share this article:

Sources & References

  1. Stripe Documentation
  2. Payment Processing Best Practices for Nonprofits

Jacob Birmingham

Co-Founder & CTO

Co-founder of RocketHockey and the technical mind behind the platform. Jacob has been playing hockey since he could walk and has captained beer league teams for over a decade. He built the scoring, scheduling, and communication tools that power RocketHockey because he was tired of group texts and shared Google Sheets.

Want to learn more about League Management?

Read Our Complete Guide