Kuinka lisätä tilaukset Stripella: paketit, kokeilujaksot, webhookit ja epäonnistuneet maksut
Kun haluat lisätä tilauksia Stripella, luo tuote toistuvalla hinnalla Stripe-hallintapaneelissa, ohjaa asiakkaat palvelimeltasi Stripe Checkoutiin tilaustilassa ja anna webhookin kertoa sovellukselle, kun kunkin laskun maksu onnistuu, epäonnistuu, muuttuu tai päättyy. Tallenna tilauksen tila käyttäjän kohdalle ja myönnä käyttöoikeus sen perusteella, älä onnistumissivun perusteella. Lisää Hallinnoi laskutusta -painike, joka avaa Stripen isännöidyn asiakasportaalin, jotta ihmiset voivat vaihtaa korttia, vaihtaa pakettia ja peruuttaa ilman, että rakennat näitä näkymiä itse.
Tämä opas jatkaa ohjetta kuinka lisätä maksut sovellukseesi, joka kattaa kertamaksun Checkoutin, testitilan ja tuotantoon siirtymisen. Tässä keskitytään siihen, mikä on erilaista toistuvassa laskutuksessa. Stripen tiedot ovat Stripen dokumentaatiosta syyskuulta 2026.
Miksi tilaukset ovat vaikeampia kuin kertamaksut
Kertamaksu tapahtuu, kun asiakas on sovelluksessasi. Tilaus jatkuu, kun hän on poistunut: kuukausittaiset uusimiset, vanhenevat kortit, päivitykset kesken kauden ja peruutukset, jotka tulevat voimaan kauden lopussa. Sovelluksesi kuulee näistä vain webhookien kautta. Useimmat tilausvirheet johtuvat siitä, että ensimmäistä maksua käsitellään koko tarinana.
Vaihtoehtosi
| Lähestymistapa | Mitä rakennat | Sopii |
|---|---|---|
| Payment Link toistuvalla hinnalla | Pelkän linkin | Kysynnän testaus; käytön hallinta käsin |
| Checkout (tilaustila) + asiakasportaali | Palvelinreitin, webhookin ja laskutuspainikkeen | Useimmat SaaS-sovellukset ja jäsenyydet |
| Tilaus-API omalla maksulomakkeella | Paljon enemmän: maksu-UI, tunnistautuminen, uusintayritykset | Sovellukset, joilla on epätavallisia laskutusvirtoja |
| Merchant of record -palveluntarjoaja | Samankaltainen kuin Checkout | Myyjät, jotka haluavat palveluntarjoajan hoitavan myyntiveron |
Useimmille sovelluksille Checkout ja asiakasportaali ovat oikea kompromissi. Vertaa palveluntarjoajia ohjeessa Stripe vs Paddle vs Lemon Squeezy, jos veron hoito huolettaa.
Suunnittele hinnoittelu ensin Stripessä
Stripessä tuote on se, mitä myyt ("Pro-paketti"), ja hinta on se, miten veloitat siitä ("20 $ kuukaudessa", "200 $ vuodessa"). Yhdellä tuotteella voi olla useita hintoja. Päätä:
- Mitä tasoja tarjoat ja mitä kukin avaa sovelluksessasi
- Kuukausittain, vuosittain vai molemmat
- Tarjoatko kokeilujakson ja vaatiiko se kortin etukäteen
Luo tuotteet ja hinnat testitilassa ja säilytä hintojen tunnukset; sovelluksesi viittaa niihin. Jos hinnoittelu ei ole vielä selvä, lue kuinka hinnoitella SaaS-tuote ja freemium vs. ilmainen kokeilu.
Tilauksen elinkaari, jota sinun täytyy hallita
Stripen tilausten yleiskatsaus listaa tilat, joissa tilaus voi olla. Käyttöoikeuden kannalta tärkeimmät ovat:
| Tila | Mitä se tarkoittaa | Anna käyttö? |
|---|---|---|
trialing | Kokeilujaksolla | Kyllä |
active | Kunnossa | Kyllä |
incomplete | Ensimmäistä maksua ei vielä suoritettu; Stripe antaa asiakkaalle 23 tuntia | Ei |
incomplete_expired | Ensimmäinen maksu ei koskaan onnistunut | Ei |
past_due | Viimeisin maksu epäonnistui tai sitä ei yritetty; uusintayrityksiä voi seurata | Sinun valintasi; monet sovellukset sallivat lyhyen armonajan |
unpaid | Uusintayritykset loppuivat, laskut jäävät avoimiksi, ei enää yrityksiä | Ei; Stripen dokumentaation mukaan käyttö pitää poistaa |
canceled | Päättynyt; ei voi käynnistää uudelleen | Ei |
paused | Kokeilujakso päättyi ilman maksutapaa ja asetettiin tauolle | Ei |
Tallenna tila käyttäjäsi tai tilisi tietueeseen ja perusta käyttöoikeus siihen. Päivitä se aina, kun asiaankuuluva webhook saapuu.
Webhook-tapahtumat, jotka kannattaa käsitellä
| Tapahtuma | Mitä sovelluksesi tekee |
|---|---|
checkout.session.completed | Yhdistä uuden Stripe-asiakkaan ja tilauksen tunnukset käyttäjääsi |
invoice.paid | Merkitse tilaus aktiiviseksi ja tallenna uusi kauden päättymispäivä |
invoice.payment_failed | Kerro käyttäjälle, että hänen korttinsa epäonnistui, ja linkitä asiakasportaaliin |
invoice.payment_action_required | Pyydä käyttäjää suorittamaan kortin tunnistautuminen |
customer.subscription.updated | Päivitä paketti, tila ja mahdollinen ajastettu peruutus |
customer.subscription.deleted | Poista maksullinen käyttö |
customer.subscription.trial_will_end | Muistuta käyttäjää ennen kokeilun päättymistä; Stripe lähettää sen kolme päivää ennen |
Stripen webhook-dokumentaation käsittelysäännöt pätevät yhä: varmista allekirjoitus raakaa runkoa käyttäen, palauta 2xx nopeasti, käsittele kaksoiskappaleet ja myöhässä saapuvat tapahtumat sekä odota uudelleenyrityksiä. Mikä webhook on -ohje selittää ajatuksen, ja maksuohje listaa säännöt tarkemmin.
Vaihe vaiheelta
- Luo tuotteet ja hinnat Stripen testitilassa.
- Lisää salaisuudet: salainen avain, hintojen tunnukset ja myöhemmin webhookin allekirjoitussalaisuus. Älä koskaan laita niitä etupään koodiin.
- Hinnoittelusivu: jokaisen paketin painike kutsuu palvelintasi, joka luo Checkout-istunnon tilaustilassa kirjautuneelle käyttäjälle. Lähetä käyttäjätunnuksesi mukana, jotta webhook voi yhdistää maksun tiliin.
- Webhook-päätepiste: varmista allekirjoitukset ja käsittele yllä olevat tapahtumat, ja päivitä yksi tilaustietue per käyttäjä.
- Rajaa ominaisuudet tallennetun tilan ja paketin perusteella, tarkistettuna palvelimella jokaisessa suojatussa toiminnossa, ei pelkkien piilotettujen painikkeiden varassa.
- Asiakasportaali: määritä se Stripe-hallintapaneelissa (mihin paketteihin ihmiset voivat vaihtaa, saavatko he peruuttaa), ja lisää sitten Hallinnoi laskutusta -painike, joka luo portaalin istunnon palvelimella ja ohjaa sinne.
- Epäonnistuneet maksut: valitse Stripen laskutusasetuksista uusintakäyttäytyminen ja se, mitä tapahtuu viimeisen uusintayrityksen jälkeen. Näytä sovelluksessa banneri, kun tila on
past_due. - Testaa koko elinkaari, julkaise ja rekisteröi live-webhook.
Kehotteet tekoälyrakentajalle
Lisää tilauslaskutus Stripella. Paketit: Starter (hinnan tunnus STRIPE_PRICE_STARTER) ja Pro (STRIPE_PRICE_PRO). Hinnoittelusivu luo Checkout-istunnon tilaustilassa palvelimella käyttäen STRIPE_SECRET_KEY-avainta, ja kirjautuneen käyttäjän tunnus liitetään mukaan. Tallenna Stripe-asiakkaan tunnus, tilauksen tunnus, paketti ja tila käyttäjälle. Salainen avain ei koskaan saa näkyä selaimelle.
Lisää POST /api/stripe/webhook. Varmista allekirjoitus STRIPE_WEBHOOK_SECRET-avaimella raakaa pyyntörunkoa käyttäen. Käsittele checkout.session.completed, invoice.paid, invoice.payment_failed, customer.subscription.updated, customer.subscription.deleted ja customer.subscription.trial_will_end. Tallenna käsiteltyjen tapahtumien tunnukset, jotta kaksoiskappaleet ohitetaan. Päivitä käyttäjän tila tilausobjektista, ei siitä järjestyksestä, jossa tapahtumat saapuvat.
Rajaa Pro-ominaisuudet palvelimella: salli ne vain, kun tila on active tai trialing ja paketti on Pro. Näytä banneri "maksu epäonnistui, päivitä korttisi", kun tila on past_due. Lisää Hallinnoi laskutusta -painike, joka avaa tämän käyttäjän Stripe-asiakasportaalin.
Päivitykset, alennukset ja proraatio
Kun asiakas vaihtaa pakettia, Stripen dokumentaation mukaan muutos luo usein proraation: uusi hinta sovelletaan nykyisen laskutuskauden jäljellä olevaan osaan. Voit esikatsella proraatioita tai kytkeä ne pois. Jos paketeilla on sama väli, laskutuspäivät pysyvät samoina; kuukausittaisesta vuosittaiseen siirryttäessä laskutuspäivä siirtyy vaihtopäivään. Jos annat asiakkaiden vaihtaa pakettia portaalissa, säästät tämän logiikan kirjoittamisen, mutta päätä portaalin asetuksissa, mitkä vaihdot ovat sallittuja.
Testauslista
Käytä Stripen testitilaa ja testikortteja ja käy läpi jokainen tila:
- Uusi tilaus antaa oikean paketin oikealle käyttäjälle
- Selaimen sulkeminen heti maksun jälkeen antaa silti käytön (todistaa, että webhook toimii)
- Hylätty kortti rekisteröitymisessä ei anna mitään
- Epäonnistunut uusiminen siirtää tilin tilaan past_due ja näyttää bannerin
- Kortin päivitys portaalissa palauttaa tilan active
- Paketin nosto ja lasku muuttavat ominaisuuksia oikein
- Peruutus kauden lopussa säilyttää käytön lopun päivään asti ja poistaa sen sen jälkeen
- Kokeilukäyttäjät saavat käytön, muistutuksen, ja muuttuvat maksaviksi tai menettävät käytön oikein
- Saman webhook-tapahtuman lähettäminen kahdesti ei muuta mitään
Stripen testikellot antavat simuloida ajan kulumista, joten voit testata uusimiset odottamatta kuukautta. Tarkista Stripen nykyiset testausohjeet, miten niitä käytetään.
Yleisimmät virheet
- Käytön myöntäminen onnistumissivulla. Asiakas voi maksaa eikä koskaan päätyä sinne. Käytä webhookia.
- Vain ensimmäisen maksun käsittely. Uusimiset, epäonnistumiset ja peruutukset tulevat myöhemmin tapahtumina.
- Paketin tilan tarkistaminen vain etupäässä. Kuka tahansa voi kutsua API:asi suoraan.
- Yksi käyttäjä, monta tilausta vahingossa. Tarkista olemassa oleva tilaus ennen uuden Checkout-istunnon luomista tai ohjaa nykyiset asiakkaat portaaliin.
- Käytön peruuttaminen ensimmäisellä epäonnistuneella uusimisella. Kortit epäonnistuvat tylsistä syistä. Lyhyt armonaika ja selkeä banneri pitävät asiakkaat.
- Live-webhookin unohtaminen. Testi- ja live-päätepisteillä on eri allekirjoitussalaisuudet.
- Veron ja hyvitysten sivuuttaminen. Päätä hyvityskäytännöstäsi ja tarkista verovelvoitteesi kirjanpitäjän kanssa ennen julkaisua.
Tilaukset Mythexissä
Mythexilla rakentamissasi sovelluksissa käytät omaa Stripe-tiliäsi ja avaimiasi; sovellukselle ei ole yhden napsautuksen Stripe-yhteyttä. Lisää testiavaimesi ja hintojen tunnukset projektin salaisuuksiksi, käytä yllä olevien kaltaisia kehotteita ja testaa Stripen testikorteilla Previewssa. Webhookit tarvitsevat sovelluksesi julkisen URL-osoitteen, joten julkaise ennen päätepisteen rekisteröimistä Stripeen ja julkaise uudelleen, kun vaihdat live-avaimiin, jotta live-sovellus ottaa ne käyttöön. Katso Ota maksut vastaan Stripellä ja Käsittele webhookit taustajärjestelmässäsi. Laajempaan tuotteeseen kuinka rakentaa SaaS-MVP kertoo, mitä laskutuksen ympärille rakennetaan.
Kysymykset
Mikä on yksinkertaisin tapa lisätä tilauksia Stripella?
Luo tuote toistuvalla hinnalla Stripe-hallintapaneelissa, ohjaa asiakkaat Stripe Checkoutiin tilaustilassa, käsittele tilaustapahtumat webhookilla ja linkitä Hallinnoi laskutusta -painike Stripen isännöimään asiakasportaaliin. Näin et rakenna itse korttilomakkeita tai paketinvaihtonäkymiä.
Mitkä Stripen webhook-tapahtumat tarvitsen tilauksiin?
Vähintään checkout.session.completed, jolla yhdistät uuden tilauksen käyttäjääsi, invoice.paid vahvistamaan jokaisen onnistuneen maksun, invoice.payment_failed varoittamaan epäonnistuneista uusimisista sekä customer.subscription.updated ja customer.subscription.deleted seuraamaan paketin muutoksia ja peruutuksia.
Mitä tapahtuu, kun tilausmaksu epäonnistuu?
Stripen dokumentaation mukaan syyskuusta 2026 alkaen tilaus yleensä siirtyy tilaan past_due, ja Stripe voi yrittää maksua uudelleen asetustesi mukaan. Viimeisen uusintayrityksen jälkeen hallintapaneelin asetukset päättävät, peruutetaanko tilaus, merkitäänkö se unpaid-tilaan vai jääkö se past_due-tilaan.
Voinko tarjota ilmaisen kokeilujakson ilman korttia?
Kyllä. Stripe tukee ilmaisia kokeilujaksoja, ja sen dokumentaatio kuvaa paused-tilan kokeiluille, jotka päättyvät ilman maksutapaa, kun se on asetettu niin. Kortin kerääminen etukäteen tarkoittaa yleensä vähemmän rekisteröitymisiä mutta enemmän maksavia asiakkaita; kokeile, mikä sopii tuotteellesi.