Tariffs and membership#
A tariff is a paid service for a period or for credit. Find them under Systém → Tarify.
What a tariff holds#
| Field | Meaning |
|---|---|
| Name and description | per language |
| Validity in days | how much the membership is extended by |
| Credit | how much credit is added |
| Active | a disabled tariff is not offered |
| Allow activation on a duplicate payment | a second paid transaction of the same payment may activate the tariff again |
| Typ produktu (fakturace) (product type for invoicing) | what this tariff actually sells |
| Sazba DPH (%) (VAT rate) | the rate a registered seller's price is raised by, and the rate the tariff goes onto a document with |
A tariff can give time, credit, or both
A "30 days + 100 credits" bundle is one tariff with both fields filled in.
The tariff and the document#
Two fields decide what the invoice created from a paid tariff will look like.
| Field | If left empty |
|---|---|
| Typ produktu (fakturace) | — výchozí dle nastavení —, the type from the invoicing settings |
| Sazba DPH (%) | the default rate from the invoicing settings is used |
The product type is one of the axes the document layout is chosen by.
Fill the product type in when you sell services
The default type in the settings tends to be "goods". Membership and subscription are a service — and a document for a service often needs different wording. With the type left empty, the goods layout is picked.
Zero as a rate is a valid value
0 % means a zero rate (typically for a non-payer). An empty field means "take the default". They are not the same thing.
Prices#
The price is entered per combination of region + gateway + currency. One tariff can therefore cost differently in Czechia and Slovakia, and differently by card than from credit.
What you enter is the base excluding VAT — exactly as in the e-shop price list. The system adds the tax itself, at payment and on the document.
| Seller company | What the customer is charged |
|---|---|
| not VAT registered | the entered price, unchanged |
| VAT registered | the entered price × (1 + the tariff's rate) |
The rate comes from the tariff's Sazba DPH (%) field; an empty field means the default rate from the invoicing settings. If the chosen gateway has a fee enabled, a registered seller's fee is raised too — the fee is computed from the tariff bases and carries the default rate.
Rounding of the amount due#
The prices of the chosen tariffs and the gateway fee are summed unrounded, and only the result is rounded — exactly once, to the currency's number of decimal places from Systém → Měny.
| The currency has decimal places | The amount due comes out in |
|---|---|
| 2 (the koruna) | whole hundredths |
| 0 (credit) | whole units |
Why it is rounded as soon as the payment is created
A gateway can only charge as many decimal places as the currency has. Were a third one left in the amount, the gateway would round it off itself — and take a different amount than the one the system has stored on the payment. This way it gets an amount it can charge with nothing left over.
Gateways with final prices are not rounded
If a gateway has Final prices enabled (premium SMS, credit), its price goes into the payment exactly as entered — no VAT and no rounding. Rounding a premium SMS level would make it stop matching the operator's level, and the payment could not be paired.
Step by step: pricing a tariff to a final amount#
- Decide the final amount the customer should see (121, say).
- Divide it by the tariff's rate (121 ÷ 1.21 = 100) and enter the result as the price.
- Save, then open the payment form on the site and check that the total matches what you intended.
Premium SMS is the exception — nothing is added there
Premium SMS levels are set by the operator and are final, VAT included. The system adds no tax to them, otherwise the incoming payment could not be matched against what the customer sent. The price for that gateway is therefore entered exactly as the operator publishes it, and the base is worked out only on the document. Where the levels are entered is on the individual modules' tariffs — Classifieds, Company directory, Discussion.
Without a price for a combination, the tariff cannot be bought
The tariff does not disappear from the list — it stays visible, but the row is greyed out, disabled, and labeled "cannot be purchased". After adding a new gateway or a new region, fill in the prices on every tariff, otherwise customers cannot buy it in that combination.
Credit is an exception too — credit prices are final
Credit is an internal currency and the tax is settled when the credit is bought for money — adding it again when the credit is spent would tax it twice. A tariff priced in credit is therefore charged exactly as entered: a 200-credit tariff costs 200 credits even for a VAT-registered seller, and the base is worked out only on the document.
Both exceptions are a setting, not a fixed rule
SMS and credit behave this way because their gateway has the Final prices checkbox ticked. It can be turned on or off on any gateway — read the warnings there before you do.
Price the credit route lower
Credit already paid for costs you less than a card transaction — it carries no gateway fee.
The document may carry a 'Haléřové vyrovnání' (penny rounding) line
The document computes from three-decimal price-list bases, whereas the payment is rounded to the currency's decimal places. The document's total can therefore differ from the amount paid by a fraction of a penny — and the system charges that difference on a second line, "Haléřové vyrovnání" (no VAT), so the document matches the payment exactly. It happens in two situations:
| Situation | Size of the adjustment |
|---|---|
| an ordinary online payment broken down into tariffs — the difference from the final rounding | up to roughly half a penny |
| the base worked out backwards from a final price (premium SMS, credit) | ±0.001 |
This is correct — without that line the document would differ from the payment. Should the difference exceed a penny, the system discards the per-tariff breakdown and issues the document as a single summary line for the amount paid.
What the customer sees in the payment form#
Whether individual tariffs are printed at their base or with tax follows the same Zobrazovat ceny s DPH switch on the seller company card as the e-shop does — see My companies.
| Seller company | The tariff is printed at | The note under the list |
|---|---|---|
| not registered | the entered price | none — VAT is never mentioned |
| registered, switch on | the price with tax | "Prices include VAT." |
| registered, switch off | the entered price | "Tariff prices exclude VAT; the total amount due includes VAT." |
| registered, with premium SMS chosen | the operator's final level | "Premium SMS prices are final, VAT included." |
| registered, paying with credit | the entered credit price | none — VAT is not mentioned for the internal currency |
The total due is always the amount actually paid
The switch aims at the prices of individual tariffs, not at the sum. The "total" line shows the same amount that goes to the payment gateway and later onto the document.
Credits are printed as a unit count, not as money
That the credit gateway prints "200 credits" instead of a money format is driven by the Interní měna (internal currency) switch on the currency the gateway's price list is kept in — see Currencies, VAT and units. The plural form comes from the same currency's Popisek za částkou field.
What happens after payment#
- The payment moves to paid.
- The callback is called.
- A membership record with a validity date is created for the user.
- Credit is added if the tariff carries any.
The resulting records are in User payments.
Extension#
If a user buys a tariff again while an existing membership is still running, the new validity is added to the end of the old one.
The customer thus loses none of the remaining period
They need not wait for the last day. So send the expiry reminder well in advance.
Repeated activation#
The Allow activation on a duplicate payment toggle does not handle what its name suggests. A duplicate confirmation of the same transaction (e.g. the gateway sending a notification twice) is always processed only once by the system, regardless of this toggle. It handles a different situation: the customer pays for the same tariff with a second, separate transaction.
Off = the second paid transaction is only logged, membership is not extended
Without this permission the system does not process the second paid transaction at all — it only logs it as an exception for manual follow-up (typically a refund). Turned on, the customer gets an extra period for the second payment. Use it only for services with an automatically computed expiration (bumping, highlighting) — do not enable it for tariffs with side effects such as sending an email or issuing a document, since those would then run twice.
Changing a tariff#
A price change does not affect memberships already paid for
Whoever bought the tariff keeps the original terms until it expires. The change applies from the next purchase.
Disabling a tariff does not end memberships
A disabled tariff merely stops being offered. Whoever owns one uses it up — and that is right.