Skip to main content

Commerce SDK - iOS

Our Commerce SDK works seamlessly on iOS. To integrate into a React Native app view the React Native integration docs. To integrate into a native iOS app follow the steps below. 👇

Step 1: Obtain your API Key

To get set up with an API Key please email us at support@bidali.com with your request.

Step 2: Install using CocoaPods

Add Bidali-iOS-SDK to your Podfile:

pod 'Bidali-iOS-SDK', :git => 'https://github.com/bidalihq/commerce-sdk-ios.git', :tag => '0.0.3'

Then run pod install

Usage

Default options

BidaliSDKOptions *options = [BidaliSDKOptions optionsWithApiKey:@"YOUR API KEY"];
options.onPaymentRequest = ^(BidaliPaymentRequest *paymentRequest){
// Prefill your send screen and request authorization to send the transaction
};

[[BidaliSDK getInstance] show:self options:options];

Pay with Dai only

options.paymentCurrencies = @[@"DAI"];

Prefilling a customers email address

info

This will pre-populate the users email address and they will be prompted to confirm it in the checkout flow

options.email = @"user@email.com";

A PaymentRequest has the following properties:

PropertyTypeDescription
addressStringThe address to send to
amountStringThe amount of currency to send to address
currencyStringThe symbol of the currency the user has chosen to pay with, ex: BTC
chargeDescriptionStringDescription of the order, can be used on your payment approval screen so the user sees what they are approving payment for. Ex: 1 x Gift Card - Amazon $20 CAD
chargeIdStringThe users order reference, helpful to reference the order in the future or if there are any issues. Ex: vIQ807gvR
extraIdStringThe extraId that must be passed for the payment to be credited appropriately to the order. Currently only applicable to currencies on Stellar, Algorand, and Solana networks
extraIdNameStringThe name of the extraId that must be sent with the transaction. Currently only applicable to currencies on Stellar, Algorand, and Solana networks

Note for currencies on Stellar, Algorand, and Solana networks

Below are the additional fields that will be populated on the BidaliPaymentRequest and MUST be passed with the transaction for it to be successful.

NetworkextraIdName
StellarMemo text
SolanaMemo
AlgorandNote/Memo