- Projek FastAPI sedia ada
- Akses Stripe Test Mode
- Frontend diperlukan untuk UI pembayaran
Akses repositori tidak diperlukan. Akses projek hanya perlu jika anda mahu Bacodo mengintegrasikannya secara langsung.
Alat tambah FastAPI
Tambahkan jalur rasmi Python SDK, APIRouter dan webhook yang mengesahkan Stripe-Signature pada await request.body(). FastAPI ialah API — ia bukan Django, bukan DRF, dan ia tidak mengumpul kad.
Dari
$229
USD · FastAPI
Penyepaduan Stripe untuk FastAPI · FastAPI
Requirements
Akses repositori tidak diperlukan. Akses projek hanya perlu jika anda mahu Bacodo mengintegrasikannya secara langsung.
Apa yang dilakukan
Bacodo menyepadukan Stripe ke dalam projek FastAPI yang telah anda miliki. Selepas penyerahan, penghala, kebergantungan dan tetapan hidup dalam repo anda. Anda masih memiliki akaun Stripe, kunci API dan yuran Stripe. FastAPI tidak pernah menyimpan PAN.
Laluan FastAPI Stripe pengeluaran memerlukan pakej jalur rasmi, penciptaan PaymentIntent dalam kebergantungan atau perkhidmatan dan construct_event pada bait permintaan mentah. Jika anda menunggu request.json() dahulu, semakan tandatangan gagal. Itulah pepijat webhook FastAPI yang biasa.
Kami menambahkan APIRouter, tetapan pydantic (atau Tetapan sedia ada anda), titik akhir niat cipta dengan model permintaan Pydantic dan webhook yang menggunakan await request.body(). Tulis pesanan melalui SQLAlchemy, repositori yang sudah anda miliki, atau apa sahaja kedai yang sudah digunakan oleh aplikasi FastAPI — bukan Django ORM.
Pasukan anda melangkau pelaksanaan FastAPI Stripe pengeluaran pertama: cangkuk web badan mentah, pengendalian acara idempoten, PaymentIntents sedar SCA dan penyerahan yang mendokumenkan kunci ujian untuk hidup.
Jurutera dan agensi belakang Python yang telah menjalankan FastAPI. Jika API anda ialah Django, itu ialah Integrasi Stripe untuk Django — kami tidak menampal urls.py ke dalam apl FastAPI.
Ciri utama
Cipta PaymentIntents dengan pustaka Python jalur daripada kebergantungan atau perkhidmatan FastAPI. Kunci rahsia datang daripada Tetapan / env — tidak pernah daripada model Pydantic yang disiarkan oleh pelanggan.
stripe.Webhook.construct_event memerlukan bait yang tepat Stripe signed. Laluan FastAPI dibaca menunggu request.body() dan pengepala Stripe-Signature. Menghuraikan JSON dahulu ialah cara penyepaduan FastAPI Stripe gagal dalam pengeluaran.
Pemenuhan berjalan dalam pengendali FastAPI selepas construct_event berjaya, bukan selepas halaman terima kasih. Kami mengemas kini pesanan atau rekod kelayakan anda yang sedia ada.
Hantar FastAPI dengan kunci ujian Stripe dan rahsia webhook terlebih dahulu. Disiarkan secara langsung ialah env yang didokumenkan dan pemotongan titik akhir Papan Pemuka, bukan lesen tambahan.
Stripe mencuba semula. Pengendali FastAPI mematikan event.id (atau id PaymentIntent) supaya POST pendua tidak memenuhi dua kali.
Apl React, Next.js atau mudah alih hanya menerima kunci boleh diterbitkan dan rahsia pelanggan jangka pendek daripada apl FastAPI ini. Alat tambah ini ialah laluan pelayan FastAPI, bukan Elemen dalam templat Jinja.
Kes penggunaan
Anda sudah membuat pesanan dalam FastAPI dan memerlukan API untuk membuat PaymentIntents dan menandakan pesanan tersebut dibayar daripada webhooks.
Anda memerlukan penghala Stripe yang boleh diselenggara dalam FastAPI, sumber dalam repo klien dan pemotongan kunci langsung yang didokumenkan dan bukannya skrip sekali sahaja di sebelah main.py.
FastAPI mencipta PaymentIntent pertama atau melampirkan kaedah pembayaran. Pengebilan Jalur Berulang kekal pada pelayan. Kerja Pengebilan berat mungkin memerlukan Sebut Harga Tersuai.
Next.js, React atau mudah alih sudah pun memanggil apl FastAPI ini. Integrasi Stripe untuk FastAPI ialah bahagian API sahaja — bahagian hadapan Stripe.js ialah pendaratan platform yang berbeza jika anda memerlukannya juga.
Demo
Pratonton laluan pelayan FastAPI: buat PaymentIntent, terima POST /webhooks/stripe, construct_event on request.body(), kemas kini keadaan pesanan. Kotak pasir langsung terhadap akaun Stripe anda tersedia selepas semakan keserasian. Halaman ini tidak memproses caj sebenar dan tidak mengumpul kad dalam FastAPI.
Cara ia berfungsi
Aliran kerja tambahan Bacodo standard, dengan pemeriksaan khusus FastAPI untuk uvicorn, tetapan pydantic, panggilan jalur async lwn segerak dan kedai yang telah digunakan oleh laluan anda.
01
Sahkan Integrasi Stripe untuk FastAPI dan sama ada hari pertama ialah PaymentIntents, Checkout Sessions atau kedua-duanya pada apl FastAPI.
02
Semak versi FastAPI / Python, pydantic v2, kegigihan pesanan sedia ada (SQLAlchemy atau sebaliknya), kebergantungan pengesahan dan sama ada anda sudah mempunyai akaun Stripe.
03
Tambahkan pakej jalur, APIRouter, titik akhir niat cipta dan webhook yang mengesahkan tandatangan pada request.body().
04
Tetapan Wayar daripada env: kunci rahsia, kunci boleh diterbitkan untuk pelanggan, rahsia webhook dan URL HTTPS awam Stripe akan memanggil.
05
Jalankan acara ujian Stripe CLI atau Papan Pemuka terhadap webhook FastAPI, serta laluan buat-niat dan tolak. Sahkan request.json() akan gagal tandatangan seperti yang diharapkan.
06
Sampaikan sumber FastAPI, nota env dan senarai semak kunci langsung. Pelaksanaan FastAPI adalah milik anda untuk dikekalkan.
Seni bina
Proses FastAPI memegang kunci rahsia. Pelanggan meminta laluan FastAPI untuk membuat PaymentIntent. Stripe memberitahu FastAPI melalui webhook. FastAPI mengesahkan tandatangan atas permintaan.body(), kemudian menulis keadaan pesanan.
Teknologi disokong
FastAPI semasa pada versi Python yang diterima oleh SDK jalur, biasanya disajikan dengan uvicorn. Ini bukan Django dan bukan Flask — kami tidak menambah urls.py atau cetak biru Flask.
PaymentIntents, Checkout Sessions dan Webhook.construct_event. Panggilan penyegerakan daripada laluan async diskop secara jujur (threadpool atau StripeClient async) — kami tidak berpura-pura menyekat jalur adalah percuma dalam def async.
Kemas kini pesanan atau kelayakan kekal di SQLAlchemy, kedai lain atau repositori yang anda sudah ada. Alat tambah ini tidak mencipta model Django.
Akaun Stripe anda, ujian dan kekunci langsung yang digunakan oleh FastAPI, titik akhir webhook dan acara Papan Pemuka. Yuran pemprosesan Stripe kekal dengan Stripe.
Hos yang boleh menjalankan uvicorn (atau setara) dan menerima POST HTTPS daripada Stripe. Tapak statik sahaja tidak boleh mengehoskan laluan webhook FastAPI ini.
Apa yang disertakan
Pricing
Harga ini adalah untuk platform FastAPI sahaja. Ia tidak menggunakan harga tambahan Django, NestJS, Next.js, React atau Flutter.
Penyepaduan Stripe untuk FastAPI
Tambahkan Stripe PaymentIntents sedia pengeluaran dan webhook yang ditandatangani pada apl FastAPI sedia ada dan simpan kod sumber.
Keperluan
$229
sekali bayarFastAPI
Perlu frontend?
Checkout selamat olehstripe
Penyerahan + keselamatan
Penyepaduan FastAPI Stripe biasa dilingkungkan selepas semakan keserasian FastAPI. Garis masa bergantung pada lapisan kegigihan anda dan cara pelanggan memanggil FastAPI.
Niat Pembayaran mod ujian, tandatangan webhook, percubaan semula dan laluan penolakan digunakan terhadap apl FastAPI sebelum kami menyerahkannya.
Kunci rahsia dan rahsia menandatangani webhook kekal dalam env pelayan. Pelanggan hanya menerima kunci boleh diterbitkan atau rahsia pelanggan jangka pendek.
Laluan webhook FastAPI mengesahkan tandatangan Stripe pada badan mentah sebelum mengemas kini pesanan atau keadaan kelayakan.
Kami tidak menuntut pensijilan PCI, penipuan sifar atau kadar kelulusan yang dijamin. FastAPI tidak menyimpan PAN. Data kad dikumpul oleh Stripe Checkout atau Elements pada pelanggan, bukan Borang FastAPI tersuai yang kami kekalkan.
Soalan lazim
Penyepaduan Stripe untuk FastAPI termasuk SDK Python jalur rasmi, FastAPI APIRouter, titik akhir create-PaymentIntent, webhook yang memanggil construct_event pada request.body(), kemas kini keadaan pesanan pada kedai sedia ada anda, ujian terhadap acara ujian Stripe dan nota serahan. Anda menerima sumber FastAPI dalam projek anda. Yuran Stripe dan akaun Stripe anda adalah berasingan.
ya. Penyepaduan Stripe untuk FastAPI dibina untuk apl FastAPI yang telah anda miliki. Kami memasukkan penghala, kebergantungan dan Tetapan ke dalam projek FastAPI semasa anda dan bukannya menghantar apl demo yang berasingan sebagai penghantaran.
Tidak. FastAPI tidak boleh menyimpan PAN. Pelanggan menggunakan Stripe Checkout atau Elements. Stripe Integration untuk FastAPI memiliki PaymentIntents, webhooks dan penulisan pesanan sebelah pelayan. Borang FastAPI tersuai yang menyiarkan data kad mentah adalah di luar skop lalai.
Integrasi Jalur untuk FastAPI menggunakan perpustakaan Python jalur rasmi untuk PaymentIntents, Checkout Sessions dan Webhook.construct_event. Kami tidak membungkus pembayaran FastAPI dalam pemalam tidak berdokumen melainkan anda memerlukannya secara eksplisit.
stripe.Webhook.construct_event mengesahkan bait tepat yang ditandatangani oleh Stripe. await request.json() menghuraikan dan menukar badan itu. Penyepaduan Stripe untuk bacaan FastAPI menanti request.body() pada laluan webhook. Itulah kegagalan semakan tandatangan FastAPI yang biasa jika anda melangkaunya.
Tidak. FastAPI menggunakan APIRouter, Depends dan tetapan pydantic. Pandangan Django, urls.py dan ORM Django ialah Integrasi Jalur untuk Django. Kami tidak menampal corak Django ke dalam apl FastAPI.
FastAPI boleh membuat PaymentIntent atau Sesi Checkout dan menyimpan id pelanggan Stripe. Produk Stripe Billing berulang, portal pelanggan dan logik invois kekal pada pelayan. Kerja FastAPI yang berat langganan mungkin memerlukan Sebut Harga Tersuai.
Proses FastAPI menggunakan kunci rahsia dan rahsia menandatangani webhook daripada Tetapan / pembolehubah persekitaran. Pelanggan hanya menerima kunci yang boleh diterbitkan. Integrasi Jalur untuk FastAPI tidak meletakkan kunci rahsia dalam model permintaan Pydantic.
Kami melaksanakan Integrasi Stripe untuk FastAPI terhadap kunci ujian Stripe dan menguji acara webhook terlebih dahulu. Disiarkan secara langsung ialah kunci yang didokumenkan dan pemotongan titik akhir dalam Stripe Dashboard dan env FastAPI anda, bukan pengaktifan lesen tambahan.
FastAPI mencipta PaymentIntents yang menyokong SCA. Pelanggan melengkapkan 3-D Secure dengan Stripe.js atau Checkout. FastAPI hanya memenuhi selepas payment_intent.succeeded pada webhook, bukan selepas ubah hala penyemak imbas sahaja.
Ya untuk pemenuhan selepas PaymentIntent atau Sesi Checkout yang dibuat oleh FastAPI. FastAPI 200 kepada pelanggan bukanlah sumber kebenaran. Laluan webhook mengesahkan tandatangan dan kemudian menandakan pesanan telah dibayar.
ya. Penyepaduan Stripe untuk FastAPI biasanya menambah medan atau rekod pembayaran yang nipis di sebelah model pesanan FastAPI sedia ada anda dan bukannya menggantikan SQLAlchemy atau mencipta model Django.
Tidak. Anda membuat dan memiliki akaun Stripe, kunci API dan yuran pemprosesan Stripe. Harga tambahan FastAPI dilaksanakan ke dalam projek FastAPI anda, bukan lesen pembayaran Bacodo.
Kami merangkumi perkara ini secara jujur semasa semakan keserasian FastAPI. Menyekat panggilan jalur di dalam async def dialihkan ke threadpool atau kami menggunakan klien async Stripe di mana pelepasan jalur disemat menyokongnya. Kami tidak berpura-pura jalur penyegerakan adalah percuma dalam laluan FastAPI async.
ya. Metadata PaymentIntent atau Sesi Checkout, rekod pelanggan dan medan yang anda kekalkan selepas pengesahan webhook diselaraskan dengan model pesanan FastAPI sedia ada anda semasa Penyepaduan Stripe untuk FastAPI.
Sumber FastAPI ada dalam repo anda, jadi pasukan anda boleh mengekalkannya. Sokongan 30 hari yang disertakan meliputi soalan teknikal dan kecacatan dalam skop Integrasi Stripe untuk FastAPI yang dihantar, bukan kerja ciri FastAPI yang tidak berkaitan.
Semasa tetingkap 30 hari kami membantu dengan kerosakan dalam penyepaduan FastAPI yang dihantar disebabkan oleh API Stripe yang didokumenkan atau perubahan pakej jalur. Peningkatan FastAPI yang berterusan selepas itu ialah penyelenggaraan anda atau Sokongan Teknikal Lanjutan jika anda membelinya.
Kami mendokumenkan cara membaca status PaymentIntent, log Papan Pemuka Stripe dan penghantaran webhook FastAPI. Sokongan 30 hari termasuk menyelesaikan masalah kegagalan tandatangan (biasanya request.json() dan bukannya request.body()), cuba semula dan kekunci tersalah konfigurasi untuk aliran FastAPI yang dihantar.
Kami mengesahkan versi FastAPI, Python dan pydantic v2 anda terhadap keluaran jalur yang kami sematkan pada masa penyepaduan. Masa jalan FastAPI yang lebih lama atau bercabang besar mungkin memerlukan skop tambahan.
30 hari selepas penyerahan disertakan untuk laluan FastAPI Stripe yang dihantar. Sokongan Teknikal Lanjutan adalah pilihan pada 20% daripada harga tambahan FastAPI ini dan meliputi enam bulan lagi bantuan teknikal pada penyepaduan FastAPI yang sama, bukan binaan produk baharu.
Tambahkan pembayaran Stripe sedia pengeluaran pada apl FastAPI sedia ada anda, simpan kod sumber dan biarkan pelayan memiliki pemenuhan sendiri.
$229