Интеграция платежей с использованием Telr - PullRequest
0 голосов
/ 01 февраля 2019

Я сейчас работаю над Telr Gateway.Я скачал версию Telr SDK Swift 4.2 и проверил пример теста.

Мой вопрос: должен ли я отправлять XML-запрос или напрямую я могу отправить, как указано в примере?

1 Ответ

0 голосов
/ 15 февраля 2019
  1. Перетащите TelrSDK.framework в группу Frameworks.
  2. Затем перейдите к цели вашего проекта и добавьте инфраструктуру Telr во встроенные и связанные структуры.
  3. Теперь очистите и соберитепроект.

Образец запроса на оплату.

Импорт структуры TelrSDK.Затем создайте объект запроса платежа и назначьте запрос свойству paymentRequest telrController.Затем нажмите или представьте контроллер просмотра telr.После ввода сведений о карте вы получите ответ в контроллере представления с StoryboardID с именем ResultController, который наследует TelrResponseController.

private func openTelrPaymentGateway() {
    paymentRequest = preparePaymentRequest()
    let telrVC = storyboard?.instantiateViewController(withIdentifier: "TelrController") as! TelrController
    telrVC.title = "Telr"
    telrVC.paymentRequest = paymentRequest!
    navigationController?.pushViewController(telrVC, animated: true)
}

private func preparePaymentRequest() -> PaymentRequest{

    let paymentReq = PaymentRequest()
    paymentReq.key = "YOUR KEY"
    paymentReq.store = "YOUR STORE ID"
    paymentReq.appId = "123456789"
    paymentReq.appName = "YOUR APP NAME"
    paymentReq.appUser = "123456"
    paymentReq.appVersion = "0.0.1"
    paymentReq.transTest = "1"
    paymentReq.transType = "auth"
    paymentReq.transClass = "paypage"
    paymentReq.transCartid = String(arc4random())
    paymentReq.transDesc = "Test API"
    paymentReq.transCurrency = "AED"
    paymentReq.transAmount = "\(totalAmount)"
    paymentReq.transLanguage = "en"
    paymentReq.billingEmail = EMAIL
    paymentReq.billingFName = "Hany"
    paymentReq.billingLName = "Sakr"
    paymentReq.billingTitle = "Mr"
    paymentReq.city = "Dubai"
    paymentReq.country = "AE"
    paymentReq.region = "Dubai"
    paymentReq.address = "line 1"
    paymentReq.billingPhone="8785643"
    return paymentReq

}

После обработки запроса вы получите ответиз TelrResponseController класса.

class PaymentGatewayVC: TelrResponseController {

    override func viewDidLoad() {
    super.viewDidLoad()

      print(message!)
      print(trace!)
      print(status!)
      print(avs!)
      print(code!)
      print(ca_valid!)
      print(cardCode!)
      print(cardLast4!)
      print(cvv!)
      print(tranRef!)

    }

}

Надеюсь, это поможет вам.

...