NewPaymentRequest

public protocol NewPaymentRequest

The details of the payment to be created.

  • The unique reference for the payment

    Declaration

    Swift

    var merchantReferenceId: String { get }
  • The gross amount to be paid. Must be positive

    Declaration

    Swift

    var grossAmount: Decimal { get }
  • Whether a QRCode should be created and returned in the response

    Declaration

    Swift

    var generateQR: Bool { get }
  • The number of times that the payment request can be used to create a payment.

    If absent, the API will default value to 1.

    If set to 0 then the request can be used an unlimited number of times.

    Declaration

    Swift

    var maxUses: Int? { get }
  • The time in seconds that the payment request should remain valid.

    After this time any use of the request to create a payment will fail.

    If absent, the API will default value to 0 which indicates that the payment request will not expire until it is deleted

    Declaration

    Swift

    var timeToLivePayment: Int? { get }
  • The time in seconds that the QR code should remain valid.

    After this time any use of the request to create a payment will fail.

    If absent, the API will default value to 0 which indicates that the code will not expire until it is deleted

    Declaration

    Swift

    var timeToLiveQR: Int? { get }
  • The ID of a specific wallet for which the payment is intended.

    Can be used in scenarios where a customer has previously requested that their wallet ID is retained for repeat purchase.

    If supplied the payment can only be used by the intended wallet.

    If absent then any wallet can create a payment against the Payment Request

    Declaration

    Swift

    var specificWalletId: String? { get }
  • The Basket associated to the transaction.

    Declaration

    Swift

    var basket: Basket? { get }
  • Optional extra details from the POS.

    Declaration

    Swift

    var posPayload: PosPayload? { get }
  • Optional extra details from the merchant.

    Declaration

    Swift

    var merchantPayload: MerchantPayload? { get }