BTThreeDSecureLookup.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #import <Foundation/Foundation.h>
  2. #if __has_include("BraintreeCore.h")
  3. #import "BraintreeCore.h"
  4. #else
  5. #import <BraintreeCore/BraintreeCore.h>
  6. #endif
  7. #if __has_include("BraintreeCard.h")
  8. #import "BTCardNonce.h"
  9. #else
  10. #import <BraintreeCard/BTCardNonce.h>
  11. #endif
  12. #import "BTPaymentFlowResult.h"
  13. #import "BTThreeDSecureResult.h"
  14. /**
  15. The result of a 3DS lookup.
  16. Contains laibility shift and challenge information as well as a nonce.
  17. */
  18. @interface BTThreeDSecureLookup : BTPaymentFlowResult
  19. /**
  20. Do not change. The "PAReq" or "Payment Authentication Request" is the encoded request message used to initiate authentication.
  21. */
  22. @property (nonatomic, copy) NSString *PAReq;
  23. /**
  24. Do not change. This a the unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.
  25. */
  26. @property (nonatomic, copy) NSString *MD;
  27. /**
  28. Do not change. The URL which the customer will be redirected to for a 3DS Interface. In 3DS 1, there will always be an acsURL surfaced even if there isn't a password challenge. In 3DS 2, the presense of an acsURL indicates there is a challenge as it would otherwise frictionlessly complete without an acsURL.
  29. */
  30. @property (nonatomic, copy) NSURL *acsURL;
  31. /**
  32. Do not change. The termURL is the fully qualified URL that the customer will be redirected to once the authenticaiton completes.
  33. */
  34. @property (nonatomic, copy) NSURL *termURL;
  35. /**
  36. The full version string of the 3DS lookup result.
  37. */
  38. @property (nonatomic, copy) NSString *threeDSecureVersion;
  39. /**
  40. Indicates a 3DS 2 lookup result.
  41. */
  42. @property (readonly, nonatomic) BOOL isThreeDSecureVersion2;
  43. /**
  44. Do not change. This a secondary unique 3DS identifier assigned by Braintree to track the 3DS call as it progresses.
  45. */
  46. @property (nonatomic, copy) NSString *transactionId;
  47. /**
  48. The 3DS flow result which contains a BTCardNonce and liability shift information.
  49. @note If a challenge is required, liability will not be shifted on this nonce.
  50. */
  51. @property (nonatomic, strong) BTThreeDSecureResult *threeDSecureResult;
  52. /**
  53. Initialize a BTThreeDSecureLookup
  54. @param JSON BTJSON used to initialize the BTThreeDSecureLookup
  55. */
  56. - (instancetype)initWithJSON:(BTJSON *)JSON;
  57. /**
  58. Indicates if a challenge is required.
  59. @return A bool that is true if a challenge is required.
  60. */
  61. - (BOOL)requiresUserAuthentication;
  62. @end