CreateTransferRequest

data class CreateTransferRequest(val amount: TransferV2Requests.MoneyAmount, val source: TransferV2Requests.EndpointSlot? = null, val destination: TransferV2Requests.EndpointSlot? = null, val confirm: Boolean? = null, val authorizationMode: String? = null, val receiptEmail: String? = null, val statementDescriptor: String? = null, val productId: String? = null, val paymentLinkId: String? = null, val subscriptionId: String? = null, val invoiceId: String? = null, val description: String? = null, val reference: String? = null, val shipping: TransferV2Requests.Shipping? = null, val paymentMethodOptions: TransferV2Requests.PaymentMethodOptions? = null, val cartData: Map<String, String>? = null, val metadata: Map<String, String>? = null, val sonarSessionId: String? = null)

Body for POST /v2/transfers and shared fields for update/confirm.

Constructors

Link copied to clipboard
constructor(amount: TransferV2Requests.MoneyAmount, source: TransferV2Requests.EndpointSlot? = null, destination: TransferV2Requests.EndpointSlot? = null, confirm: Boolean? = null, authorizationMode: String? = null, receiptEmail: String? = null, statementDescriptor: String? = null, productId: String? = null, paymentLinkId: String? = null, subscriptionId: String? = null, invoiceId: String? = null, description: String? = null, reference: String? = null, shipping: TransferV2Requests.Shipping? = null, paymentMethodOptions: TransferV2Requests.PaymentMethodOptions? = null, cartData: Map<String, String>? = null, metadata: Map<String, String>? = null, sonarSessionId: String? = null)

Properties

Link copied to clipboard

Nested money amount (value + currency). Required.

Link copied to clipboard
@SerializedName(value = "authorization_mode")
val authorizationMode: String? = null

"automatic" or "manual" for card payments.

Link copied to clipboard
@SerializedName(value = "cart_data")
val cartData: Map<String, String>? = null

Itemized cart attached to the transfer.

Link copied to clipboard
val confirm: Boolean? = null

Pass false for deferred confirm (client 3DS). Defaults to API behaviour when null.

Link copied to clipboard
val description: String? = null

Merchant description of the transfer.

Link copied to clipboard

Destination endpoint slot when required.

Link copied to clipboard
@SerializedName(value = "invoice_id")
val invoiceId: String? = null

Invoice this transfer belongs to.

Link copied to clipboard
val metadata: Map<String, String>? = null

Arbitrary key-value pairs for the merchant.

Link copied to clipboard
@SerializedName(value = "payment_link_id")
val paymentLinkId: String? = null

Payment link this transfer was created from.

Link copied to clipboard
@SerializedName(value = "payment_method_options")
val paymentMethodOptions: TransferV2Requests.PaymentMethodOptions? = null

Card options, including an external 3DS cryptogram.

Link copied to clipboard
@SerializedName(value = "product_id")
val productId: String? = null

Product this transfer is for.

Link copied to clipboard
@SerializedName(value = "receipt_email")
val receiptEmail: String? = null

Email address to send the receipt to.

Link copied to clipboard
val reference: String? = null

Merchant reference string.

Link copied to clipboard

Shipping details for the payment.

Link copied to clipboard
@SerializedName(value = "sonar_session_id")
val sonarSessionId: String? = null

The account's Sonar session; set by TransfersV2API on payment creates.

Link copied to clipboard

Source endpoint slot (payment method / account / wallet).

Link copied to clipboard
@SerializedName(value = "statement_descriptor")
val statementDescriptor: String? = null

Text shown on the cardholder statement.

Link copied to clipboard
@SerializedName(value = "subscription_id")
val subscriptionId: String? = null

Subscription this transfer belongs to.