Native Swift interop bindings for Apple ProximityReader
Install
| Product | Versions |
|---|---|
| .NET |
README
SwiftBindings.Apple.ProximityReader
Native .NET bindings for Apple's ProximityReader framework — Tap to Pay on iPhone, contactless payment-card reads, and mobile-document NFC reads. These are not Objective-C proxy wrappers; they use .NET 10's native Swift interop for direct, high-performance calls into Swift APIs from C#.
📖 Full usage guide → — Swift→C# naming, the reader/session lifecycle, payment & VAS reads, mobile documents, and error handling.
Installation
dotnet add package SwiftBindings.Apple.ProximityReader
Requirements
- .NET 10.0+
- Target framework:
net10.0-ios26.2(or-maccatalyst26.2) or higher. The package is compiled against the iOS 26.2 SDK supplement, so your app's<TargetFramework>platform version must be ≥ 26.2 to restore it — an explicit lower TPV (e.g.net10.0-ios18.0) or a barenet10.0-ioswhose installed workload defaults below 26.2 fails restore withNU1202. This is the compile-SDK pin, not your app's deployment minimum. - Deployment minimum is separate — set your app's real minimum OS with
<SupportedOSPlatformVersion>(independent of the TFM above). Individual APIs that need a newer OS at runtime are gated by generated[SupportedOSPlatform]attributes; the C# compiler flags a call that isn't valid for your target. - macOS host for development
- iPhone XS or later
- Tap to Pay on iPhone entitlement (Apple-issued)
Usage
using Foundation;
using ProximityReader;
// A purchase for $1.99 USD
var amount = NSDecimalNumber.FromString("1.99");
var transaction = new PaymentCardTransactionRequest(
amount,
currencyCode: "USD",
type: PaymentCardTransactionRequest.TransactionType.Purchase);
// A non-payment card verification (e.g. age verification)
var verify = new PaymentCardVerificationRequest(currencyCode: "USD");
// A VAS request (Apple Wallet pass / loyalty)
var vas = new VASRequest();
The PaymentCardReader, MobileDocumentReader, StoreAndForwardBatch, and supporting result/error types are all bound. See Tap to Pay on iPhone for end-to-end onboarding (entitlement request, merchant attestation, session lifecycle).
Documentation
- Usage guide (wiki) — full C# walkthrough of the binding surface
- Apple ProximityReader framework
- Tap to Pay on iPhone
How It Works
These bindings are auto-generated by Swift Dotnet Bindings using .NET 10's native Swift interop via the SwiftBindings SDK.
License
The bindings are MIT licensed. ProximityReader is part of the Apple SDK; refer to Apple's licensing for the underlying framework.
Changes from Previous Version
Adoption Assessment
Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.
Related Guides & Workflows
Learn how to evaluate, integrate, or audit this package in your .NET project.