# Take Payments with PAX D135 iOS SDK

The Finix Card Present SDK enables in-person payment processing with Bluetooth-connected PAX D135 devices. The SDK handles device discovery, pairing, transaction processing, and refunds.

PAX D135 Bluetooth card reader with Finix branding
## System requirements

| Requirement | Value |
|  --- | --- |
| Minimum iOS Version | 15.6 |
| Supported Device | PAX D135 |
| Xcode | 14.0+ |
| Physical device | Required — simulator is not supported |


## Environment designation

Devices must be designated to either Sandbox or Production and cannot switch between them. Use separate devices when testing across both environments.

## Quick start

Initialize the SDK with your credentials, scan for the PAX D135, connect, then start a transaction.


```swift
import PaxMposSDK

class PaymentViewController: UIViewController {
    var finixClient: FinixClient!

    override func viewDidLoad() {
        super.viewDidLoad()

        finixClient = FinixClient(config: FinixConfig(
            environment: .Sandbox, // use .Production for live payments
            credentials: Finix.APICredentials(
                username: "YOUR_USERNAME",
                password: "YOUR_PASSWORD"
            ),
            merchantId: "MUxxxxxx",
            mid: "",
            deviceType: .Pax,
            deviceId: ""
        ))
        finixClient.delegate = self
        finixClient.interactionDelegate = self

        finixClient.startScan()
    }
}

extension PaymentViewController: FinixDelegate {
    func didDiscoverDevice(_ deviceInfo: DeviceInfo) {
        finixClient.connectDevice(deviceInfo.id)
    }

    func deviceDidConnect(_ deviceInfo: DeviceInfo) {
        finixClient.update(deviceId: deviceInfo.id)

        let amount = Currency(amount: 1000, code: .USD) // $10.00
        finixClient.startTransaction(amount: amount, type: .SALE) { response, error in
            Task { @MainActor in
                // handle response and error
            }
        }
    }
}
```

A complete reference implementation is available in the [Finix PAX MPOS iOS Demo App](https://github.com/finix-payments/finix-pax-mpos-ios-sdk-demo-app).

## Next steps

Device Store
Order your PAX D135 from the Device Store.

View all devices
Compare Finix terminals by use case.

Mobile Integration guide
Step-by-step guide to integrating the PAX D135.

iOS SDK
View the SDK source and releases on GitHub.

iOS Sample App
Complete reference implementation on GitHub.