Skip to content

Commit 35e3b08

Browse files
Add: Build a Payment App with Swift (#1683)
* Add: Build a Payment App with Swift * update routes.txt for /docs/build/apps/swift-payment-app * Adjust location/sidebar --------- Co-authored-by: Bri Wylde <92327786+briwylde08@users.noreply.github.com>
1 parent 9d7385f commit 35e3b08

3 files changed

Lines changed: 68 additions & 0 deletions

File tree

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
title: Build a Payment App with Swift
3+
sidebar_position: 41
4+
---
5+
6+
## SwiftBasicPay
7+
8+
SwiftBasicPay is an open-source example iOS payment application that showcases how to integrate Stellar's powerful payment infrastructure into native Swift apps using the [Stellar Wallet SDK for Swift](https://github.com/Soneso/stellar-swift-wallet-sdk) and the [Stellar iOS SDK](https://github.com/Soneso/stellar-ios-mac-sdk).
9+
10+
[SwiftBasicPay](https://github.com/Soneso/SwiftBasicPay) is maintained by a dedicated community developer, Soneso.
11+
12+
## Features
13+
14+
### Wallet Functionality
15+
16+
- **Authentication**: PIN-based security
17+
- **Account Management**: Stellar account creation and management
18+
- **Management of Assets**: Add/remove trust lines, asset overview
19+
- **Payments**: Send and receive Stellar assets
20+
- **Path Payments**: Cross-asset payments with automatic routing
21+
22+
### Anchor Integration
23+
24+
- Programatic deposits and withdrawals via anchors
25+
- KYC compliance
26+
- Interactive deposits/withdrawals with web integration
27+
28+
SwiftBasicPay integrates multiple Stellar Ecosystem Proposals (SEPs) through the wallet SDK:
29+
30+
- **[SEP-1](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0001.md)**: Stellar TOML - Provides anchor metadata and service endpoints
31+
- **[SEP-10](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0010.md)**: Web Authentication - Proves account ownership to anchors
32+
- **[SEP-6](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0006.md)**: Deposit/Withdrawal API - Interacts with anchors programmatically
33+
- **[SEP-9](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0009.md)**: Standard KYC Fields - Defines standard customer information fields
34+
- **[SEP-12](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0012.md)**: KYC API - Customer information collection and verification
35+
- **[SEP-24](https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md)**: Hosted Deposit/Withdrawal - Interactive web-based transfers
36+
37+
## Learning Topics
38+
39+
This app demonstrates how to:
40+
41+
1. **Create Stellar Wallets**: Account generation, key management
42+
2. **Implement Management of Assets**: Add and remove trustlines to Stellar assets
43+
3. **Implement Payments**: Simple and path payments
44+
4. **Interact with Anchors**: SEP-1/10/6/12/24 integration
45+
46+
## Tutorial
47+
48+
A comprehensive tutorial walking through the development of this Stellar payment app is available in the [tutorial directory](https://github.com/Soneso/SwiftBasicPay/tree/main/tutorial) of the repository.
49+
50+
The tutorial covers secure data storage, authentication, account creation, assets management, payments, path payments, and anchor integration with step-by-step explanations of how the Stellar SDKs are used.
51+
52+
## Resources
53+
54+
- [SwiftBasicPay GitHub Repository](https://github.com/Soneso/SwiftBasicPay)
55+
- [SwiftBasicPay Tutorial](https://github.com/Soneso/SwiftBasicPay/tree/main/tutorial)
56+
- [Stellar Wallet SDK for Swift](https://github.com/Soneso/stellar-swift-wallet-sdk)
57+
- [Stellar iOS SDK](https://github.com/Soneso/stellar-ios-mac-sdk)
58+
- [Stellar Wallet SDK Documentation](https://developers.stellar.org/docs/category/build-a-wallet-with-the-wallet-sdk)
59+
60+
## Contributing
61+
62+
Contributions to SwiftBasicPay are welcome! Please create a pull request with a clear description of your changes in the [SwiftBasicPay GitHub Repository](https://github.com/Soneso/SwiftBasicPay).

docusaurus.config.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,11 @@ const config: Config = {
194194
label: 'Tutorial: Payment Application, JavaScript',
195195
activeBasePath: 'docs/build/apps/example-application-tutorial/overview',
196196
},
197+
{
198+
to: '/docs/build/apps/swift-payment-app',
199+
label: 'Tutorial: Payment Application, Swift',
200+
activeBasePath: 'docs/build/apps/swift-payment-app',
201+
},
197202
{
198203
to: '/docs/build/apps/ingest-sdk/overview',
199204
label: 'Tutorial: Network Ingestion Pipeline',

routes.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
/docs/build/apps/ingest-sdk/overview
3030
/docs/build/apps/overview
3131
/docs/build/apps/smart-wallets
32+
/docs/build/apps/swift-payment-app
3233
/docs/build/apps/wallet/intro
3334
/docs/build/apps/wallet/overview
3435
/docs/build/apps/wallet/sep10

0 commit comments

Comments
 (0)