Stripe-integraation asennus
Kun siirrät tilauksia Stripesta Fenerumiin.
Käyttääksesi SEPA-suoraveloitusta yhtenä laskutusmenetelmänä.
Tärkeää
Varmistaaksesi, että Stripe-integraatiosi toimii Fenerumin kanssa, on tärkeää, että menet Stripe-asetuksiisi ja merkitset ruudun kohdassa 'Enable card data collection with a publishable key without using Stripe’s pre-built UI elements'.
Vaikka Stripe neuvoo varovaisuuteen tämän toiminnon käyttöönotossa, sen voi turvallisesti aktivoida ilman huolta.
Integraation asennus
Voit nopeasti yhdistää olemassa olevan Stripe-tilisi Fenerumiin tai luoda uuden Stripe-tilin aloittaaksesi maksujen vastaanottamisen asiakkailtasi Fenerumissa.
Edellytykset
Sinun on asetettava korttimaksutilisi ja palkkiotilisi Fenerumissa, kun määrität kirjanpitojärjestelmäsi.. Et voi käyttää Stripe-integraatiota ennen kuin tämä on tehty.
Yhdistäminen
Siirry integraatioasetuksiin Fenerumissa ja etsi Stripe-integraatio "Maksut"-osiossa.
Täällä sinun on napsautettava joko "Luo uusi Stripe-tili" tai "Aseta olemassa oleva tili". Tämä ohjaa sinut Stripeen, josta voit joko yhdistää olemassa olevan Stripe-tilisi tai voit luoda uuden, jos sinulla ei vielä ole sellaista.
Kun olet suorittanut prosessin, sinut ohjataan takaisin Fenerumiin ja integraatio on asennettu ja valmis käytettäväksi.
Maksukortin lisääminen
Nyt sinun on liitettävä luottokorttitiedot asiakkaaseesi. Fenerum ei tallenna arkaluonteisia luottokorttitietoja, joten kortti on luotava Stripe:ssa ja niiden id on lähetettävä Fenerumiin.
Tämä voidaan tehdä kahdella tavalla:
- Jos käsittelet korttien luontia backendissäsi, sinun tarvitsee vain lähettää Stripe PaymentMethod ID Fenerumiin käyttämällä API-kutsua: Luo kortti API:n avulla. Yksityiskohtainen opas Stripe:n ja Fenerumin integroimiseksi sovellukseesi löytyy alla olevasta osiosta Rekisteröi maksukortit sovelluksessasi.
- Voit myös antaa Fenerumin huolehtia siitä. Kuinka tehdä se, katso tästä oppaasta.
Olemassa olevien tietojen tuonti
Jos haluat tuoda olemassa olevat luottokorttitiedot Fenerumiin, seuraa tätä opasta.
Maksukorttien rekisteröinti sovelluksessasi
On useita tapoja rekisteröidä asiakkaiden maksukortit Fenerumiin. Kätevin ja yksinkertaisin menetelmä käyttää omistettua linkkiä, jonka voit luoda ja lähettää asiakkaallesi tai ohjata käyttäjäsi siihen. Lue lisää tästä aiheesta tästä oppaasta.
Kun käyttäjien ohjaaminen sovelluksestasi Fenerumiin ei ole suosimasi tapa kerätä maksukorttitietoja, seuraa tämän oppaan vaiheita.
Luo Setup Intent Stripe:ssa
Ennen maksukortin rekisteröintilomakkeen näyttämistä sinun on rekisteröitävä Setup Intent Stripe:ssa. Yksityiskohtainen kuvaus tuetuista parametreista löytyy Stripe API -oppaasta.
Setup Intent -luontipisteen vastausdatassa on client_secret
-kenttä, jota käytetään vahvistamaan maksukorttitiedot Stripe:ssa.
{
"id": "seti_1Iuxae2eZvKYlo2CbFMPr2HY",
...
"client_secret": "seti_1Iuxae2eZvKYlo2CbFMPr2HY_secret_JY3ikTrSjRl5hcEgfCvE0MMQUpCrk5s",
...
}
Näytä maksukorttilomake verkkosovelluksessasi
Kun olet saanut Setup Intentin client_secret
-attribuutin, olemme valmiita näyttämään maksukortin rekisteröintilomakkeen. Käytämme Stripe Elements -kirjastoa Stripe.js:stä raskaan työn tekemiseen. Kaikki lisävaltuutusvaiheet, mukaan lukien 3D secure, käsitellään automaattisesti kirjaston toimesta.
<div class="sr-form-row">
<label>
Maksutiedot
</label>
<div class="sr-input sr-element sr-card-element" id="card-element">
<!-- Tähän lisätään Stripe-kortti Element. -->
</div>
</div>
<div class="sr-field-error" id="card-errors" role="alert"></div>
<button id="submit">Linkitä korttisi tilillesi</button>
var stripe = Stripe(publicKey);
var elements = stripe.elements();
var card = elements.create("card");
var button = document.getElementById("submit");
card.mount("#card-element");
button.addEventListener("click", function(event) {
event.preventDefault();
stripe
.confirmCardSetup(clientSecret, { // client_secret edellisestä vaiheesta
payment_method: {
card: card,
billing_details: { name: "John Smith" }
}
})
.then(function(result) {
if (result.error) {
var displayError = document.getElementById("card-errors");
displayError.textContent = result.error.message;
} else {
// Maksutapa onnistuneesti asetettu.
registerNewPaymentCard(
result.setupIntent.payment_method
);
}
});
});
};
Täydellinen esimerkki front-end-sovelluksesta on saatavilla tässä repositoriossa.
Rekisteröi maksukortti Fenerumissa
registerNewPaymentCard
-funktio, jota käytettiin tämän oppaan edellisen vaiheen koodinäytteessä, tulee lähettää äskettäin luotu Payment Method ID sovelluksesi backendiin, joka sitten luo uuden Payment Card -objektin Fenerumissa käyttäen API:a.
POST /api/v1/paymentcards/
Authorization: Token XXX
Content-Type: application/json
X-Client-System: MyAwesomeCRM
X-User: jsmith
{
"account": "<Account.uuid>",
"gateway": "stripe_new",
"token": "<Payment Method ID>"
}
(Valinnainen) Vanhentuneiden valtuutusten käsittely
Riippuen Payment Cardin erityisestä asetuksesta, kortin omistajan antama automaattisten maksujen valtuutus saattaa vanhentua. Tämän tilanteen käsittelyyn on kaksi tapaa:
- Fenerum lähettää sähköpostin tilin omistavan maksukortin vastaanottajille. Viestissä on linkki Fenerumin omistamaan erityiseen maksusivustoon. Voit valita tämän käyttäytymisen — ota rohkeasti yhteyttä asiakastukeemme sen asettamiseksi.
- Fenerum ilmoittaa sovelluksellesi valtuutuksen tarpeesta ja sovelluksesi käsittelee sen käyttöliittymässään.
Jos haluat käsitellä vanhentuneet valtuutukset sovelluksessasi, sinun on otettava käyttöön payment.authentication_required
Webhook. Kun sovelluksesi vastaanottaa sen, sinun on ilmoitettava asiakkaallesi ja pyydettävä häntä siirtymään maksun uudelleenyrityssivullesi.
Ennen sivun näyttämistä sinun on hankittava epäonnistuneen Payment Intentin client_secret
-attribuutti hankkimalla tämä Payment Intent. Tämän objektin tunniste on saatavilla webhook-datassa payment_gateway_id
-avaimessa.
Valtuutusprosessin laukaisemiseksi käytämme jälleen Stripe.js -kirjastoa.
var button = document.getElementById("submit");
button.addEventListener("click", function(event) {
var stripe = Stripe(publicKey);
stripe
.handleCardPayment(clientSecret, { // client_secret edellisestä vaiheesta
payment_method: paymentMethodId, // setupIntent.payment_method saatu yhdessä edellisistä vaiheista
setup_future_usage: "off_session"
})
.then(function (result) {
if (result.error) {
alert(result.error.message);
} else {
// valtuutus ja maksun uudelleenyritys onnistui
}
});
});
Onnittelut! Voit käyttää tätä uutta maksukorttia asiakkaasi tilausten maksutapana. 🙂
SCA
Syyskuusta 2019 alkaen uusi sääntely nimeltä Strong Customer Authentication (SCA) vaatii Euroopan yrityksiä pyytämään lisävaltuutusta verkkomaksuille.
Fenerumille tämä tarkoittaa, että maksut Euroopan pankkien myöntämillä korteilla saattavat vaatia lisävaltuutusta (useimmissa tapauksissa tämä tulee olemaan 3-D Secure -mekanismi).
Tässä tapauksessa Fenerum lähettää sähköpostin linkillä manuaaliseen transaktion vahvistamiseen eikä sinun tarvitse tehdä mitään tältä osin.
Tämä sääntely vaatii myös lisävahvistuksen, kun tallennetaan korttitietoja tulevaa käyttöä varten. Jos käytät Fenerumin linkkiä korttitietojen keräämiseen, sinun ei tarvitse tehdä mitään, koska päivitetty lomake tukee 3-D Securea kortin syöttölomakkeessa.
Vaadittavat muutokset
Vain jos käytät Fenerumin API:a lisätäksesi kortin käyttäen Stripe-tokenia, sinun on päivitettävä integraatiosi käsittelemään Stripe SetupIntent Card Tokenin sijaan.
Yksityiskohtia siirtymisestä löytyy Stripe-dokumentaatiosta.
Fenerumin näkökulmasta sinun on muutettava PaymentCard create API-kutsun käyttöä.
Sinun on lähetettävä Stripe PaymentMethod.id token-kentässä ja asetettava gateway arvoon "stripe_new".
Vanhan kuorman esimerkki:
{
"account": "2a79956a-21fa-429c-b3d5-8e38c5e34afb",
"gateway": "stripe",
"token": "card_1EidxPFXVCQFEes0L0YQxWJy"
}
Uuden kuorman esimerkki:
{
"account": "2a79956a-21fa-429c-b3d5-8e38c5e34afb",
"gateway": "stripe_new",
"token": "pm_1F9rgdFXVCQFEes0oaYqf8HO"
}
Huomautus taaksepäin yhteensopivuudesta
Vanha token tuetaan edelleen Fenerumissa (gateway-tyypillä 'stripe'), mutta sinun pitäisi odottaa, että jokainen ensimmäinen maksu käyttäen korttia, joka on rekisteröity sen avulla, vaatii 3-D secure -valtuutuksen kortin tallennuksen sijaan.
Sama koskee vanhoja kortteja, sinun pitäisi odottaa, että jokainen ensimmäinen maksu 14. syyskuuta jälkeen vaatii 3-D secure -haasteen. Fenerum lähettää sähköposteja asiakkaillesi, kun maksu epäonnistuu linkillä antamaan 3-D secure -tiedot.
Saatat haluta ilmoittaa asiakkaallesi tästä.
Käytä SEPA-suoraveloitusta
SEPA-yhteensopivuus
SEPA-suoraveloitusta voidaan käyttää vain tietyissä maissa (jotka ovat osa SEPAa) ja vain EUR:n siirtämiseen. Lisätietoja löytyy Stripe-dokumentaatiosta.
Käyttääksesi SEPA-suoraveloitusta yhtenä laskutusmenetelmänä sinun on oltava Stripe-integraatio käytössä ja määritettävä SEPA yhdeksi maksutavaksesi Stripe-kojelaudassa. Muista olla poistamatta SEPAan liittyviä sähköposteja Stripesta tai käsitellä niitä itse - Fenerum ei lähetä sähköposteja SEPA-maksuista asiakkaille, jotta ei tuplata Stripea tai omaa integraatiotasi Stripeen. Sitten voit ottaa SEPA:n käyttöön merkitsemällä "Ota SEPA-suoraveloitus käyttöön" integraatioasetussivulla. Merkitsemällä tämän valintaruudun ilmoitat, että kaikki tarvittavat asetukset Stripe-puolella on suoritettu.
SEPA-suoraveloituksen lisääminen laskutusmenetelmäksi on samanlaista kuin kortin lisääminen Stripea käyttäen.
Maksusuoritus
Kun saat maksusuorituksen Stripesta, se näkyy pankkitapahtumarivinä Fenerumissa maksusuorituskuitin kanssa.
Nämä kaksi on sovitettava yhteen ennen kuin ne voidaan lähettää kirjanpitojärjestelmääsi. Tämä voidaan tehdä joko automaattisesti tai manuaalisesti.
Lue lisää tästä tässä oppaassa.