PayControlSDK Class Reference

Inherits from NSObject
Declared in PayControlSDK.h

Overview

PayControlSDK class

Other Methods

+ setLogging:

Устанавливает уровень логирования в debug режиме

+ (void)setLogging:(PCLogLevel)logLevel

Parameters

logLevel

Значение типа PCLogLevel. Значения могут комбинироваться, например PC_LOG_DEBUG | PC_LOG_KEY_VALUES выводит в лог и сообщения и значения ключей для большей информативности

Discussion

Устанавливает уровень логирования в debug режиме

Declared In

PayControlSDK.h

+ sharedInstance

Экземпляр синглтона. Все обращаения к методам и свойствам SDK должны происходить через него.

+ (PayControlSDK *_Nonnull)sharedInstance

Discussion

Экземпляр синглтона. Все обращаения к методам и свойствам SDK должны происходить через него.

Declared In

PayControlSDK.h

Методы генерации кода подтверждения

– calculateConfirmationCode:data:confirmationCodeLength:completion:

Генерация кода подтверждения

- (void)calculateConfirmationCode:(PCKey *_Nonnull)key data:(NSString *_Nonnull)data confirmationCodeLength:(NSInteger)confirmationCodeLength completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable confirmationCode , NSString *_Nullable fullConfirmationCode ))completion

Parameters

key

Ключ для формирования кода подтверждения. Handle ключевой информации должен иметь валидное значение

data

Данные для подтверждения

confirmationCodeLength

Длина кода подтверждения (в десятичных символах)

completion

block, возвращает параметры в место вызова метода.

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

confirmationCode Сгенерированный код для подтверждения транзакции

fullConfirmationCode Сгенерированный полный код для подтверждения транзакции

Discussion

Генерация кода подтверждения

Declared In

PayControlSDK.h

– calculateConfirmationCode:transaction:confirmationCodeLength:completion:

Генерация кода подтверждения

- (void)calculateConfirmationCode:(PCKey *_Nonnull)key transaction:(PCTransaction *_Nonnull)transaction confirmationCodeLength:(NSInteger)confirmationCodeLength completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable confirmationCode , NSString *_Nullable fullConfirmationCode ))completion

Parameters

key

Ключ для формирования кода подтверждения. Handle ключевой информации должен иметь валидное значение

transaction

Транзакция для подтверждения

confirmationCodeLength

Длина кода подтверждения (в десятичных символах)

completion

Блок куда возвращается результат выполнения

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

confirmationCode Сгенерированный код для подтверждения транзакции

fullConfirmationCode Сгенерированный полный код для подтверждения транзакции

Discussion

Генерация кода подтверждения

Declared In

PayControlSDK.h

Методы генерации кода отмены

– calculateDeclineCode:data:declineCodeLength:completion:

Генерация кода отмены

- (void)calculateDeclineCode:(PCKey *_Nonnull)key data:(NSString *_Nonnull)data declineCodeLength:(NSUInteger)declineCodeLength completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable declineCode , NSString *_Nullable fullDeclineCode ))completion

Parameters

key

Ключ для формирования кода отмены. Handle ключевой информации должен иметь валидное значение

data

Данные для отмены

declineCodeLength

Длина кода отмены (в десятичных символах)

completion

block, возвращает параметры в место вызова метода.

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

declineCode Сгенерированный код для отмены транзакции

fullDeclineCode Сгенерированный полный код для отмены транзакции

Discussion

Генерация кода отмены

Declared In

PayControlSDK.h

– calculateDeclineCode:transaction:declineCodeLength:completion:

Генерация кода отмены

- (void)calculateDeclineCode:(PCKey *_Nonnull)key transaction:(PCTransaction *_Nonnull)transaction declineCodeLength:(NSUInteger)declineCodeLength completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable declineCode , NSString *_Nullable fullDeclineCode ))completion

Parameters

key

Ключ для формирования кода отмены. Handle ключевой информации должен иметь валидное значение

transaction

Транзакция для отмены

declineCodeLength

Длина кода отмены (в десятичных символах)

completion

Блок куда возвращается результат выполнения

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

declineCode Сгенерированный код для отмены транзакции

fullDeclineCode Сгенерированный полный код для отмены транзакции

Discussion

Генерация кода отмены

Declared In

PayControlSDK.h

Методы формирования подписи данных

– calculateSignature:data:completion:

Формирование подписи данных

- (void)calculateSignature:(PCKey *_Nonnull)key data:(NSString *_Nonnull)data completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable signature ))completion

Parameters

key

Ключ для формирования подписи. Handle ключевой информации должен иметь валидное значение

data

Данные для подписания

completion

block, возвращает параметры в место вызова метода.

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

signature Подпись

Discussion

Формирование подписи данных

Declared In

PayControlSDK.h

– calculateSignature:transaction:completion:

Формирование подписи данных

- (void)calculateSignature:(PCKey *_Nonnull)key transaction:(PCTransaction *_Nonnull)transaction completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable signature ))completion

Parameters

key

Ключ для формирования подписи. Handle ключевой информации должен иметь валидное значение

transaction

Транзакция для подписания

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

signature Подпись

Discussion

Формирование подписи данных

Declared In

PayControlSDK.h

Методы взаимодействия с сервером

– doRegisterDevice:deviceToken:completion:

Метод для регистрации токена устройства для пушей

- (void)doRegisterDevice:(PCKey *_Nonnull)key deviceToken:(NSString *_Nonnull)deviceToken completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

deviceToken

токен устройства

completion

Блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для регистрации токена устройства для пушей

Declared In

PayControlSDK.h

– doRegisterFingerprint:fingerprint:completion:

Метод для регистрации отпечатка устройства

- (void)doRegisterFingerprint:(PCKey *_Nonnull)key fingerprint:(NSString *_Nonnull)fingerprint completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

fingerprint

Отпечаток утстройства

completion

блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для регистрации отпечатка устройства

Declared In

PayControlSDK.h

– doGetTransactionData:transactionID:completion:

Метод для получения данных транзакции

- (void)doGetTransactionData:(PCKey *_Nonnull)key transactionID:(NSString *_Nonnull)transactionID completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error , PCTransaction *_Nullable transaction ))completion

Parameters

key

Экземпляр ключа

transactionID

Идентификатор транзакции

completion

Блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

transaction Экземпляр PCTransaction или nil если произошла ошибка

Discussion

Метод для получения данных транзакции

Declared In

PayControlSDK.h

– doGetTransactionsList:completion:

Метод получения списка неподтвержденных транзакций для пользователя

- (void)doGetTransactionsList:(PCKey *_Nonnull)key completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error , NSArray<NSString*> *_Nullable transactionsIDsArray ))completion

Parameters

key

Экземпляр ключа

completion

Блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

transactionsIDsArray Массив идентификаторов пользовательских транзакций или nil если произошла ошибка

Discussion

Метод получения списка неподтвержденных транзакций для пользователя

Declared In

PayControlSDK.h

– doSendConfirmationCodeByPush:transactionID:fullConfirmationCode:signature:completion:

Метод для отправки кода подтверждения через IS

- (void)doSendConfirmationCodeByPush:(PCKey *_Nonnull)key transactionID:(NSString *_Nonnull)transactionID fullConfirmationCode:(NSString *_Nonnull)fullConfirmationCode signature:(NSString *_Nullable)signature completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

transactionID

Идентификатор транзакции

fullConfirmationCode

Код подтверждения

signature

Подпись, если используется ассиметричное шифрование

completion

блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для отправки кода подтверждения через IS

Declared In

PayControlSDK.h

– doSendConfirmationCodeByUrl:transactionID:fullConfirmationCode:signature:completion:

Метод для отправки кода подтверждения Online

- (void)doSendConfirmationCodeByUrl:(PCKey *_Nonnull)key transactionID:(NSString *_Nonnull)transactionID fullConfirmationCode:(NSString *_Nonnull)fullConfirmationCode signature:(NSString *_Nullable)signature completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

transactionID

Идентификатор транзакции

fullConfirmationCode

Код подтверждения

signature

Подпись, если используется ассиметричное шифрование

completion

Блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для отправки кода подтверждения Online

Declared In

PayControlSDK.h

– doSendDeclineCodeByPush:transactionID:fullDeclineCode:completion:

Метод для отправки кода отклонения через IS

- (void)doSendDeclineCodeByPush:(PCKey *_Nonnull)key transactionID:(NSString *_Nonnull)transactionID fullDeclineCode:(NSString *_Nonnull)fullDeclineCode completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

transactionID

Идентификатор транзакции

fullDeclineCode

Код отклонения

completion

блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для отправки кода отклонения через IS

Declared In

PayControlSDK.h

– doSendDeclineCodeByUrl:transactionID:fullDeclineCode:completion:

Метод для отправки кода отклонения Online

- (void)doSendDeclineCodeByUrl:(PCKey *_Nonnull)key transactionID:(NSString *_Nonnull)transactionID fullDeclineCode:(NSString *_Nonnull)fullDeclineCode completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

transactionID

Идентификатор транзакции

fullDeclineCode

Код отклонения

completion

Блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для отправки кода отклонения Online

Declared In

PayControlSDK.h

– doRegisterPublicKey:completion:

Метод для регистрация открытого ключа на сервере

- (void)doRegisterPublicKey:(PCKey *_Nonnull)key completion:(void ( ^ _Nonnull ) ( PCISError *_Nullable error ))completion

Parameters

key

Экземпляр ключа

completion

Блок куда возвращается результат выполнения

Return Value

error Экземпляр PCISError - результат выполнения запроса, nil - если метод выполнился успешно

Discussion

Метод для регистрация открытого ключа на сервере

Declared In

PayControlSDK.h

Методы и свойства взаимодействия с хранилищем ключей

– listKeys:

Перечисление доступных наборов ключевой информации

- (void)listKeys:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSArray<PCKeyInfo*> *_Nullable keysArray ))completion

Parameters

completion

block, возвращает параметры в место вызова метода.

Return Value

array массив описаний ключевой информации (PCKeyInfo), nil - если произошла ошибка выполнения

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

Discussion

Перечисление доступных наборов ключевой информации

Declared In

PayControlSDK.h

– deleteKey:

Удаление ключа из хранилища по его идентификатору

- (PCError *_Nullable)deleteKey:(NSString *_Nonnull)keyID

Parameters

keyID

Идентификатор ключа в хранилище PayControl

Return Value

error ошибка. Если error = nil, то удаление завершилось успешно

Discussion

Удаление ключа из хранилища по его идентификатору

Declared In

PayControlSDK.h

– deleteKeyWithUserID:

Удаление ключа из хранилища по его идентификатору пользователя

- (PCError *_Nullable)deleteKeyWithUserID:(NSString *_Nonnull)userID

Parameters

userID

Идентификатор пользователя ключа в хранилище PayControl

Return Value

error ошибка. Если error = nil, то удаление завершилось успешно

Discussion

Удаление ключа из хранилища по его идентификатору пользователя

Declared In

PayControlSDK.h

  isEmpty

Наличие ключей в хранилище

@property (nonatomic, readonly) BOOL isEmpty

Return Value

YES, если ключей в хранилище нет

Discussion

Наличие ключей в хранилище

Declared In

PayControlSDK.h

  getKeysCount

Возвращает количество ключей в базе данных

@property (nonatomic, readonly) NSUInteger getKeysCount

Return Value

Количество ключей

Discussion

Возвращает количество ключей в базе данных

Declared In

PayControlSDK.h

Методы экспорта / импорта ключа

– exportKey:completion:

Экспорт ключа

- (void)exportKey:(NSString *_Nonnull)keyID completion:(void ( ^ _Nonnull ) ( PCError *_Nullable error , NSString *_Nullable keyInfo ))completion

Parameters

keyID

Идентификатор ключевой информации в хранилище PayControl

completion

block, возвращает параметры в место вызова метода.

Return Value

error Ошибка выполнения метода. Если error = nil, то метод выполнился успешно

keyInfo Экспортированный ключ в XML-формате

Discussion

Экспорт ключа

Declared In

PayControlSDK.h

– importFromQRCode:

Импорт ключа из объекта QR-кода (PCKeyQRCode).

- (PCKey *_Nullable)importFromQRCode:(PCQRCode *_Nonnull)qrCode

Return Value

Экземпляр ключа либо nil в случае ошибки.

Discussion

Импорт ключа из объекта QR-кода (PCKeyQRCode).

Declared In

PayControlSDK.h

– importQRCodeString:

Импорт ключа из строки с вадидными данными QR-кода ключа.

- (PCKey *_Nullable)importQRCodeString:(NSString *_Nonnull)qrCodeString

Return Value

Экземпляр ключа либо nil в случае ошибки.

Discussion

Импорт ключа из строки с вадидными данными QR-кода ключа.

Declared In

PayControlSDK.h

– importFromXML:

Импорт ключа в XML-формате. Handle ключевой информации имеет нулевое значение.

- (PCKey *_Nullable)importFromXML:(NSString *_Nonnull)xmlString

Parameters

exportedKey

Экспортированный ключ в XML-формате

Return Value

Экземпляр ключа либо nil в случае ошибки.

Discussion

Импорт ключа в XML-формате. Handle ключевой информации имеет нулевое значение.

Declared In

PayControlSDK.h

– importFromStorage:

Получение экзепляра ключа по его идентификатору в хранилище.

- (PCKey *_Nullable)importFromStorage:(NSString *_Nonnull)keyID

Parameters

keyID

строка с индентификатором ключа.

Return Value

Возвращает экзепляр ключа либо nil в случае ошибки.

Discussion

Получение экзепляра ключа по его идентификатору в хранилище.

Declared In

PayControlSDK.h

Вспомогательные методы

– getFingerPrint:

Отпечаток устройства

- (NSString *_Nonnull)getFingerPrint:(NSInteger)fingerprintLength

Parameters

fingerprintLength

Длина отпечатка устройства <= 64 символов (32 байта в виде hex-строки)

Return Value

Отпечаток устройства

Discussion

Отпечаток устройства

Declared In

PayControlSDK.h

– clear

Освобождение ключевой информации всех ключей. Handle ключей принимает нулевое значение

- (PCError *_Nullable)clear

Return Value

error ошибка. Если error = nil, то освобождение прошло успешно.

Discussion

Освобождение ключевой информации всех ключей. Handle ключей принимает нулевое значение

Declared In

PayControlSDK.h

– isExistsKeyName:

Проверка наличия в хранилище ключа с задананным именем.

- (BOOL)isExistsKeyName:(NSString *_Nonnull)keyName

Parameters

keyName

Имя ключа

Return Value

YES если ключ с таким именем есть в хранилище, иначе NO.

Discussion

Проверка наличия в хранилище ключа с задананным именем.

Declared In

PayControlSDK.h

– isExistsUserID:

Проверка наличия в хранилище ключа с задананным идентификатором пользователя.

- (BOOL)isExistsUserID:(NSString *_Nonnull)userID

Parameters

userID

Идентификатор пользователя

Return Value

YES если ключ с таким идентификатором есть в хранилище, иначе NO.

Discussion

Проверка наличия в хранилище ключа с задананным идентификатором пользователя.

Declared In

PayControlSDK.h

– getKeyNameForUserID:

Получение имени ключа из хранилища с задананным идентификатором пользователя.

- (NSString *_Nullable)getKeyNameForUserID:(NSString *_Nonnull)userID

Parameters

userID

Идентификатор пользователя ключа

Return Value

имя ключа, если ключ с таким идентификатором пользователя есть в хранилище, иначе nil.

Discussion

Получение имени ключа из хранилища с задананным идентификатором пользователя.

Declared In

PayControlSDK.h

Метод вызова сканера QR-кодов

– scanQRFromViewController:animated:textToShow:invalidCodeText:allowedQRCodeType:maskView:

Запуск сканера.

- (void)scanQRFromViewController:(UIViewController<PCQRCodeReaderDelegate> *_Nonnull)viewController animated:(BOOL)animated textToShow:(NSString *_Nonnull)textToShow invalidCodeText:(NSString *_Nonnull)invalidCodeText allowedQRCodeType:(PCQRCodeAllowedType)allowedType maskView:(UIView *_Nullable)maskView

Parameters

viewController

Контроллер, который отображает контроллер сканера. Контроллер назначается делегатом протокола PCQRCodeReaderDelegate. В нем должны быть реализована методы протокола.

animated

YES - показ сканера с анимацией, NO - без анимации

textToShow

Информационный текст

invalidCodeText

Текст, который показывается при сканировании неверного QR кода

maskView

cлой-маска отображающийся поверх сканируемого изображения, при этом другие надписи скрываются

allowedQRCodeType

валидные типы QR кода

Discussion

Запуск сканера.

Declared In

PayControlSDK.h