- Mevcut FastAPI projesi
- Stripe Test Mode erişimi
- Ödeme arayüzü için frontend gerekir
Depo erişimi gerekmez. Proje erişimi yalnızca Bacodo’nun doğrudan entegre etmesini istiyorsanız gerekir.
FastAPI eklentisi
Resmi şerit Python SDK'sını, bir APIRouter'ı ve wait request.body() üzerinde Stripe-Signature'ı doğrulayan bir web kancasını ekleyin. FastAPI bir API'dir; Django değildir, DRF değildir ve kart toplamaz.
Başlangıç
$229
USD · FastAPI
FastAPI için Stripe Entegrasyonu · FastAPI
Requirements
Depo erişimi gerekmez. Proje erişimi yalnızca Bacodo’nun doğrudan entegre etmesini istiyorsanız gerekir.
Ne işe yarar
Bacodo, Stripe'ı halihazırda sahip olduğunuz FastAPI projesine entegre eder. Devir teslimden sonra yönlendiriciler, bağımlılıklar ve ayarlar deponuzda yer alır. Stripe hesabı, API anahtarları ve Stripe ücretleri hâlâ size aittir. FastAPI hiçbir zaman PAN'ı saklamaz.
Üretim FastAPI Stripe yolunun resmi şerit paketine, bir bağımlılık veya hizmette PaymentIntent oluşturulmasına ve ham istek baytlarında build_event'e ihtiyacı vardır. Önce request.json() işlevini beklerseniz imza kontrolü başarısız olur. Bu her zamanki FastAPI webhook hatasıdır.
Bir APIRouter, pydantic-settings (veya mevcut Ayarlarınız), Pydantic istek modeline sahip bir create-intent uç noktası ve wait request.body() kullanan bir web kancası ekliyoruz. Sipariş yazma işlemleri, Django ORM'den değil, SQLAlchemy'den, halihazırda sahip olduğunuz depodan veya FastAPI uygulamasının zaten kullandığı herhangi bir mağazadan gerçekleştirilir.
Ekibiniz ilk üretim FastAPI Stripe uygulamasını atlıyor: ham gövde web kancaları, bağımsız olay işleme, SCA uyumlu PaymentIntent'ler ve testten canlıya anahtarları belgeleyen bir devir.
Zaten FastAPI çalıştıran Python arka uç mühendisleri ve ajansları. API'niz Django ise, bu Django için Stripe Entegrasyonudur; urls.py'yi bir FastAPI uygulamasına yapıştırmayız.
Temel özellikler
Bir FastAPI bağımlılığından veya hizmetinden şerit Python kitaplığıyla PaymentIntent'ler oluşturun. Gizli anahtar Ayarlar/env'den gelir; asla müşterinin gönderdiği Pydantic modelinden gelmez.
stripe.Webhook.construct_event, Stripe'ın imzaladığı tam bayt sayısına ihtiyaç duyar. FastAPI rotası, wait request.body() ve Stripe-Signature başlığını okur. JSON'u ilk olarak ayrıştırmak, FastAPI Stripe entegrasyonlarının üretimde nasıl başarısız olduğunu gösterir.
FastAPI işleyicisinde yerine getirme, bir teşekkür sayfasından sonra değil, build_event başarılı olduktan sonra çalışır. Mevcut siparişinizi veya yetkilendirme kaydınızı güncelliyoruz.
FastAPI'yi öncelikle Stripe test anahtarları ve webhook sırrıyla birlikte gönderin. Canlı yayına geçmek, bir eklenti lisansı değil, belgelenmiş bir ortam ve Kontrol Paneli uç noktası geçişidir.
Stripe yeniden dener. FastAPI işleyicisi event.id'yi (veya PaymentIntent kimliğini) kapatır, böylece yinelenen POST iki kez yerine getirilmez.
Bir React, Next.js veya mobil uygulama, bu FastAPI uygulamasından yalnızca yayınlanabilir bir anahtar ve kısa ömürlü bir client_secret alır. Bu eklenti, Jinja şablonunun içindeki Öğeler değil, FastAPI sunucu yoludur.
Kullanım senaryoları
Zaten FastAPI'de siparişler oluşturuyorsunuz ve PaymentIntent'ler oluşturmak ve web kancalarından ödenen siparişleri işaretlemek için API'ye ihtiyacınız var.
FastAPI'de bakımı yapılabilir bir Stripe yönlendiricisine, istemci deposundaki kaynağa ve main.py'nin yanında tek seferlik bir komut dosyası yerine belgelenmiş bir canlı anahtar geçişine ihtiyacınız var.
FastAPI ilk PaymentIntent'i oluşturur veya bir ödeme yöntemi ekler. Yinelenen Şerit Faturalandırması sunucuda kalır. Ağır Faturalandırma işleri Özel Teklif gerektirebilir.
Next.js, React veya mobil zaten bu FastAPI uygulamasını çağırıyor. FastAPI için Stripe Entegrasyonu yalnızca API tarafıdır; ön uç Stripe.js, ihtiyacınız varsa farklı bir platform girişidir.
Demo
FastAPI sunucu yolunu önizleyin: PaymentIntent'i oluşturun, request.body()'de POST /webhooks/stripe'i alın, build_event'i alın, sipariş durumunu güncelleyin. Uyumluluk kontrolünden sonra Stripe hesabınıza karşı canlı bir sanal alan kullanılabilir. Bu sayfa gerçek ödemeleri işlemez ve FastAPI'de kart toplamaz.
Nasıl çalışır
uvicorn, pydantic ayarları, eşzamansız ve senkronizasyon şerit çağrıları ve rotalarınızın halihazırda kullandığı depolama için FastAPI'ye özgü kontroller içeren standart Bacodo eklenti iş akışı.
01
FastAPI için Stripe Entegrasyonunu ve ilk günün PaymentIntents, Checkout Sessions veya her ikisi birden olup olmadığını FastAPI uygulamasında doğrulayın.
02
FastAPI / Python sürümlerini, pydantic v2'yi, mevcut sipariş kalıcılığını (SQLAlchemy veya başka türlü), kimlik doğrulama bağımlılıklarını ve zaten bir Stripe hesabınızın olup olmadığını inceleyin.
03
Şerit paketini, bir APIRouter'ı, create-intent uç noktasını ve wait request.body() üzerindeki imzaları doğrulayan bir web kancasını ekleyin.
04
Env'den Kablo Ayarları: gizli anahtar, istemciler için yayınlanabilir anahtar, webhook sırrı ve Stripe'ın çağıracağı genel HTTPS URL'si.
05
FastAPI webhook'a karşı Stripe CLI veya Dashboard test etkinliklerinin yanı sıra amaç oluşturma ve reddetme yollarını çalıştırın. request.json() işlevinin imzanın beklendiği gibi başarısız olacağını doğrulayın.
06
FastAPI kaynağını, env notlarını ve canlı anahtar kontrol listesini sunun. FastAPI uygulamasının bakımı size aittir.
Mimari
FastAPI işlemi gizli anahtarı tutar. Müşteriler FastAPI rotasından bir PaymentIntent oluşturmasını ister. Stripe, FastAPI'ye web kancası aracılığıyla bildirimde bulunur. FastAPI, request.body() üzerindeki imzayı doğrular ve ardından sipariş durumunu yazar.
Desteklenen teknolojiler
Stripe SDK'nın kabul ettiği Python sürümündeki mevcut FastAPI, genellikle uvicorn ile sunulur. Bu Django veya Flask değil; urls.py veya Flask planlarını eklemiyoruz.
PaymentIntents, Ödeme Oturumları ve Webhook.construct_event. Eşzamansız yollardan gelen senkronizasyon çağrıları dürüst bir şekilde kapsamlandırılır (iş parçacığı havuzu veya StripeClient eşzamansız) - engelleme şeridinin eşzamansız def içinde ücretsiz olduğunu iddia etmiyoruz.
Sipariş veya yetki güncellemeleri SQLAlchemy'de, başka bir mağazada veya halihazırda sahip olduğunuz depoda kalır. Bu eklenti bir Django modeli icat etmez.
Stripe hesabınız, FastAPI tarafından kullanılan test ve canlı anahtarlarınız, webhook uç noktası ve Kontrol Paneli etkinlikleri. Stripe işlem ücretleri Stripe'a aittir.
uvicorn (veya eşdeğeri) çalıştırabilen ve Stripe'tan HTTPS POST'ları alabilen bir ana bilgisayar. Yalnızca statik bir site bu FastAPI web kancası yolunu barındıramaz.
Neler dahil
Pricing
Bu fiyat yalnızca FastAPI platformu içindir. Django, NestJS, Next.js, React veya Flutter eklenti fiyatlandırmasını kullanmaz.
FastAPI için Stripe Entegrasyonu
Mevcut bir FastAPI uygulamasına üretime hazır Stripe PaymentIntent'leri ve imzalı web kancalarını ekleyin ve kaynak kodunu saklayın.
Gereksinimler
$229
tek seferlikFastAPI
Frontend gerekir mi?
Güvenli ödeme:stripe
Teslimat ve güvenlik
Tipik FastAPI Stripe entegrasyonunun kapsamı FastAPI uyumluluk kontrolünden sonra belirlenir. Zaman çizelgesi, kalıcılık katmanınıza ve istemcilerin FastAPI'yi nasıl çağırdığına bağlıdır.
Test modu Ödeme Amaçları, webhook imzaları, yeniden denemeler ve reddetme yolları, teslim edilmeden önce FastAPI uygulamasına karşı uygulanır.
Gizli anahtarlar ve web kancası imzalama sırları sunucu ortamında kalır. İstemciler yalnızca yayınlanabilir bir anahtar veya kısa ömürlü bir client_secret alır.
FastAPI webhook rotası, siparişi veya yetkilendirme durumunu güncellemeden önce ham gövdedeki Stripe imzalarını doğrular.
PCI sertifikası, sıfır sahtekarlık veya garantili onay oranları talep etmiyoruz. FastAPI PAN'ı saklamaz. Kart verileri, özel bir FastAPI Formu değil, bir müşteri üzerinde Stripe Checkout veya Elements tarafından toplanır.
SSS
FastAPI için Stripe Entegrasyonu, resmi şerit Python SDK'sını, bir FastAPI APIRouter'ı, bir create-PaymentIntent uç noktasını, wait request.body() üzerinde build_event'i çağıran bir web kancasını, mevcut mağazanızdaki sipariş durumu güncellemelerini, Stripe test etkinliklerine karşı testleri ve devir notlarını içerir. FastAPI kaynağını projenizde alırsınız. Stripe ücretleri ve Stripe hesabınız ayrıdır.
Evet. FastAPI için Stripe Entegrasyonu, halihazırda sahip olduğunuz bir FastAPI uygulaması için tasarlanmıştır. Teslimat olarak ayrı bir demo uygulaması göndermek yerine yönlendiricileri, bağımlılıkları ve Ayarları mevcut FastAPI projenize sığdırıyoruz.
Hayır. FastAPI, PAN'ı saklamamalıdır. Müşteriler Stripe Checkout veya Elements kullanıyor. FastAPI için Stripe Entegrasyonu, sunucu tarafı PaymentIntent'lere, web kancalarına ve sipariş yazma işlemlerine sahiptir. Ham kart verilerini gönderen özel bir FastAPI Formu varsayılan kapsamın dışındadır.
FastAPI için Stripe Entegrasyonu, PaymentIntents, Checkout Sessions ve Webhook.construct_event için resmi şerit Python kitaplığını kullanır. Açıkça gerek duymadığınız sürece FastAPI ödemelerini belgelenmemiş bir eklentiye dahil etmiyoruz.
stripe.Webhook.construct_event, Stripe'ın imzaladığı bayt sayısını doğrular. wait request.json() bu gövdeyi ayrıştırır ve değiştirir. FastAPI okumaları için Stripe Entegrasyonu webhook yolunda wait request.body()'yi okur. Bu, atlarsanız olağan FastAPI imza kontrolü hatasıdır.
Hayır. FastAPI, APIRouter, Depends ve pydantic ayarlarını kullanır. Django görünümleri, urls.py ve Django ORM, Django için Stripe Entegrasyonudur. Django desenlerini FastAPI uygulamasına yapıştırmayız.
FastAPI, PaymentIntent veya Checkout Oturumu oluşturabilir ve Stripe müşteri kimliğini saklayabilir. Yinelenen Stripe Billing ürünleri, müşteri portalı ve fatura mantığı sunucuda kalır. Abonelik ağırlıklı FastAPI çalışmaları için Özel Fiyat Teklifi gerekebilir.
FastAPI işlemi, Ayarlar/ortam değişkenlerindeki gizli anahtarı ve web kancası imzalama sırrını kullanır. İstemciler yalnızca yayınlanabilir anahtarı alır. FastAPI için Stripe Entegrasyonu, Pydantic istek modellerine gizli anahtarlar koymaz.
FastAPI için Stripe Entegrasyonunu Stripe test anahtarlarına karşı uyguluyoruz ve önce webhook olaylarını test ediyoruz. Canlı yayına geçmek, bir eklenti lisansı aktivasyonu değil, Stripe Dashboard'unuzda ve FastAPI ortamınızda belgelenmiş bir anahtar ve uç nokta geçişidir.
FastAPI, SCA'yı destekleyen PaymentIntent'ler oluşturur. Müşteri 3-D Secure'u Stripe.js veya Checkout ile tamamlar. FastAPI, yalnızca tarayıcı yönlendirmesinden sonra değil, yalnızca web kancasında ödeme_intent.succeeded işleminden sonra yerine gelir.
FastAPI tarafından oluşturulan PaymentIntent veya Checkout Oturumu sonrasında yerine getirilmesi için evet. Müşteriye verilen bir FastAPI 200 gerçeğin kaynağı değildir. Webhook rotası imzaları doğrular ve ardından ödenen siparişi işaretler.
Evet. FastAPI için Stripe Entegrasyonu, SQLAlchemy'yi değiştirmek veya bir Django modeli icat etmek yerine genellikle mevcut FastAPI sipariş modelinizin yanına alanlar veya ince bir ödeme kaydı ekler.
Hayır. Stripe hesabını, API anahtarlarını ve Stripe işlem ücretlerini siz oluşturursunuz ve bunların sahibi olursunuz. FastAPI eklenti fiyatı, Bacodo ödeme lisansı değil, FastAPI projenize uygulanmasıdır.
FastAPI uyumluluk kontrolü sırasında bunu dürüstçe ele alıyoruz. Async def içindeki şerit çağrılarını engellemek, bir iş parçacığı havuzuna taşınır veya sabitlenmiş şerit sürümünün desteklediği Stripe'ın eşzamansız istemcisini kullanırız. Eşzamansız bir FastAPI rotasında senkronizasyon şeridinin ücretsiz olduğunu iddia etmiyoruz.
Evet. PaymentIntent veya Checkout Session meta verileri, müşteri kayıtları ve webhook onayından sonra devam ettirdiğiniz alanlar, FastAPI için Stripe Entegrasyonu sırasında mevcut FastAPI sipariş modelinize hizalanır.
FastAPI kaynağı deponuzda olduğundan ekibiniz bu kaynağın bakımını yapabilir. Dahil edilen 30 günlük destek, ilgisiz FastAPI özelliği çalışmasını değil, FastAPI kapsamı için teslim edilen Stripe Entegrasyonu'ndaki teknik soruları ve kusurları kapsar.
30 günlük süre boyunca, teslim edilen FastAPI entegrasyonunda belgelenen bir Stripe API veya şerit paketi değişikliğinin neden olduğu kesintilere yardımcı oluyoruz. Bundan sonra devam eden FastAPI yükseltmeleri bakımınızdır veya satın alırsanız Genişletilmiş Teknik Destektir.
PaymentIntent durumunu, Stripe Dashboard günlüklerini ve FastAPI webhook dağıtımını nasıl okuyacağımızı belgeliyoruz. 30 günlük destek, teslim edilen FastAPI akışı için imza hatalarının giderilmesini (genellikle request.body() yerine request.json()), yeniden denemeleri ve yanlış yapılandırılmış anahtarları içerir.
Entegrasyon zamanında sabitlediğimiz şerit sürümüne göre FastAPI, Python ve pydantic v2 sürümlerinizi onaylıyoruz. Daha eski veya yoğun şekilde çatallanmış FastAPI çalışma zamanları ekstra kapsam gerektirebilir.
Teslim edilen FastAPI Stripe yoluna devirden sonraki 30 gün dahildir. Genişletilmiş Teknik Destek, bu FastAPI eklenti fiyatının %20'si karşılığında isteğe bağlıdır ve yeni bir ürün yapısını değil, aynı FastAPI entegrasyonuna ilişkin altı ay daha teknik yardımı kapsar.
Üretime hazır Stripe ödemelerini mevcut FastAPI uygulamanıza ekleyin, kaynak kodunu saklayın ve ödemenin sunucuya ait olmasına izin verin.
$229