Types

Link copied to clipboard

Standard banking frequency codes used to define how often a recurring payment occurs.

Link copied to clipboard
@Serializable
data class JsonData(val type: String, val credentialIds: List<String>, val transactionDataHashesAlg: List<String>?, val payload: PaymentTransaction.Payload)

Represents the wrapper envelope for a JSON-serialized payment transaction.

Link copied to clipboard
@Serializable
data class MitOptions(val amountVariable: Boolean?, val minAmount: Double?, val maxAmount: Double?, val totalAmount: Double?, val initialAmount: Double?, val initialAmountNumber: Long?, val apr: Double?)

Merchant-Initiated Transaction (MIT) configurations for variable or conditional recurring payments.

Link copied to clipboard
@Serializable
data class Payee(val name: String, val id: String, val logo: String? = null, val website: String? = null)

Represents the merchant or individual receiving the payment.

Link copied to clipboard
@Serializable
data class Payload(val transactionId: String, val currency: String, val amount: Double, val payee: PaymentTransaction.Payee, val dateTime: Instant? = null, val pisp: PaymentTransaction.Pisp? = null, val executionDate: LocalDate? = null, val amountEstimated: Boolean? = null, val amountEarmarked: Boolean? = null, val sctInst: Boolean? = null, val tipRequested: Boolean? = null, val recurrence: PaymentTransaction.Recurrence? = null, val mitOptions: PaymentTransaction.MitOptions? = null)

The core detail schema of a payment transaction.

Link copied to clipboard
@Serializable
data class Pisp(val legalName: String, val brandName: String, val domainName: String)

Details of the Payment Initiation Service Provider (PISP) executing the payment request.

Link copied to clipboard
@Serializable
data class Recurrence(val frequency: PaymentTransaction.Frequency, val startDate: LocalDate? = null, val endDate: LocalDate? = null, val number: Long? = null)

Configures the timeline and interval parameters of a recurring payment sequence.

Link copied to clipboard
data class UserInput(val tipPercent: Double) : TransactionUserInput

Optional user input for payment transaction processing.

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Sample transaction data for this transaction type

Functions

Link copied to clipboard
open suspend override fun generateMdocResponseElements(transactionData: TransactionData<PaymentTransaction.Payload>, credential: Credential, userInput: TransactionUserInput?, docRequestId: Int?): Map<String, DataItem>
Link copied to clipboard
open suspend override fun generateSdJwtResponseClaims(transactionData: TransactionData<PaymentTransaction.Payload>, credential: Credential, userInput: TransactionUserInput?, docRequestId: Int?): Map<String, JsonElement>
Link copied to clipboard
open suspend override fun isApplicable(transactionData: TransactionData<PaymentTransaction.Payload>, credential: Credential): Boolean
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override fun parseJson(serialized: ByteString): TransactionData<PaymentTransaction.Payload>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override fun serializeOpenId4VpRequest(payload: PaymentTransaction.Payload, credentialIds: List<String>, hashAlgorithms: List<Algorithm>?): String
Link copied to clipboard
open suspend override fun verifyMdocResponse(transactionData: TransactionData<PaymentTransaction.Payload>, responseElements: Map<String, DataItem>)
Link copied to clipboard
open suspend override fun verifySdJwtResponse(transactionData: TransactionData<PaymentTransaction.Payload>, responseClaims: Map<String, JsonElement>)