Erste Schritte mit iOS SDK

  Zuletzt aktualisiert: 

 

Bevor Sie fortfahren, vergewissern Sie sich bitte, dass Sie alle Anforderungen erfüllt haben
Klicken Sie hier, um diese Informationen in einer neuen Registerkarte zu öffnen

Unser GitLab Repository enthält eine Beispielanwendung, die zeigt, wie Sie unser Payment SDK in Ihre Anwendung integrieren können. Klicken Sie hier zum Ansehen.

Eigenschaften

Mit dem Trust Payments iOS SDK können Sie nahtlos eine vorgefertigte oder benutzerdefinierte Benutzeroberfläche in Ihre App integrieren, um Kartenzahlungen zu akzeptieren und das Starke Kundenauthentifizierung (SCA) Mandat zu erfüllen.

Verwenden Sie diese Integration, wenn Sie eine vorgefertigte "Drop-In"-UI benötigen, die die folgenden Funktionen unterstützt:

  • Kartenzahlungen
  • Tokenisierung Zahlungen
  • Anpassung der UI-Komponenten an das Branding Ihres Unternehmens
  • Gebietsschema und benutzerdefinierte Übersetzungen

Wenn Sie bereits Ihre eigenen Kassenansichten in Ihrer iOS-App erstellt haben, aber eine Methode zur Verarbeitung von Zahlungen an das Trust Payments Gateway benötigen, können Sie unsere Zahlungsverkehrsmanager API verwenden.


  Klicken Sie hier, um mehr zu erfahren.

 

             

 

1. Installieren Sie das SDK in Ihrer Anwendung

Web_Developer_Flatline.png

Um das iOS SDK in Ihr Xcode Projekt einzubinden, müssen Sie einen der folgenden Abhängigkeitsmanager verwenden:

 

1. CocoaPods

CocoaPods ist ein Abhängigkeitsmanager für Cocoa Projekte. Anleitungen zur Verwendung und Installation finden Sie auf der Website des Herstellers. Um Trust Payments mit CocoaPods in Ihr Xcode Projekt zu integrieren, geben Sie es in Ihrem Podfile wie folgt an:

pod 'TrustPayments'

 

2. Carthage

Carthage ist ein dezentraler Abhängigkeitsmanager, der die notwendigen Abhängigkeiten erstellt und Ihnen binäre Frameworks zur Verfügung stellt. Um Trust Payments mit Hilfe von Carthage in Ihr Xcode Projekt zu integrieren, geben Sie es in Ihrem Cartfile wie folgt an:

git "https://gitlab.com/trustpayments-public/mobile-sdk/ios"

Sobald Sie Carthage installiert haben, können Sie damit beginnen, Frameworks zu Ihrem Projekt hinzuzufügen. Klicken Sie hier, um zu erfahren, wie.

  Trust Payments Mobile SDK verwendet xcframeworks für seine Abhängigkeiten. Stellen Sie sicher, dass Sie Carthage Version 0.38 oder neuer verwenden. Führen Sie dann aus:

carthage update --platform ios --use-xcframeworks

 

             

 

2. Initialisieren Sie das iOS SDK in Ihrer App

Telefon_Wartung_Flatline.png

Konfigurieren Sie die Instanz

Bevor Sie eine Zahlungsanforderung durchführen können, müssen Sie die username, gateway und environment, wie im folgenden Beispiel gezeigt:

TrustPayments.instance.configure(
username: username_from_trustpayments,
gateway: .eu,
environment: .staging,
translationsForOverride: nil
)

 

Ansicht Steuergeräte

Das folgende Beispiel zeigt, wie Sie einen Drop-In View Controller erstellen, der nur die erforderlichen Felder verwendet:

let dropInVC = try ViewControllerFactory.shared.dropInViewController(
jwt: jwt,
payButtonTappedClosureBeforeTransaction: {
(controller: DropInController) in
},
transactionResponseClosure: {
(
jwt: [String],
threeDResponse: ThreeDResponse?,
error: APIClientError?
)
in
}
)
  Parameter Beschreibung
X3-EN.png cardinalDarkModeStyleManager Legt den Hell/Dunkel-Modus für die ACS-Ansicht fest (3-D Secure).
X3-EN.png cardinalStyleManager Gibt den Schnittstellenstil für die ACS-Ansicht an (3-D Secure).
X3-EN.png customDropInView DropInViewProtocol konforme Ansicht für zusätzliche Ansichten, z. B. für das Hinzufügen eines Trinkgelds zu einer Zahlung.
X3-EN.png dropInViewDarkModeStyleManager Legt den Hell/Dunkel-Modus für den Drop-In View Controller fest.
X3-EN.png dropInViewStyleManager Dient zum Anpassen des Drop-In View Controllers.
X1-EN.png jwt

Der signierte JWT.

Klicken Sie hier, um zu erfahren, wie Sie den JWT generieren.

X1-EN.png payButtonTappedClosureBeforeTransaction

Abschluss, der durch das Drücken des Bezahlbuttons ausgelöst wird (kurz vor der Transaktion - Sie können diesen Abschluss verwenden, um das JWT-Token zu aktualisieren)

Sie können diesen Abschluss verwenden, um das JWT-Token zu aktualisieren, indem Sie die updateJWT() Funktion auf dem Controller, der als Argument übergeben wird.

X1-EN.png transactionResponseClosure Abschluss, der ausgelöst wird, wenn die Transaktion abgeschlossen ist, mit den folgenden Eigenschaften:
  • JWT-Schlüssel-Array mit den Antworten aller Anfragen (die Signatur jedes Schlüssels sollte vor der Entschlüsselung überprüft werden).
  • Ein Objekt, das 3-D Secure Authentifizierungsdaten enthält, die mit der Anfrage AUTH gesendet werden.
  • Ein Fehlerobjekt, das angibt, ob bei der Verbindung zum Gateway-Server oder bei der Authentifizierung durch 3-D Secure Fehler aufgetreten sind.

Nachfolgend ein alternatives Beispiel für die Erstellung eines Drop-In View Controllers mit mehr optionalen Parametern:

let dropInVC = try ViewControllerFactory.shared.dropInViewController(

jwt: jwt,
customDropInView: dropInCustomView,
visibleFields: [.securityCode3],
dropInViewStyleManager: dropInViewStyleManager,
dropInViewDarkModeStyleManager: dropInViewDarkModeStyleManager,
cardinalStyleManager: cardinalStyleManager,
cardinalDarkModeStyleManager: cardinalDarkModeStyleManager,

payButtonTappedClosureBeforeTransaction: {
(
controller: DropInController
)
in
},

transactionResponseClosure: {
(
jwt: [String],
threeDResponse: ThreeDResponse?,
error: APIClientError?
)
in
}

)

Sie können UI-Komponenten im Drop-In View Controller oder in der ACS-Schnittstelle anpassen (3-D Secure).
Klicken Sie hier, um die Anleitung in einer neuen Registerkarte zu öffnen.

 

Einfaches Karteneingabefeld

Nachfolgend wird gezeigt, wie Sie Kartendetail-Eingabeansichten erstellen können, ohne dass irgendwelche Anfragen in Ihrem Namen ausgeführt werden:

Erstellen separater UI-Komponenten:

lazy var cardNumberInput: CardNumberInputView = {
CardNumberInputView(inputViewStyleManager: inputViewStyleManager)
}()

lazy var expiryDateInput: ExpiryDateInputView = {
ExpiryDateInputView(inputViewStyleManager: inputViewStyleManager)
}()

lazy var cvvInput: CVVInputView = {
CVVInputView(inputViewStyleManager: inputViewStyleManager)
}()

Dann hören Sie auf CardNumberInput Delegate-Methode und passen Sie den Sicherheitscode an die erforderliche Anzahl von Ziffern für die gegebene Karte an:

extension SingleInputView: CardNumberInputViewDelegate {
func cardNumberInputViewDidComplete(_ cardNumberInputView: CardNumberInputView) {
cvvInput.cardType = cardNumberInputView.cardType
cvvInput.isEnabled = cardNumberInputView.isCVVRequired
}

func cardNumberInputViewDidChangeText(_ cardNumberInputView: CardNumberInputView) {
cvvInput.cardType = cardNumberInputView.cardType
cvvInput.isEnabled = cardNumberInputView.isCVVRequired
}
}

 

Zahlungsverkehrsmanager

Wenn Sie bereits eigene Kassenansichten in Ihrer iOS-App erstellt haben bzw. erstellen möchten, aber eine Methode zur Verarbeitung von Zahlungen an das Trust Payments Gateway benötigen, können Sie unsere Transaktionsmanager-API verwenden.

In unserer Beispiel-App finden Sie Beispiele für die Konfiguration von Zahlungsverkehrsmanager.

let paymentTransactionManager = try PaymentTransactionManager(jwt: .empty)

paymentTransactionManager.performTransaction(jwt: jwt, card: card, transactionResponseClosure: {jwt, threeDResponse, error in})

Im Rahmen dieses Prozesses werden die Felder der Zahlungskarte abgefragt, pan, expirydate und securitycode wird in Ihrem benutzerdefinierten Zahlungsformular erfasst und zum JSON-Web-Token (JWT) hinzugefügt payload. So lernen Sie, wie Sie den JWT erstellen, klicken Sie hier, um weitere Informationen in einer neuen Registerkarte zu öffnen.

Wenn Sie die Felder pan, expirydate und securitycode innerhalb des JWT payload , das auf Ihrem Händlerserver erstellt wurde, wird derselbe JWT (einschließlich der Kartendaten), der bei der Initialisierung angegeben wurde, in der Antwort des Gateways im Feld jwt.

Stellen Sie sicher, dass alle sensiblen Zahlungsdaten (pan, expirydate und securitycode) werden vor der Protokollierung in Ihrem System bereinigt.

 

             

 

3. Webhooks konfigurieren

Daten_und_Einstellungen_Flatline.png

Es wird dringend empfohlen, dass Sie Webhooks für Ihre Mobile SDK-Lösung konfigurieren. Wenn diese konfiguriert sind, wird URL-Benachrichtigungen an Ihr System gesendet, wenn Zahlungen auf Ihrem Konto verarbeitet werden.

  Wenn Sie Webhooks nicht wie unten beschrieben konfigurieren, werden Sie möglicherweise nicht über Zahlungen benachrichtigt, die über Ihr Konto abgewickelt werden, z. B. bei clientseitigen Fehlern, die auftreten, bevor die Antwort zurückgegeben wird.

  1. Melden Sie sich bei MyST an.

  2. Suchen Sie nach Ihrem sitereference über das Suchfeld oben auf der Seite.

  3. Wenn Sie die Details Ihrer Website anzeigen, klicken Sie auf "Regel-Manager".

    CI4-EN.png

  4. Wählen Sie die Aktionsart "URL-Benachrichtigung" aus der Dropdown-Liste und Ihr Browser wird umgeleitet.

    CI5-EN.png

  5. Erstellen Sie eine neue Regel URL-Benachrichtigung : CI6-EN.png

  6. Stellen Sie sicher, dass die Regel aktiv ist (dies wird durch ein Häkchen unter dem Feld Aktiv Spalte). Sobald die Regel aktiviert ist, wird sie auf alle Zahlungsvorgänge für die angegebene sitereference, und die URL-Benachrichtigung wird ausgelöst, sobald die angegebene Bedingung erfüllt ist.

    Hinweis: Alle neuen Regeln sollten auf Ihrem Testsystem erstellt werden sitereference und getestet, um sicherzustellen, dass sie wie erwartet funktionieren, bevor sie in Ihr Live-System aufgenommen werden sitereference.

  7. Sie muss Ihr System so konfigurieren, dass es auf alle URL-Benachrichtigungen , die von Trust Payments empfangen werden, mit einer HTTP 200 OK Antwort.
    Zum Beispiel: "HTTP/1.0 200 OK".
    Ihr System muss innerhalb von 8 Sekunden nach Erhalt einer Benachrichtigung antworten.

Checkliste__Flatline.png

Wenn Sie die oben genannten Schritte abgeschlossen haben, empfehlen wir Ihnen, zur Seite Erste Schritte zurückzukehren, um mehr über die Aktivierung von Add-ons, das Testen Ihrer Lösung und die Verarbeitung von Live-Transaktionen zu lernen.

Klicken Sie hier, um die Seite "Erste Schritte" zu öffnen.

 

War dieser Artikel hilfreich?
0 von 0 Personen fanden dies hilfreich