Stripe Connector

Stripe Connector

Poveži svoj Stripe račun z Brevo prek Tajo za popolno sinhronizacijo podatkov o plačilih, upravljanje življenjskega cikla naročnin in marketinško avtomatizacijo, ki jo poganja prihodek.

Pregled

LastnostVrednost
PlatformaStripe
KategorijaE-commerce
Zahtevnost nastavitveEnostavna
Uradna integracijaDa
Sinhronizirani podatkiStranke, plačila, naročnine, računi, dogodki
API Base URLhttps://api.stripe.com/v1

Funkcionalnosti

  • Sinhronizacija strank – sinhroniziraj Stripe stranke s stiki Brevo, vključno z metapodatki
  • Sledenje plačilom – sledi uspešnim plačilom, vračilom in neuspelim bremenitvam
  • Upravljanje naročnin – sinhroniziraj dogodke življenjskega cikla naročnin za retenacijske kampanje
  • Podatki o računih – sinhroniziraj podrobnosti računov za avtomatizacijo po nakupu in obnavljanje
  • Pripisovanje prihodka – preslikaj življenjsko vrednost in MRR v atribute Brevo
  • Webhook dogodki – obvestila o dogodkih v realnem času za vse plačilne aktivnosti
  • Podpora za več valut – obravnavaj plačila v več valutah
  • Sledenje Checkout sejam – spremljaj Stripe Checkout za obnovo neuspelih plačil

Predpogoji

Preden začneš, se prepričaj, da imaš:

  1. Stripe račun z dostopom do API
  2. Stripe API ključe (publishable in secret keys)
  3. Brevo račun z dostopom do API
  4. Tajo račun

Avtentikacija

Avtentikacija z API ključem

Stripe uporablja bearer token avtentikacijo s tvojim secret API ključem.

Terminal window
curl https://api.stripe.com/v1/customers \
-u sk_live_YOUR_SECRET_KEY:

Varnost API ključa

Nikoli ne izpostavljaj svojega secret ključa v kodi na strani odjemalca. Za frontend operacije uporabljaj publishable ključ, secret ključ pa samo na strežniku.

Omejeni API ključi

Za večjo varnost ustvari omejene ključe z določenimi dovoljenji:

  1. Pojdi v Stripe Dashboard > Developers > API Keys
  2. Klikni “Create restricted key”
  3. Odobri samo dovoljenja, ki jih Tajo potrebuje

Zahtevana dovoljenja

customers: read
charges: read
payment_intents: read
subscriptions: read
invoices: read
events: read
products: read
prices: read

Konfiguracija

Osnovna nastavitev

connectors:
stripe:
enabled: true
secret_key: "${STRIPE_SECRET_KEY}"
webhook_secret: "${STRIPE_WEBHOOK_SECRET}"
# Data sync options
sync:
customers: true
payments: true
subscriptions: true
invoices: true
products: true
# Brevo list assignment
lists:
all_customers: 20
subscribers: 21
churned: 22

Preslikava polj

Preslikaj podatke strank Stripe v atribute stikov Brevo:

Privzete preslikave

Parameter Type Description
email required
string

E-mail naslov stranke (enolični identifikator)

name optional
string

Polno ime stranke, razdeljeno na FIRSTNAME/LASTNAME

phone optional
string

Preslika se v atribut SMS za WhatsApp/SMS

currency optional
string

Privzeta valuta stranke

created optional
timestamp

Datum ustvarjanja stranke v Stripe

metadata optional
object

Metapodatki po meri (ključ-vrednost) iz Stripe

subscriptions optional
array

Podrobnosti aktivnih naročnin

balance optional
integer

Stanje računa stranke v centih

Preslikava atributov po meri

field_mapping:
# Standard fields
email: email
name: FULLNAME
phone: SMS
# Payment metrics
total_spent: TOTAL_SPENT
payment_count: PAYMENT_COUNT
last_payment_date: LAST_PAYMENT_DATE
average_order_value: AOV
# Subscription fields
subscription_status: SUB_STATUS
plan_name: PLAN_NAME
mrr: MONTHLY_REVENUE
subscription_start: SUB_START_DATE
# Custom metadata
metadata.customer_tier: VIP_TIER
metadata.referral_source: REFERRAL_SOURCE

API končne točke

Osnovne končne točke

MetodaKončna točkaOpis
GET/v1/customersSeznam vseh strank
POST/v1/customersUstvari stranko
GET/v1/customers/{id}Pridobi stranko
POST/v1/customers/{id}Posodobi stranko
GET/v1/chargesSeznam vseh bremenitev
GET/v1/payment_intentsSeznam plačilnih namenov

Končne točke za naročnine

MetodaKončna točkaOpis
GET/v1/subscriptionsSeznam naročnin
GET/v1/subscriptions/{id}Pridobi naročnino
GET/v1/invoicesSeznam računov
GET/v1/invoices/upcomingPridobi prihajajoči račun
GET/v1/productsSeznam izdelkov
GET/v1/pricesSeznam cen

Končne točke za dogodke

MetodaKončna točkaOpis
GET/v1/eventsSeznam dogodkov
GET/v1/events/{id}Pridobi dogodek

Dogodki

Dogodki plačil

DogodekSprožilecPrimer uporabe
payment_intent.succeededPlačilo zaključenoPotrditev naročila
payment_intent.payment_failedPlačilo neuspeloE-mail za obnovo
charge.refundedObdelano vračiloObvestilo o vračilu
charge.dispute.createdSprožen chargebackObravnava spora

Dogodki naročnin

DogodekSprožilecPrimer uporabe
customer.subscription.createdNova naročninaUvajalni tok
customer.subscription.updatedSpremenjen planTok nadgradnje/znižanja
customer.subscription.deletedPreklicana naročninaPreprečevanje odhoda
customer.subscription.trial_will_endPreizkus se izteče v 3 dnehKampanja za pretvorbo preizkusa
invoice.payment_failedNeuspelo plačilo naročnineSekvenca dunning e-mailov

Dogodki strank

DogodekSprožilecPrimer uporabe
customer.createdDodana nova strankaPozdravni e-mail
customer.updatedSpremenjeni podatki strankeSinhronizacija atributov
customer.deletedOdstranjena strankaČiščenje

Primeri kode

Inicializacija konektorja

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Stripe
await tajo.connectors.connect('stripe', {
secretKey: process.env.STRIPE_SECRET_KEY,
webhookSecret: process.env.STRIPE_WEBHOOK_SECRET
});

Zagon sinhronizacije strank

// Full historical sync
await tajo.connectors.sync('stripe', {
type: 'full',
resources: ['customers', 'subscriptions', 'payments'],
since: '2023-01-01'
});
// Check sync status
const status = await tajo.connectors.status('stripe');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// customersSynced: 12500,
// subscriptionsSynced: 8200,
// paymentsSynced: 45000
// }

Obravnava Stripe webhookov

import Stripe from 'stripe';
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);
app.post('/webhooks/stripe', async (req, res) => {
const sig = req.headers['stripe-signature'];
let event;
try {
event = stripe.webhooks.constructEvent(
req.body,
sig,
process.env.STRIPE_WEBHOOK_SECRET
);
} catch (err) {
return res.status(400).send(`Webhook Error: ${err.message}`);
}
// Forward to Tajo for Brevo sync
await tajo.connectors.handleWebhook('stripe', {
type: event.type,
data: event.data.object
});
res.status(200).json({ received: true });
});

Omejitve zahtevkov

Stripe uveljavlja naslednje omejitve zahtevkov:

TipOmejitevPodrobnosti
Live mode100 read zahtevkov/sekundoNa secret key
Live mode100 write zahtevkov/sekundoNa secret key
Test mode25 zahtevkov/sekundoNa secret key
Dostava webhookov100.000 dogodkov/danNa končno točko

Obravnava omejitev zahtevkov

Stripe vrne odgovor 429 Too Many Requests, ko so omejitve presežene. Implementiraj eksponentno zakasnitev. Za množični prenos podatkov uporabi list končne točke z samodejno paginacijo.

Odpravljanje težav

Pogoste težave

TežavaVzrokRešitev
401 UnauthorizedNeveljaven API ključPreveri secret key v Stripe Dashboard
Neuspel podpis webhookaNapačen webhook secretPonovno skopiraj webhook signing secret iz Dashboard
Stranka ni sinhroniziranaNi e-maila na Stripe strankiZagotovi, da so e-maili nastavljeni na Stripe strankah
Manjkajo podatki o naročniniNezadostna dovoljenjaPosodobi dovoljenja omejenega ključa
Podvojeni dogodkiWebhook ponovna dostavaImplementiraj idempotentnost z ID-ji dogodkov

Način odpravljanja napak

Omogoči podrobno beleženje:

connectors:
stripe:
debug: true
log_level: verbose
log_webhooks: true

Preizkus povezave

Terminal window
tajo connectors test stripe
# ✓ API connection successful
# ✓ Customers readable
# ✓ Subscriptions readable
# ✓ Payments readable
# ✓ Webhook endpoint verified

Najboljše prakse

  1. Uporabi omejene API ključe – ustvari ključe z minimalno potrebnimi dovoljenji
  2. Vedno preveri webhook podpise – prepreči ponarejene webhook dogodke
  3. Obravnavaj idempotentnost – uporabi ID-je Stripe dogodkov za preprečevanje podvojene obdelave
  4. Sinhroniziraj metapodatke stranke – shrani marketinško pomembne podatke v Stripe metadata polja
  5. Spremljaj dostavo webhookov – preveri Stripe Dashboard za neuspele dostave
  6. Najprej uporabi test način – validiraj svojo integracijo s Stripe test mode in test clocks

Varnost

  • Avtentikacija z API ključem – dostop na osnovi secret ključa z podporo za omejene ključe
  • Preverjanje webhook podpisov – validacija HMAC SHA-256 podpisov
  • TLS šifriranje – vsa API komunikacija šifrirana prek HTTPS
  • PCI skladnost – Stripe obravnava PCI DSS skladnost za plačilne podatke
  • Seznam dovoljenih IP – opcijske IP omejitve za dostop do API

Povezani viri

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI pomočnik

Živjo! Vprašajte me o dokumentaciji.

Začnite brezplačno z Brevo