Oppsett av Stripe-integrasjon

Når du migrerer abonnementer fra Stripe til Fenerum.

For å bruke SEPA direkte belastning som en av faktureringsmetodene.

Viktig

For å sikre at din Stripe-integrasjon fungerer med Fenerum, er det viktig at du går inn i dine Stripe-innstillinger og merker av for 'Aktiver kortdata samling med en publiserbar nøkkel uten å bruke Stripe’s forhåndsbygde UI-elementer'.

Selv om Stripe råder til forsiktighet når du aktiverer denne funksjonen, kan den trygt aktiveres uten noen grunn til bekymring.

Oppsett av integrasjonen

Du kan raskt koble din eksisterende Stripe-konto med Fenerum, eller opprette en ny Stripe-konto for å begynne å akseptere betalinger fra kundene dine i Fenerum.

Forutsetninger

Du må ha satt opp din kortbetalingskonto og gebyrkonto i Fenerum når du konfigurerer regnskapssystemet ditt.. Du kan ikke bruke Stripe-integrasjonen før dette er gjort.

Tilkobling

Gå til integrasjonsinnstillingene i Fenerum og finn Stripe-integrasjonen i "Betalinger"-seksjonen.

Her må du klikke enten på "Opprett ny Stripe-konto" eller "Oppsett eksisterende konto". Dette vil omdirigere deg til Stripe, der du kan enten koble din eksisterende Stripe-konto, eller du kan opprette en ny hvis du ikke allerede har en.

Når du har fullført prosessen, vil du bli omdirigert tilbake til Fenerum og integrasjonen vil være satt opp og klar til bruk.

Legge til et betalingskort

Nå må du knytte kredittkortdata til kunden din. Fenerum lagrer ikke sensitiv kredittkortdata, så kortet må opprettes i Stripe og deres id sendes til Fenerum.

Det er to måter å gjøre dette på:

  • Hvis du håndterer kortopprettelse i backenden din, trenger du bare å sende Stripe PaymentMethod ID til Fenerum ved hjelp av API-kall: Opprett et kort ved hjelp av API. En detaljert guide om integrering av Stripe og Fenerum med applikasjonen din finnes i seksjonen Registrer betalingskort i applikasjonen din nedenfor.
  • Du kan også la Fenerum ta seg av det. Hvordan du gjør det kan du lese i denne guiden.

Import av eksisterende data

Hvis du vil importere eksisterende kredittkortdata til Fenerum, følg denne guiden.

Registrer betalingskort i applikasjonen din

Det er flere måter å registrere kundenes betalingskort med Fenerum. Den mest praktiske og enkle metoden bruker en dedikert lenke som du kan generere og sende til kunden din eller omdirigere brukeren din til. For å lese mer om dette emnet, vennligst besøk denne guiden.

Når det å omdirigere brukere fra applikasjonen din til Fenerum ikke er din foretrukne måte å samle inn betalingskortdata på, vennligst følg trinnene i denne guiden.

Opprett en Setup Intent i Stripe

Før du viser betalingskortregistreringsskjemaet, må du registrere en Setup Intent i Stripe. For en detaljert beskrivelse av støttede parametere, vennligst se Stripe API-guide.

Responsdataene fra Setup Intent opprettelses-endepunktet inneholder feltet client_secret som vil bli brukt for å bekrefte betalingskortdata med Stripe.

{  
    "id": "seti_1Iuxae2eZvKYlo2CbFMPr2HY",  
    ...  
    "client_secret": "seti_1Iuxae2eZvKYlo2CbFMPr2HY_secret_JY3ikTrSjRl5hcEgfCvE0MMQUpCrk5s",  
    ...  
}

Vis betalingskortskjemaet i webapplikasjonen din

Etter å ha fått client_secret-attributtet til en Setup Intent, er vi klare til å vise betalingskortregistreringsskjemaet. Vi vil bruke Stripe Elements-biblioteket fra Stripe.js for å gjøre det tunge løftet. Eventuelle ekstra autorisasjonstrinn, inkludert 3D secure, håndteres automatisk av biblioteket.

<div class="sr-form-row">  
  <label>  
    Betalingsdetaljer  
  </label>  
  <div class="sr-input sr-element sr-card-element" id="card-element">  
    <!-- Et Stripe-kortelement vil bli satt inn her. -->  
  </div>  
</div>  
<div class="sr-field-error" id="card-errors" role="alert"></div>  
<button id="submit">Koble kortet ditt til kontoen din</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 fra forrige trinn  
        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 {  
          // Betalingsmetoden ble vellykket satt opp.  
          registerNewPaymentCard(  
              result.setupIntent.payment_method  
          );  
        }  
      });  
  });  
};

Et komplett eksempel på en front-end-applikasjon er tilgjengelig i dette repositoriet.

Registrer betalingskort i Fenerum

Funksjonen registerNewPaymentCard som ble brukt i kodeeksemplet fra forrige trinn i denne guiden bør sende den nylig opprettede Payment Method ID til backenden av applikasjonen din som skal opprette et nytt Payment Card-objekt i Fenerum ved hjelp av API.

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>"  
}

(Valgfritt) Håndter utløpte autorisasjoner

Avhengig av den spesifikke oppsettet av et betalingskort, kan automatisk betalingsautorisasjon gitt av kortinnehaveren utløpe. Det er to måter å håndtere denne situasjonen på:

  • Fenerum sender en e-post til mottakerne av kontoen som eier dette betalingskortet. Meldingen inneholder en lenke til en dedikert betalingswebside i Fenerum. Du kan velge å bruke denne oppførselen - ta gjerne kontakt med vår kundestøtte for å sette det opp.
  • Fenerum varsler applikasjonen din om behovet for autorisasjon og applikasjonen din håndterer det i brukergrensesnittet.

Hvis du foretrekker å håndtere utløpte autorisasjoner i applikasjonen din, må du aktivere payment.authentication_required Webhook. Når applikasjonen din mottar det, må du varsle kunden din og be ham om å gå over til betalingsforsøkssiden din.

Før du viser siden, må du få client_secret-attributtet til den mislykkede Payment Intent ved å hente denne Payment Intent. Identifikatoren til dette objektet er tilgjengelig i webhook-dataene i nøkkelen payment_gateway_id.

For å utløse autorisasjonsprosessen vil vi igjen bruke Stripe.js biblioteket.

var button = document.getElementById("submit");  
  
button.addEventListener("click", function(event) {  
    var stripe = Stripe(publicKey);  
  
    stripe  
        .handleCardPayment(clientSecret, {  // client_secret fra forrige trinn  
            payment_method: paymentMethodId,  // setupIntent.payment_method oppnådd i ett av de forrige trinnene  
            setup_future_usage: "off_session"  
        })  
        .then(function (result) {  
            if (result.error) {  
                alert(result.error.message);  
            } else {  
                // autorisasjon og betaling prøvd på nytt vellykket  
            }  
        });  
});

Gratulerer! Du kan bruke dette nye betalingskortet som en betalingsmetode for kundens abonnementer. 🙂

SCA

Fra september 2019 vil en ny regulering kalt Strong Customer Authentication (SCA) kreve at bedrifter i Europa ber om ekstra autentisering for online betalinger.

For Fenerum betyr dette at betalinger med kort utstedt av europeiske banker kan kreve ekstra autentisering (i de fleste tilfeller vil dette være 3-D Secure-mekanismen).

I slike tilfeller vil Fenerum sende en e-post med lenke til manuell bekreftelse av transaksjonen og du er ikke pålagt å gjøre noe på den delen.

Denne reguleringen krever også ekstra bekreftelse når du lagrer kortdetaljer for fremtidig bruk. Hvis du bruker Fenerum-lenke for å hente kortdetaljer, er du ikke pålagt å gjøre noe ettersom oppdatert skjema vil støtte 3-D Secure på kortinngangsskjemaet.

Nødvendige endringer

Bare hvis du bruker Fenerum API for å legge til kort ved hjelp av Stripe-token, må du oppdatere integrasjonen din for å håndtere Stripe SetupIntent i stedet for Card Token.
For detaljer om hvordan du migrerer, henvis til Stripe-dokumentasjonen.

Fra Fenerums synspunkt må du endre bruken av PaymentCard create API-kallet.

Du må sende Stripe PaymentMethod.id på token-feltet og sette gateway til "stripe_new".

Eksempel på gammel nyttelast:

{  
"account": "2a79956a-21fa-429c-b3d5-8e38c5e34afb",  
"gateway": "stripe",  
"token": "card_1EidxPFXVCQFEes0L0YQxWJy"  
}

Eksempel på ny nyttelast:

{  
"account": "2a79956a-21fa-429c-b3d5-8e38c5e34afb",  
"gateway": "stripe_new",  
"token": "pm_1F9rgdFXVCQFEes0oaYqf8HO"  
}

Merk om bakoverkompatibilitet

Den gamle tokenen vil fortsatt bli støttet av Fenerum (med gateway-typen 'stripe'), men du bør forvente at hver første betaling ved bruk av kort registrert med den vil kreve 3-D secure-autentisering i stedet for å autorisere den under kortlagring.

Det samme gjelder gamle kort, du bør forvente at hver første betaling etter 14. september vil kreve 3-D secure utfordring. Fenerum vil sende e-poster til kundene dine når betalingen mislykkes med lenke for å gi 3-D secure detaljer.
Du vil kanskje informere kunden din om det.

Bruk SEPA direkte belastning

SEPA-kompatibilitet

SEPA direkte belastning kan bare brukes i visse land (som er en del av SEPA) og bare for å overføre EUR. For detaljer, sjekk Stripe-dokumentasjonen.

For å bruke SEPA direkte belastning som en av faktureringsmetodene, må du ha Stripe-integrasjon aktivert og konfigurert SEPA som en av betalingsmetodene dine i Stripe-dashboardet. Husk å ikke slå av sending av SEPA-relaterte e-poster av Stripe eller å håndtere dem selv - Fenerum sender ikke e-poster om SEPA-betalinger til kunder for å ikke doble Stripe eller din egen integrasjon med Stripe. Deretter kan du aktivere bruk av SEPA ved å merke av for "Aktiver bruk av SEPA-debet" på integrasjonsinnstillingssiden. Ved å merke av denne avkrysningsboksen erklærer du at all nødvendig konfigurasjon på siden av Stripe er fullført.

Å legge til SEPA direkte belastning som en faktureringsmetode er analogt med å legge til kort ved hjelp av Stripe.

Utbetaling

Når du mottar en utbetaling fra Stripe, vil den vises som en banktransaksjonslinje i Fenerum sammen med en utbetalingskvittering.
Disse to må matches før de kan postes til regnskapssystemet ditt. Dette kan gjøres enten automatisk eller manuelt.

Les mer om dette i denne guiden.

background logo

Vi fakturerer for mer enn 2 milliarder årlig for våre kunder. Skal vi hjelpe deg med å sette faktureringen din på autopilot?