Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions dist/doc/payments/accept-payment/android-complete-payment.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
const kt = `import com.paystack.android_sdk.core.Paystack
import com.paystack.android_sdk.ui.paymentsheet.PaymentSheet
import com.paystack.android_sdk.ui.paymentsheet.PaymentSheetResult

private lateinit var paymentSheet: PaymentSheet

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

//...

Paystack.builder()
.setPublicKey("pk_{your-public-key}")
.build()
paymentSheet = PaymentSheet(this, {your-callback-function})

//...
}

// example paymentResult function
private fun paymentComplete(paymentSheetResult: PaymentSheetResult ) {
val message = when (paymentSheetResult) {
PaymentSheetResult.Cancelled -> "Cancelled"
is PaymentSheetResult.Failed -> {
Log.e("Something went wrong", paymentSheetResult.error.message.orEmpty(), paymentSheetResult.error)
paymentSheetResult.error.message ?: "Failed"
}

is PaymentSheetResult.Completed -> {
// Returns the transaction reference PaymentCompletionDetails(reference={TransactionRef})
Log.d("Payment successful", paymentSheetResult.paymentCompletionDetails.toString())
"Successful"
}
}

Toast.makeText(this, "Payment $message", Toast.LENGTH_SHORT).show()
}`

const java = `// TODO: Add snippet`

export {kt, java}
55 changes: 55 additions & 0 deletions dist/doc/payments/accept-payment/ios-complete-payment.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
const swift_ui = `import SwiftUI
import PaystackCore
import PaystackUI

struct PaymentView: View {
let paystack = try? PaystackBuilder
.newInstance
.setKey("pk_domain_xxxxxxxx")
.build()

var body: some View {
VStack(spacing: 8) {
Text("Make Payemnt")

paystack?.chargeUIButton(accessCode: "0peioxfhpn",
onComplete: paymentDone) {
Text("Initiate Payment")
}
}
.padding()
}

func paymentDone(_ result: TransactionResult) {
// Handle transaction result
print(result)
}
}

// ....`

const ui_kit = `import UIKit
import PaystackCore
import PaystackUI

class ViewController: UIViewController {
let paystack = try? PaystackBuilder
.newInstance
.setKey("PUBLIC_KEY")
.build()

let paymentAccessCodee = "ACCESS_CODE"

@IBAction func launchPaymentTapped(_ sender: Any) {
paystack?.presentChargeUI(on: self,
accessCode: paymentAccessCodee,
onComplete: paymentCompleted)
}

func paymentCompleted(_ result: TransactionResult) {
print("Payment completed. Result: \(result)")
}

}`

export {swift_ui, ui_kit}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
languages:
- kt
- java
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
// TODO: Add snippet
37 changes: 37 additions & 0 deletions src/doc/payments/accept-payment/android-complete-payment/index.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import com.paystack.android_sdk.core.Paystack
import com.paystack.android_sdk.ui.paymentsheet.PaymentSheet
import com.paystack.android_sdk.ui.paymentsheet.PaymentSheetResult

private lateinit var paymentSheet: PaymentSheet

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

//...

Paystack.builder()
.setPublicKey("pk_{your-public-key}")
.build()
paymentSheet = PaymentSheet(this, {your-callback-function})

//...
}

// example paymentResult function
private fun paymentComplete(paymentSheetResult: PaymentSheetResult ) {
val message = when (paymentSheetResult) {
PaymentSheetResult.Cancelled -> "Cancelled"
is PaymentSheetResult.Failed -> {
Log.e("Something went wrong", paymentSheetResult.error.message.orEmpty(), paymentSheetResult.error)
paymentSheetResult.error.message ?: "Failed"
}

is PaymentSheetResult.Completed -> {
// Returns the transaction reference PaymentCompletionDetails(reference={TransactionRef})
Log.d("Payment successful", paymentSheetResult.paymentCompletionDetails.toString())
"Successful"
}
}

Toast.makeText(this, "Payment $message", Toast.LENGTH_SHORT).show()
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
type: single-lang
languages:
- swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import SwiftUI
import PaystackCore
import PaystackUI

struct PaymentView: View {
let paystack = try? PaystackBuilder
.newInstance
.setKey("pk_domain_xxxxxxxx")
.build()

var body: some View {
VStack(spacing: 8) {
Text("Make Payemnt")

paystack?.chargeUIButton(accessCode: "0peioxfhpn",
onComplete: paymentDone) {
Text("Initiate Payment")
}
}
.padding()
}

func paymentDone(_ result: TransactionResult) {
// Handle transaction result
print(result)
}
}

// ....
23 changes: 23 additions & 0 deletions src/doc/payments/accept-payment/ios-complete-payment/ui-kit.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
import UIKit
import PaystackCore
import PaystackUI

class ViewController: UIViewController {
let paystack = try? PaystackBuilder
.newInstance
.setKey("PUBLIC_KEY")
.build()

let paymentAccessCodee = "ACCESS_CODE"

@IBAction func launchPaymentTapped(_ sender: Any) {
paystack?.presentChargeUI(on: self,
accessCode: paymentAccessCodee,
onComplete: paymentCompleted)
}

func paymentCompleted(_ result: TransactionResult) {
print("Payment completed. Result: \(result)")
}

}