Page History
...
Фреймворк AssistMobile позволяет разработать мобильное приложение интернет-магазина для проведения через АПК Assist Ассист платежей банковской картой с мобильных устройств.
...
Протокол AssistPayDelegate определяет метод payFinished, с помощью которого поддерживающий этот протокол объект будет получать результат оплаты. Метод payFinished будет вызван, если оплата завершена. Метод имеет следующие параметры:
- bill- номер транзакции в системе АПК Ассист в строковом формате;
- status-статус платежа;
- message- описание статуса.
...
- Unknown - статус неизвестен – вероятно, произошла непредвиденная ошибка и не удалось получить статус оплаты, через некоторое время следует вызвать метод getResult и дождаться возвращения статуса; если ошибка повторяется, то необходимо связаться со службой поддержки АссистAssist;
- InProgress - оплата находится в обработке, через некоторое время следует повторно вызвать метод getResult, для получения результата;
- Delayed - платеж отложен, используется при включении функции отложенных платежей;
- Approved- платеж завершен успешно;
- PartialApproved-платеж завершен успешно на неполную сумму, используется при включении функции подтверждения платежа на неполную сумму;
- PartialDelayed- платеж частично отложен, используется при включении специальной функции;
- Canceled- платеж отменен;
- PartialCanceled - платеж частично отменен;
- Declined- оплата отклонена;
- Timeout- оплата завершена по таймауту;
- Repeated- в системе есть платеж с таким же номером заказа.
...
Метод getResult позволяет получить результат оплаты из системы АПК Ассист. Принимает параметр PayData.
...
Code Block | ||
---|---|---|
| ||
#import "ViewController.h" @interface ViewController () @property (strong, nonatomic) PayData* data; @end @implementation ViewController - (IBAction)pay:(UIButton *)sender { if (!_data) { _data = [[PayData alloc] init]; } _data.orderAmount = @"100.05"; _data.orderNumber = @"test_payment_002"; _data.merchantId = @"679471"; AssistPay* assistPay = [[AssistPay alloc] initWithDelegate: self]; [assistPay start:self withData: _data]; } - (void)payFinished:(NSString * __nonnull)bill status:(NSString * __nonnull)status message:(NSString * __nullable)message { NSString* res = @"status: "; res = [res stringByAppendingString: status]; res = [res stringByAppendingString: @", billnumber: "]; res = [res stringByAppendingString: bill]; res = [res stringByAppendingString: @", message: "]; res = [res stringByAppendingString: message]; _result.text = res; } @end |
Интеграция с ApplePayApple Pay
- Выполнить шаги из раздела 4 «Порядок интеграции мобильного приложения интернет-магазина с фреймворком AssistMobile».
- Скомпилировать AssistMobile.framework из исходников.
- Добавить фреймворк в свой проект.
- Включить опцию Build Settings -> Build Options -> Embedded Content Contains Swift Code в YES в настройках проекта.
- Добавить AssisyMobile.framework в настройку General->Embedded Binaries.
- Включ NSLocationWhenInUseUsageDescription внастройках Info.plist -> Information Property List, добавляемпараметртипа String созначением 'Permit to send geolocation data to Assist.
...