Skip to content

Online Payment Providers

HellaBooking supports two online payment gateways for processing card payments from customers.

Supported Providers

ID Provider Market Integration Project
1 SimplePay Hungary SimplePay/
2 Stripe International Stripe/

Provider Configuration

Providers are configured in the PaymentProvider table with the following fields:

Field Description
Name Display name
Merchant Merchant identifier
SecretKey API secret key
RemoteURL Gateway endpoint URL
OperatorName Operator legal name
OperatorAddress Operator legal address

Demo environment

The demo system has 1 payment provider configured.

Linking Providers to Services

Each ServiceType can reference up to two providers via PaymentProvider_ID (primary) and PaymentProvider2_ID (secondary).

SimplePay Integration

SimplePay is a Hungarian payment gateway supporting bank cards and SZEP cards (Szechenyi Pihenokartya).

Key characteristics:

  • Uses IPN (Instant Payment Notification) callbacks for asynchronous status updates.
  • The Order table tracks each transaction:
Field Description
OrderReference Unique order identifier
SimplePayStatus Current transaction status
SimplePayReference SimplePay's reference ID
TransactionResult Outcome of the transaction
  • Customers opt in via the SimplePayAcceptance flag on the User table.

Recurring Card Payments

For subscriptions, the system stores card details for recurring charges:

  • SimplePayReference -- token for recurring charges
  • CardExpiry -- card expiration date for validation

Stripe Integration

Stripe is an international payment gateway used for non-Hungarian markets.

Event tracking via StripeEventEnum:

ID Event
1 Success
2 Failed
3 Cancelled
4 Timeout

Split Payment

Split payment allows multiple customers to share the cost of a booking.

flowchart LR
    A[Booking created] --> B{Split payment mode?}
    B -->|OFF| C[Single payer]
    B -->|OPTIONAL| D[Customer chooses]
    B -->|MANDATORY| E[All participants pay share]
    D --> F[Payment links sent]
    E --> F
    F --> G{All paid within 24h?}
    G -->|Yes| H[Booking confirmed]
    G -->|No| I[Booking expired]
Setting Level Value
SplitPaymentEnabled Per sports field type (SportsFieldType_Enum) OFF / OPTIONAL / MANDATORY
SplitPaymentEnabled Global (SystemParameter) NO (default)
SplitPaymentExpiration Global (SystemParameter) 24 hours

Warning

The global SplitPaymentEnabled parameter must be set to YES before the per-field-type setting takes effect. The expiration window of 24 hours means unpaid split portions will cause the booking to lapse.