Documentation ¶
Index ¶
- type AccountInfo
- type AcctInfo
- type AchDetails
- type AdditionalData3DSecure
- type AdditionalDataAirline
- type AdditionalDataCarRental
- type AdditionalDataCommon
- type AdditionalDataLevel23
- type AdditionalDataLodging
- type AdditionalDataOpenInvoice
- type AdditionalDataOpi
- type AdditionalDataRatepay
- type AdditionalDataRetry
- type AdditionalDataRisk
- type AdditionalDataRiskStandalone
- type AdditionalDataSubMerchant
- type AdditionalDataTemporaryServices
- type AdditionalDataWallets
- type Address
- type AfterpayDetails
- type AmazonPayDetails
- type Amount
- type AndroidPayDetails
- type ApplePayDetails
- type ApplicationInfo
- type AuthenticationData
- type Avs
- type BacsDirectDebitDetails
- type BankAccount
- type BillDeskDetails
- type BillDeskOnlineDetails
- type BillDeskWalletDetails
- type BlikDetails
- type BrowserInfo
- type Card
- type CardBrandDetails
- type CardDetails
- type CardDetailsRequest
- type CardDetailsResponse
- type CellulantDetails
- type Checkout
- func (a Checkout) Cancels(req *CreateStandalonePaymentCancelRequest, ctxs ..._context.Context) (StandalonePaymentCancelResource, *_nethttp.Response, error)
- func (a Checkout) CardDetails(req *CardDetailsRequest, ctxs ..._context.Context) (CardDetailsResponse, *_nethttp.Response, error)
- func (a Checkout) Donations(req *PaymentDonationRequest, ctxs ..._context.Context) (DonationResponse, *_nethttp.Response, error)
- func (a Checkout) GetPaymentLink(linkId string, ctxs ..._context.Context) (PaymentLinkResponse, *_nethttp.Response, error)
- func (a Checkout) Orders(req *CheckoutCreateOrderRequest, ctxs ..._context.Context) (CheckoutCreateOrderResponse, *_nethttp.Response, error)
- func (a Checkout) OrdersCancel(req *CheckoutCancelOrderRequest, ctxs ..._context.Context) (CheckoutCancelOrderResponse, *_nethttp.Response, error)
- func (a Checkout) OriginKeys(req *CheckoutUtilityRequest, ctxs ..._context.Context) (CheckoutUtilityResponse, *_nethttp.Response, error)
- func (a Checkout) PaymentLinks(req *CreatePaymentLinkRequest, ctxs ..._context.Context) (PaymentLinkResponse, *_nethttp.Response, error)
- func (a Checkout) PaymentMethods(req *PaymentMethodsRequest, ctxs ..._context.Context) (PaymentMethodsResponse, *_nethttp.Response, error)
- func (a Checkout) PaymentMethodsBalance(req *CheckoutBalanceCheckRequest, ctxs ..._context.Context) (CheckoutBalanceCheckResponse, *_nethttp.Response, error)
- func (a Checkout) PaymentSession(req *PaymentSetupRequest, ctxs ..._context.Context) (PaymentSetupResponse, *_nethttp.Response, error)
- func (a Checkout) Payments(req *PaymentRequest, ctxs ..._context.Context) (PaymentResponse, *_nethttp.Response, error)
- func (a Checkout) PaymentsDetails(req *DetailsRequest, ctxs ..._context.Context) (PaymentDetailsResponse, *_nethttp.Response, error)
- func (a Checkout) PaymentsPaymentPspReferenceAmountUpdates(paymentPspReference string, req *CreatePaymentAmountUpdateRequest, ...) (PaymentAmountUpdateResource, *_nethttp.Response, error)
- func (a Checkout) PaymentsPaymentPspReferenceCancels(paymentPspReference string, req *CreatePaymentCancelRequest, ...) (PaymentCancelResource, *_nethttp.Response, error)
- func (a Checkout) PaymentsPaymentPspReferenceCaptures(paymentPspReference string, req *CreatePaymentCaptureRequest, ...) (PaymentCaptureResource, *_nethttp.Response, error)
- func (a Checkout) PaymentsPaymentPspReferenceRefunds(paymentPspReference string, req *CreatePaymentRefundRequest, ...) (PaymentRefundResource, *_nethttp.Response, error)
- func (a Checkout) PaymentsPaymentPspReferenceReversals(paymentPspReference string, req *CreatePaymentReversalRequest, ...) (PaymentReversalResource, *_nethttp.Response, error)
- func (a Checkout) PaymentsResult(req *PaymentVerificationRequest, ctxs ..._context.Context) (PaymentVerificationResponse, *_nethttp.Response, error)
- func (a Checkout) Sessions(req *CreateCheckoutSessionRequest, ctxs ..._context.Context) (CreateCheckoutSessionResponse, *_nethttp.Response, error)
- func (a Checkout) UpdatePaymentLink(linkId string, req *UpdatePaymentLinkRequest, ctxs ..._context.Context) (PaymentLinkResponse, *_nethttp.Response, error)
- type CheckoutAwaitAction
- type CheckoutBalanceCheckRequest
- type CheckoutBalanceCheckResponse
- type CheckoutBankTransferAction
- type CheckoutCancelOrderRequest
- type CheckoutCancelOrderResponse
- type CheckoutCreateOrderRequest
- type CheckoutCreateOrderResponse
- type CheckoutDonationAction
- type CheckoutOneTimePasscodeAction
- type CheckoutOrder
- type CheckoutOrderResponse
- type CheckoutPaymentsAction
- type CheckoutQrCodeAction
- type CheckoutRedirectAction
- type CheckoutSDKAction
- type CheckoutThreeDS2Action
- type CheckoutThreeDS2ChallengeAction
- type CheckoutThreeDS2FingerPrintAction
- type CheckoutUtilityRequest
- type CheckoutUtilityResponse
- type CheckoutVoucherAction
- type CommonField
- type Company
- type Configuration
- type CreateCheckoutSessionRequest
- type CreateCheckoutSessionResponse
- type CreatePaymentAmountUpdateRequest
- type CreatePaymentCancelRequest
- type CreatePaymentCaptureRequest
- type CreatePaymentLinkRequest
- type CreatePaymentLinkResponse
- type CreatePaymentRefundRequest
- type CreatePaymentReversalRequest
- type CreateStandalonePaymentCancelRequest
- type DetailsRequest
- type DeviceRenderOptions
- type DokuDetails
- type DonationResponse
- type DotpayDetails
- type DragonpayDetails
- type EcontextVoucherDetails
- type EntercashDetails
- type ExternalPlatform
- type ForexQuote
- type FraudCheckResult
- type FraudResult
- type GenericIssuerPaymentMethodDetails
- type GiropayDetails
- type GooglePayDetails
- type IdealDetails
- type InputDetail
- type InstallmentOption
- type Installments
- type Installments2
- type InstallmentsNumber
- type Item
- type KlarnaDetails
- type LianLianPayDetails
- type LineItem
- type Mandate
- type MasterpassDetails
- type MbwayDetails
- type MerchantDevice
- type MerchantRiskIndicator
- type MobilePayDetails
- type MolPayDetails
- type Name
- type OpenInvoiceDetails
- type PayPalDetails
- type PayUUpiDetails
- type PayWithGoogleDetails
- type PaymentAmountUpdateResource
- type PaymentCancelResource
- type PaymentCaptureResource
- type PaymentCompletionDetails
- type PaymentDetails
- type PaymentDetailsResponse
- type PaymentDonationRequest
- type PaymentLinkResponse
- type PaymentMethod
- type PaymentMethodACH
- type PaymentMethodAmazonPay
- type PaymentMethodAndroidPay
- type PaymentMethodApplePay
- type PaymentMethodCard
- type PaymentMethodDotpay
- type PaymentMethodDragonpayEBanking
- type PaymentMethodDragonpayOtcBanking
- type PaymentMethodDragonpayOtcNonBanking
- type PaymentMethodDragonpayOtcPhilippines
- type PaymentMethodGiropay
- type PaymentMethodGroup
- type PaymentMethodIDeal
- type PaymentMethodIssuer
- type PaymentMethodLianLianPayEbankingCredit
- type PaymentMethodLianLianPayEbankingDebit
- type PaymentMethodLianLianPayEbankingEnterprise
- type PaymentMethodMOLpayEBankingMalaysia
- type PaymentMethodMOLpayEBankingThailand
- type PaymentMethodMOLpayEBankingVietnam
- type PaymentMethodPayWithGoogle
- type PaymentMethodQIWIWallet
- type PaymentMethodSamsungpay
- type PaymentMethodSchemeGiftCard
- type PaymentMethodSepaDirectDebit
- type PaymentMethodVipps
- type PaymentMethodsGroup
- type PaymentMethodsRequest
- type PaymentMethodsResponse
- type PaymentRefundResource
- type PaymentRequest
- type PaymentResponse
- type PaymentReversalResource
- type PaymentSetupRequest
- type PaymentSetupResponse
- type PaymentVerificationRequest
- type PaymentVerificationResponse
- type Phone
- type QiwiWalletDetails
- type RatepayDetails
- type Recurring
- type RecurringDetail
- type Redirect
- type ResponseAdditionalData3DSecure
- type ResponseAdditionalDataBillingAddress
- type ResponseAdditionalDataCard
- type ResponseAdditionalDataCommon
- type ResponseAdditionalDataDeliveryAddress
- type ResponseAdditionalDataInstallments
- type ResponseAdditionalDataNetworkTokens
- type ResponseAdditionalDataOpi
- type ResponseAdditionalDataPayPal
- type ResponseAdditionalDataSepa
- type ResponsePaymentMethod
- type RiskData
- type SDKData
- type SDKEphemPubKey
- type SamsungPayDetails
- type SepaDirectDebitDetails
- type ServiceError
- type ServiceError2
- type ShopperInput
- type ShopperInteractionDevice
- type Split
- type SplitAmount
- type StandalonePaymentCancelResource
- type StoredDetails
- type StoredPaymentMethod
- type StoredPaymentMethodDetails
- type SubInputDetail
- type SubscriptionDetails
- type ThreeDS2RequestData
- type ThreeDS2ResponseData
- type ThreeDS2Result
- type ThreeDSRequestData
- type ThreeDSRequestorAuthenticationInfo
- type ThreeDSRequestorPriorAuthenticationInfo
- type ThreeDSecureData
- type UpdatePaymentLinkRequest
- type UpiCollectDetails
- type UpiDetails
- type UpiIntentDetails
- type VippsDetails
- type VisaCheckoutDetails
- type WeChatPayDetails
- type WeChatPayMiniProgramDetails
- type ZipDetails
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountInfo ¶
type AccountInfo struct { // Indicator for the length of time since this shopper account was created in the merchant's environment. Allowed values: * notApplicable * thisTransaction * lessThan30Days * from30To60Days * moreThan60Days AccountAgeIndicator string `json:"accountAgeIndicator,omitempty"` // Date when the shopper's account was last changed. AccountChangeDate *time.Time `json:"accountChangeDate,omitempty"` // Indicator for the length of time since the shopper's account was last updated. Allowed values: * thisTransaction * lessThan30Days * from30To60Days * moreThan60Days AccountChangeIndicator string `json:"accountChangeIndicator,omitempty"` // Date when the shopper's account was created. AccountCreationDate *time.Time `json:"accountCreationDate,omitempty"` // Indicates the type of account. For example, for a multi-account card product. Allowed values: * notApplicable * credit * debit AccountType string `json:"accountType,omitempty"` // Number of attempts the shopper tried to add a card to their account in the last day. AddCardAttemptsDay int32 `json:"addCardAttemptsDay,omitempty"` // Date the selected delivery address was first used. DeliveryAddressUsageDate *time.Time `json:"deliveryAddressUsageDate,omitempty"` // Indicator for the length of time since this delivery address was first used. Allowed values: * thisTransaction * lessThan30Days * from30To60Days * moreThan60Days DeliveryAddressUsageIndicator string `json:"deliveryAddressUsageIndicator,omitempty"` // Shopper's home phone number (including the country code). HomePhone string `json:"homePhone,omitempty"` // Shopper's mobile phone number (including the country code). MobilePhone string `json:"mobilePhone,omitempty"` // Date when the shopper last changed their password. PasswordChangeDate *time.Time `json:"passwordChangeDate,omitempty"` // Indicator when the shopper has changed their password. Allowed values: * notApplicable * thisTransaction * lessThan30Days * from30To60Days * moreThan60Days PasswordChangeIndicator string `json:"passwordChangeIndicator,omitempty"` // Number of all transactions (successful and abandoned) from this shopper in the past 24 hours. PastTransactionsDay int32 `json:"pastTransactionsDay,omitempty"` // Number of all transactions (successful and abandoned) from this shopper in the past year. PastTransactionsYear int32 `json:"pastTransactionsYear,omitempty"` // Date this payment method was added to the shopper's account. PaymentAccountAge *time.Time `json:"paymentAccountAge,omitempty"` // Indicator for the length of time since this payment method was added to this shopper's account. Allowed values: * notApplicable * thisTransaction * lessThan30Days * from30To60Days * moreThan60Days PaymentAccountIndicator string `json:"paymentAccountIndicator,omitempty"` // Number of successful purchases in the last six months. PurchasesLast6Months int32 `json:"purchasesLast6Months,omitempty"` // Whether suspicious activity was recorded on this account. SuspiciousActivity bool `json:"suspiciousActivity,omitempty"` // Shopper's work phone number (including the country code). WorkPhone string `json:"workPhone,omitempty"` }
AccountInfo struct for AccountInfo
type AcctInfo ¶
type AcctInfo struct { // Length of time that the cardholder has had the account with the 3DS Requestor. Allowed values: * **01** — No account * **02** — Created during this transaction * **03** — Less than 30 days * **04** — 30–60 days * **05** — More than 60 days ChAccAgeInd string `json:"chAccAgeInd,omitempty"` // Date that the cardholder’s account with the 3DS Requestor was last changed, including Billing or Shipping address, new payment account, or new user(s) added. Format: **YYYYMMDD** ChAccChange string `json:"chAccChange,omitempty"` // Length of time since the cardholder’s account information with the 3DS Requestor was last changed, including Billing or Shipping address, new payment account, or new user(s) added. Allowed values: * **01** — Changed during this transaction * **02** — Less than 30 days * **03** — 30–60 days * **04** — More than 60 days ChAccChangeInd string `json:"chAccChangeInd,omitempty"` // Date that cardholder’s account with the 3DS Requestor had a password change or account reset. Format: **YYYYMMDD** ChAccPwChange string `json:"chAccPwChange,omitempty"` // Indicates the length of time since the cardholder’s account with the 3DS Requestor had a password change or account reset. Allowed values: * **01** — No change * **02** — Changed during this transaction * **03** — Less than 30 days * **04** — 30–60 days * **05** — More than 60 days ChAccPwChangeInd string `json:"chAccPwChangeInd,omitempty"` // Date that the cardholder opened the account with the 3DS Requestor. Format: **YYYYMMDD** ChAccString string `json:"chAccString,omitempty"` // Number of purchases with this cardholder account during the previous six months. Max length: 4 characters. NbPurchaseAccount string `json:"nbPurchaseAccount,omitempty"` // String that the payment account was enrolled in the cardholder’s account with the 3DS Requestor. Format: **YYYYMMDD** PaymentAccAge string `json:"paymentAccAge,omitempty"` // Indicates the length of time that the payment account was enrolled in the cardholder’s account with the 3DS Requestor. Allowed values: * **01** — No account (guest checkout) * **02** — During this transaction * **03** — Less than 30 days * **04** — 30–60 days * **05** — More than 60 days PaymentAccInd string `json:"paymentAccInd,omitempty"` // Number of Add Card attempts in the last 24 hours. Max length: 3 characters. ProvisionAttemptsDay string `json:"provisionAttemptsDay,omitempty"` // String when the shipping address used for this transaction was first used with the 3DS Requestor. Format: **YYYYMMDD** ShipAddressUsage string `json:"shipAddressUsage,omitempty"` // Indicates when the shipping address used for this transaction was first used with the 3DS Requestor. Allowed values: * **01** — This transaction * **02** — Less than 30 days * **03** — 30–60 days * **04** — More than 60 days ShipAddressUsageInd string `json:"shipAddressUsageInd,omitempty"` // Indicates if the Cardholder Name on the account is identical to the shipping Name used for this transaction. Allowed values: * **01** — Account Name identical to shipping Name * **02** — Account Name different to shipping Name ShipNameIndicator string `json:"shipNameIndicator,omitempty"` // Indicates whether the 3DS Requestor has experienced suspicious activity (including previous fraud) on the cardholder account. Allowed values: * **01** — No suspicious activity has been observed * **02** — Suspicious activity has been observed SuspiciousAccActivity string `json:"suspiciousAccActivity,omitempty"` // Number of transactions (successful and abandoned) for this cardholder account with the 3DS Requestor across all payment accounts in the previous 24 hours. Max length: 3 characters. TxnActivityDay string `json:"txnActivityDay,omitempty"` // Number of transactions (successful and abandoned) for this cardholder account with the 3DS Requestor across all payment accounts in the previous year. Max length: 3 characters. TxnActivityYear string `json:"txnActivityYear,omitempty"` }
AcctInfo struct for AcctInfo
type AchDetails ¶
type AchDetails struct { // The bank account number (without separators). BankAccountNumber string `json:"bankAccountNumber"` // The bank routing number of the account. The field value is `nil` in most cases. BankLocationId string `json:"bankLocationId,omitempty"` // Encrypted bank account number. The bank account number (without separators). EncryptedBankAccountNumber string `json:"encryptedBankAccountNumber,omitempty"` // Encrypted location id. The bank routing number of the account. The field value is `nil` in most cases. EncryptedBankLocationId string `json:"encryptedBankLocationId,omitempty"` // The name of the bank account holder. If you submit a name with non-Latin characters, we automatically replace some of them with corresponding Latin characters to meet the FATF recommendations. For example: * χ12 is converted to ch12. * üA is converted to euA. * Peter Møller is converted to Peter Mller, because banks don't accept 'ø'. After replacement, the ownerName must have at least three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them must be a valid Latin character (A-Z, a-z). For example: * John17 - allowed. * J17 - allowed. * 171 - not allowed. * John-7 - allowed. > If provided details don't match the required format, the response returns the error message: 203 'Invalid bank account holder name'. OwnerName string `json:"ownerName,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **ach** Type string `json:"type,omitempty"` }
AchDetails struct for AchDetails
type AdditionalData3DSecure ¶
type AdditionalData3DSecure struct { // Indicates if you are able to process 3D Secure 2 transactions natively on your payment page. Send this parameter when you are using `/payments` endpoint with any of our [native 3D Secure 2 solutions](https://docs.adyen.com/online-payments/3d-secure/native-3ds2). > This parameter only indicates readiness to support native 3D Secure 2 authentication. To specify if you _want_ to perform 3D Secure, use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) or send the `executeThreeD` parameter. Possible values: * **true** - Ready to support native 3D Secure 2 authentication. Setting this to true does not mean always applying 3D Secure 2. Adyen still selects the version of 3D Secure based on configuration to optimize authorisation rates and improve the shopper's experience. * **false** – Not ready to support native 3D Secure 2 authentication. Adyen will not offer 3D Secure 2 to your shopper regardless of your configuration. Allow3DS2 string `json:"allow3DS2,omitempty"` // Indicates if you want to perform 3D Secure authentication on a transaction. > Alternatively, you can use [Dynamic 3D Secure](/risk-management/dynamic-3d-secure) to configure rules for applying 3D Secure. Possible values: * **true** – Perform 3D Secure authentication. * **false** – Don't perform 3D Secure authentication. Note that this setting results in refusals if the issuer mandates 3D Secure because of the PSD2 directive or other, national regulations. ExecuteThreeD string `json:"executeThreeD,omitempty"` // In case of Secure+, this field must be set to **CUPSecurePlus**. MpiImplementationType string `json:"mpiImplementationType,omitempty"` // Indicates the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest) that you want to request for the transaction. Possible values: * **lowValue** * **secureCorporate** * **trustedBeneficiary** * **transactionRiskAnalysis** ScaExemption string `json:"scaExemption,omitempty"` // Indicates your preference for the 3D Secure version. > If you use this parameter, you override the checks from Adyen's Authentication Engine. We recommend to use this field only if you have an extensive knowledge of 3D Secure. Possible values: * **1.0.2**: Apply 3D Secure version 1.0.2. * **2.1.0**: Apply 3D Secure version 2.1.0. * **2.2.0**: Apply 3D Secure version 2.2.0. If the issuer does not support version 2.2.0, we will fall back to 2.1.0. The following rules apply: * If you prefer 2.1.0 or 2.2.0 but we receive a negative `transStatus` in the `ARes`, we will apply the fallback policy configured in your account. For example, if the configuration is to fall back to 3D Secure 1, we will apply version 1.0.2. * If you prefer 2.1.0 or 2.2.0 but the BIN is not enrolled, you will receive an error. ThreeDSVersion string `json:"threeDSVersion,omitempty"` }
AdditionalData3DSecure struct for AdditionalData3DSecure
type AdditionalDataAirline ¶
type AdditionalDataAirline struct { // Reference number for the invoice, issued by the agency. * minLength: 1 * maxLength: 6 AirlineAgencyInvoiceNumber string `json:"airline.agency_invoice_number,omitempty"` // 2-letter agency plan identifier; alphabetical. * minLength: 2 * maxLength: 2 AirlineAgencyPlanName string `json:"airline.agency_plan_name,omitempty"` // [IATA](https://www.iata.org/services/pages/codes.aspx) 3-digit accounting code (PAX); numeric. It identifies the carrier. * Format: IATA 3-digit accounting code (PAX) * Example: KLM = 074 * minLength: 3 * maxLength: 3 AirlineAirlineCode string `json:"airline.airline_code,omitempty"` // [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter accounting code (PAX); alphabetical. It identifies the carrier. * Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter airline code * Example: KLM = KL * minLength: 2 * maxLength: 2 AirlineAirlineDesignatorCode string `json:"airline.airline_designator_code,omitempty"` // Chargeable amount for boarding the plane. The transaction amount needs to be represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes). * minLength: 1 * maxLength: 18 AirlineBoardingFee string `json:"airline.boarding_fee,omitempty"` // The [CRS](https://en.wikipedia.org/wiki/Computer_reservation_system) used to make the reservation and purchase the ticket. * Format: alphanumeric. * minLength: 4 * maxLength: 4 AirlineComputerizedReservationSystem string `json:"airline.computerized_reservation_system,omitempty"` // Reference number; alphanumeric. * minLength: 0 * maxLength: 20 AirlineCustomerReferenceNumber string `json:"airline.customer_reference_number,omitempty"` // Optional 2-digit code; alphanumeric. It identifies the type of product of the transaction. The description of the code may appear on credit card statements. * Format: 2-digit code * Example: Passenger ticket = 01 * minLength: 2 * maxLength: 2 AirlineDocumentType string `json:"airline.document_type,omitempty"` // Flight departure date. Local time `(HH:mm)` is optional. * Date format: `yyyy-MM-dd` * Date and time format: `yyyy-MM-dd HH:mm` * minLength: 10 * maxLength: 16 AirlineFlightDate string `json:"airline.flight_date,omitempty"` // [IATA](https://www.iata.org/services/pages/codes.aspx) 2-letter accounting code (PAX); alphabetical. It identifies the carrier. This field is required/mandatory if the airline data includes leg details. * Format: IATA 2-letter airline code * Example: KLM = KL * minLength: 2 * maxLength: 2 AirlineLegCarrierCode string `json:"airline.leg.carrier_code,omitempty"` // 1-letter travel class identifier; alphabetical. There is no standard; however, the following codes are used rather consistently: * F: first class * J: business class * Y: economy class * W: premium economy Limitations: * minLength: 1 * maxLength: 1 AirlineLegClassOfTravel string `json:"airline.leg.class_of_travel,omitempty"` // Date and time of travel. [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)-compliant. * Format: `yyyy-MM-dd HH:mm` * minLength: 16 * maxLength: 16 AirlineLegDateOfTravel string `json:"airline.leg.date_of_travel,omitempty"` // Alphabetical identifier of the departure airport. This field is required if the airline data includes leg details. * Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter airport code. * Example: Amsterdam = AMS * minLength: 3 * maxLength: 3 AirlineLegDepartAirport string `json:"airline.leg.depart_airport,omitempty"` // [Departure tax](https://en.wikipedia.org/wiki/Departure_tax). Amount charged by a country to an individual upon their leaving. The transaction amount needs to be represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes). * minLength: 1 * maxLength: 12 AirlineLegDepartTax string `json:"airline.leg.depart_tax,omitempty"` // Alphabetical identifier of the destination/arrival airport. This field is required/mandatory if the airline data includes leg details. * Format: [IATA](https://www.iata.org/services/pages/codes.aspx) 3-letter airport code. * Example: Amsterdam = AMS * minLength: 3 * maxLength: 3 AirlineLegDestinationCode string `json:"airline.leg.destination_code,omitempty"` // [Fare basis code](https://en.wikipedia.org/wiki/Fare_basis_code); alphanumeric. * minLength: 1 * maxLength: 7 AirlineLegFareBaseCode string `json:"airline.leg.fare_base_code,omitempty"` // The flight identifier. * minLength: 1 * maxLength: 5 AirlineLegFlightNumber string `json:"airline.leg.flight_number,omitempty"` // 1-letter code that indicates whether the passenger is entitled to make a stopover. Only two types of characters are allowed: * O: Stopover allowed * X: Stopover not allowed Limitations: * minLength: 1 * maxLength: 1 AirlineLegStopOverCode string `json:"airline.leg.stop_over_code,omitempty"` // Date of birth of the passenger. Date format: `yyyy-MM-dd` * minLength: 10 * maxLength: 10 AirlinePassengerDateOfBirth string `json:"airline.passenger.date_of_birth,omitempty"` // Passenger first name/given name. > This field is required/mandatory if the airline data includes passenger details or leg details. AirlinePassengerFirstName string `json:"airline.passenger.first_name,omitempty"` // Passenger last name/family name. > This field is required/mandatory if the airline data includes passenger details or leg details. AirlinePassengerLastName string `json:"airline.passenger.last_name,omitempty"` // Telephone number of the passenger, including country code. This is an alphanumeric field that can include the '+' and '-' signs. * minLength: 3 * maxLength: 30 AirlinePassengerTelephoneNumber string `json:"airline.passenger.telephone_number,omitempty"` // Passenger type code (PTC). IATA PTC values are 3-letter alphabetical. Example: ADT, SRC, CNN, INS. However, several carriers use non-standard codes that can be up to 5 alphanumeric characters. * minLength: 3 * maxLength: 6 AirlinePassengerTravellerType string `json:"airline.passenger.traveller_type,omitempty"` // Passenger name, initials, and a title. * Format: last name + first name or initials + title. * Example: *FLYER / MARY MS*. * minLength: 1 * maxLength: 49 AirlinePassengerName string `json:"airline.passenger_name"` // Address of the place/agency that issued the ticket. * minLength: 0 * maxLength: 16 AirlineTicketIssueAddress string `json:"airline.ticket_issue_address,omitempty"` // The ticket's unique identifier. * minLength: 1 * maxLength: 150 AirlineTicketNumber string `json:"airline.ticket_number,omitempty"` // IATA number, also ARC number or ARC/IATA number. Unique identifier number for travel agencies. * minLength: 1 * maxLength: 8 AirlineTravelAgencyCode string `json:"airline.travel_agency_code,omitempty"` // The name of the travel agency. * minLength: 1 * maxLength: 25 AirlineTravelAgencyName string `json:"airline.travel_agency_name,omitempty"` }
AdditionalDataAirline struct for AdditionalDataAirline
type AdditionalDataCarRental ¶
type AdditionalDataCarRental struct { // Pick-up date. * Date format: `yyyyMMdd` CarRentalCheckOutDate string `json:"carRental.checkOutDate,omitempty"` // The customer service phone number of the car rental company. * Format: Alphanumeric * maxLength: 17 CarRentalCustomerServiceTollFreeNumber string `json:"carRental.customerServiceTollFreeNumber,omitempty"` // Number of days for which the car is being rented. * Format: Numeric * maxLength: 19 CarRentalDaysRented string `json:"carRental.daysRented,omitempty"` // Any fuel charges associated with the rental. * Format: Numeric * maxLength: 12 CarRentalFuelCharges string `json:"carRental.fuelCharges,omitempty"` // Any insurance charges associated with the rental. * Format: Numeric * maxLength: 12 CarRentalInsuranceCharges string `json:"carRental.insuranceCharges,omitempty"` // The city from which the car is rented. * Format: Alphanumeric * maxLength: 18 CarRentalLocationCity string `json:"carRental.locationCity,omitempty"` // The country from which the car is rented. * Format: Alphanumeric * maxLength: 2 CarRentalLocationCountry string `json:"carRental.locationCountry,omitempty"` // The state or province from where the car is rented. * Format: Alphanumeric * maxLength: 3 CarRentalLocationStateProvince string `json:"carRental.locationStateProvince,omitempty"` // Indicates if the customer was a \"no-show\" (neither keeps nor cancels their booking). * Y - Customer was a no show. * N - Not applicable. CarRentalNoShowIndicator string `json:"carRental.noShowIndicator,omitempty"` // Charge associated with not returning a vehicle to the original rental location. CarRentalOneWayDropOffCharges string `json:"carRental.oneWayDropOffCharges,omitempty"` // Daily rental rate. * Format: Alphanumeric * maxLength: 12 CarRentalRate string `json:"carRental.rate,omitempty"` // Specifies whether the given rate is applied daily or weekly. * D - Daily rate. * W - Weekly rate. CarRentalRateIndicator string `json:"carRental.rateIndicator,omitempty"` // The rental agreement number associated with this car rental. * Format: Alphanumeric * maxLength: 9 CarRentalRentalAgreementNumber string `json:"carRental.rentalAgreementNumber,omitempty"` // Daily rental rate. * Format: Alphanumeric * maxLength: 12 CarRentalRentalClassId string `json:"carRental.rentalClassId,omitempty"` // The name of the person renting the car. * Format: Alphanumeric * maxLength: 26 CarRentalRenterName string `json:"carRental.renterName,omitempty"` // The city where the car must be returned. * Format: Alphanumeric * maxLength: 18 CarRentalReturnCity string `json:"carRental.returnCity,omitempty"` // The country where the car must be returned. * Format: Alphanumeric * maxLength: 2 CarRentalReturnCountry string `json:"carRental.returnCountry,omitempty"` // The last date to return the car by. * Date format: `yyyyMMdd` CarRentalReturnDate string `json:"carRental.returnDate,omitempty"` // Agency code, phone number, or address abbreviation * Format: Alphanumeric * maxLength: 10 CarRentalReturnLocationId string `json:"carRental.returnLocationId,omitempty"` // The state or province where the car must be returned. * Format: Alphanumeric * maxLength: 3 CarRentalReturnStateProvince string `json:"carRental.returnStateProvince,omitempty"` // Indicates whether the goods or services were tax-exempt, or tax was not collected. Values: * Y - Goods or services were tax exempt * N - Tax was not collected CarRentalTaxExemptIndicator string `json:"carRental.taxExemptIndicator,omitempty"` // Number of nights. This should be included in the auth message. * Format: Numeric * maxLength: 2 TravelEntertainmentAuthDataDuration string `json:"travelEntertainmentAuthData.duration,omitempty"` // Indicates what market-specific dataset will be submitted or is being submitted. Value should be \"A\" for Car rental. This should be included in the auth message. * Format: Alphanumeric * maxLength: 1 TravelEntertainmentAuthDataMarket string `json:"travelEntertainmentAuthData.market,omitempty"` }
AdditionalDataCarRental struct for AdditionalDataCarRental
type AdditionalDataCommon ¶
type AdditionalDataCommon struct { // Triggers test scenarios that allow to replicate certain communication errors. Allowed values: * **NO_CONNECTION_AVAILABLE** – There wasn't a connection available to service the outgoing communication. This is a transient, retriable error since no messaging could be initiated to an issuing system (or third-party acquiring system). Therefore, the header Transient-Error: true is returned in the response. A subsequent request using the same idempotency key will be processed as if it was the first request. * **IOEXCEPTION_RECEIVED** – Something went wrong during transmission of the message or receiving the response. This is a classified as non-transient because the message could have been received by the issuing party and been acted upon. No transient error header is returned. If using idempotency, the (error) response is stored as the final result for the idempotency key. Subsequent messages with the same idempotency key not be processed beyond returning the stored response. RequestedTestErrorResponseCode string `json:"RequestedTestErrorResponseCode,omitempty"` // Flags a card payment request for either pre-authorisation or final authorisation. For more information, refer to [Authorisation types](https://docs.adyen.com/online-payments/adjust-authorisation#authorisation-types). Allowed values: * **PreAuth** – flags the payment request to be handled as a pre-authorisation. * **FinalAuth** – flags the payment request to be handled as a final authorisation. AuthorisationType string `json:"authorisationType,omitempty"` // Allows you to determine or override the acquirer account that should be used for the transaction. If you need to process a payment with an acquirer different from a default one, you can set up a corresponding configuration on the Adyen payments platform. Then you can pass a custom routing flag in a payment request's additional data to target a specific acquirer. To enable this functionality, contact [Support](https://support.adyen.com/hc/en-us/requests/new). CustomRoutingFlag string `json:"customRoutingFlag,omitempty"` // In case of [asynchronous authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#adjust-authorisation), this field denotes why the additional payment is made. Possible values: * **NoShow**: An incremental charge is carried out because of a no-show for a guaranteed reservation. * **DelayedCharge**: An incremental charge is carried out to process an additional payment after the original services have been rendered and the respective payment has been processed. IndustryUsage string `json:"industryUsage,omitempty"` // Allows you to link the transaction to the original or previous one in a subscription/card-on-file chain. This field is required for token-based transactions where Adyen does not tokenize the card. Transaction identifier from card schemes, for example, Mastercard Trace ID or the Visa Transaction ID. Submit the original transaction ID of the contract in your payment request if you are not tokenizing card details with Adyen and are making a merchant-initiated transaction (MIT) for subsequent charges. Make sure you are sending `shopperInteraction` **ContAuth** and `recurringProcessingModel` **Subscription** or **UnscheduledCardOnFile** to ensure that the transaction is classified as MIT. NetworkTxReference string `json:"networkTxReference,omitempty"` // Boolean indicator that can be optionally used for performing debit transactions on combo cards (for example, combo cards in Brazil). This is not mandatory but we recommend that you set this to true if you want to use the `selectedBrand` value to specify how to process the transaction. OverwriteBrand string `json:"overwriteBrand,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator. This field must contain the city of the actual merchant's address. * Format: alpha-numeric. * Maximum length: 13 characters. SubMerchantCity string `json:"subMerchantCity,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator. This field must contain the three-letter country code of the actual merchant's address. * Format: alpha-numeric. * Fixed length: 3 characters. SubMerchantCountry string `json:"subMerchantCountry,omitempty"` // This field contains an identifier of the actual merchant when a transaction is submitted via a payment facilitator. The payment facilitator must send in this unique ID. A unique identifier per submerchant that is required if the transaction is performed by a registered payment facilitator. * Format: alpha-numeric. * Fixed length: 15 characters. SubMerchantID string `json:"subMerchantID,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator. This field must contain the name of the actual merchant. * Format: alpha-numeric. * Maximum length: 22 characters. SubMerchantName string `json:"subMerchantName,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator. This field must contain the postal code of the actual merchant's address. * Format: alpha-numeric. * Maximum length: 10 characters. SubMerchantPostalCode string `json:"subMerchantPostalCode,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator, and if applicable to the country. This field must contain the state code of the actual merchant's address. * Format: alpha-numeric. * Maximum length: 3 characters. SubMerchantState string `json:"subMerchantState,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator. This field must contain the street of the actual merchant's address. * Format: alpha-numeric. * Maximum length: 60 characters. SubMerchantStreet string `json:"subMerchantStreet,omitempty"` // This field is required if the transaction is performed by a registered payment facilitator. This field must contain the tax ID of the actual merchant. * Format: alpha-numeric. * Fixed length: 11 or 14 characters. SubMerchantTaxId string `json:"subMerchantTaxId,omitempty"` }
AdditionalDataCommon struct for AdditionalDataCommon
type AdditionalDataLevel23 ¶
type AdditionalDataLevel23 struct { // Customer code, if supplied by a customer. Encoding: ASCII. Max length: 25 characters. > Required for Level 2 and Level 3 data. EnhancedSchemeDataCustomerReference string `json:"enhancedSchemeData.customerReference,omitempty"` // Destination country code. Encoding: ASCII. Max length: 3 characters. EnhancedSchemeDataDestinationCountryCode string `json:"enhancedSchemeData.destinationCountryCode,omitempty"` // The postal code of a destination address. Encoding: ASCII. Max length: 10 characters. > Required for American Express. EnhancedSchemeDataDestinationPostalCode string `json:"enhancedSchemeData.destinationPostalCode,omitempty"` // Destination state or province code. Encoding: ASCII.Max length: 3 characters. EnhancedSchemeDataDestinationStateProvinceCode string `json:"enhancedSchemeData.destinationStateProvinceCode,omitempty"` // Duty amount, in minor units. For example, 2000 means USD 20.00. Max length: 12 characters. EnhancedSchemeDataDutyAmount string `json:"enhancedSchemeData.dutyAmount,omitempty"` // Shipping amount, in minor units. For example, 2000 means USD 20.00. Max length: 12 characters. EnhancedSchemeDataFreightAmount string `json:"enhancedSchemeData.freightAmount,omitempty"` // Item commodity code. Encoding: ASCII. Max length: 12 characters. EnhancedSchemeDataItemDetailLineItemNrCommodityCode string `json:"enhancedSchemeData.itemDetailLine[itemNr].commodityCode,omitempty"` // Item description. Encoding: ASCII. Max length: 26 characters. EnhancedSchemeDataItemDetailLineItemNrDescription string `json:"enhancedSchemeData.itemDetailLine[itemNr].description,omitempty"` // Discount amount, in minor units. For example, 2000 means USD 20.00. Max length: 12 characters. EnhancedSchemeDataItemDetailLineItemNrDiscountAmount string `json:"enhancedSchemeData.itemDetailLine[itemNr].discountAmount,omitempty"` // Product code. Encoding: ASCII. Max length: 12 characters. EnhancedSchemeDataItemDetailLineItemNrProductCode string `json:"enhancedSchemeData.itemDetailLine[itemNr].productCode,omitempty"` // Quantity, specified as an integer value. Value must be greater than 0. Max length: 12 characters. EnhancedSchemeDataItemDetailLineItemNrQuantity string `json:"enhancedSchemeData.itemDetailLine[itemNr].quantity,omitempty"` // Total amount, in minor units. For example, 2000 means USD 20.00. Max length: 12 characters. EnhancedSchemeDataItemDetailLineItemNrTotalAmount string `json:"enhancedSchemeData.itemDetailLine[itemNr].totalAmount,omitempty"` // Item unit of measurement. Encoding: ASCII. Max length: 3 characters. EnhancedSchemeDataItemDetailLineItemNrUnitOfMeasure string `json:"enhancedSchemeData.itemDetailLine[itemNr].unitOfMeasure,omitempty"` // Unit price, specified in [minor units](https://docs.adyen.com/development-resources/currency-codes). Max length: 12 characters. EnhancedSchemeDataItemDetailLineItemNrUnitPrice string `json:"enhancedSchemeData.itemDetailLine[itemNr].unitPrice,omitempty"` // Order date. * Format: `ddMMyy` Encoding: ASCII. Max length: 6 characters. EnhancedSchemeDataOrderDate string `json:"enhancedSchemeData.orderDate,omitempty"` // The postal code of a \"ship-from\" address. Encoding: ASCII. Max length: 10 characters. EnhancedSchemeDataShipFromPostalCode string `json:"enhancedSchemeData.shipFromPostalCode,omitempty"` // Total tax amount, in minor units. For example, 2000 means USD 20.00. Max length: 12 characters. > Required for Level 2 and Level 3 data. EnhancedSchemeDataTotalTaxAmount string `json:"enhancedSchemeData.totalTaxAmount,omitempty"` }
AdditionalDataLevel23 struct for AdditionalDataLevel23
type AdditionalDataLodging ¶
type AdditionalDataLodging struct { // The arrival date. * Date format: `yyyyMMdd` LodgingCheckInDate string `json:"lodging.checkInDate,omitempty"` // The departure date. * Date format: `yyyyMMdd` LodgingCheckOutDate string `json:"lodging.checkOutDate,omitempty"` // The toll free phone number for the hotel/lodgings. * Format: Alphanumeric * maxLength: 17 LodgingCustomerServiceTollFreeNumber string `json:"lodging.customerServiceTollFreeNumber,omitempty"` // Identifies that the facility complies with the Hotel and Motel Fire Safety Act of 1990. Values can be: 'Y' or 'N'. * Format: Alphabetic * maxLength: 1 LodgingFireSafetyActIndicator string `json:"lodging.fireSafetyActIndicator,omitempty"` // The folio cash advances. * Format: Numeric * maxLength: 12 LodgingFolioCashAdvances string `json:"lodging.folioCashAdvances,omitempty"` // Card acceptor’s internal invoice or billing ID reference number. * Format: Alphanumeric * maxLength: 25 LodgingFolioNumber string `json:"lodging.folioNumber,omitempty"` // Any charges for food and beverages associated with the booking. * Format: Numeric * maxLength: 12 LodgingFoodBeverageCharges string `json:"lodging.foodBeverageCharges,omitempty"` // Indicates if the customer was a \"no-show\" (neither keeps nor cancels their booking). Value should be Y or N. * Format: Numeric * maxLength: 1 LodgingNoShowIndicator string `json:"lodging.noShowIndicator,omitempty"` // Prepaid expenses for the booking. * Format: Numeric * maxLength: 12 LodgingPrepaidExpenses string `json:"lodging.prepaidExpenses,omitempty"` // Identifies specific lodging property location by its local phone number. * Format: Alphanumeric * maxLength: 17 LodgingPropertyPhoneNumber string `json:"lodging.propertyPhoneNumber,omitempty"` // Total number of nights the room will be rented. * Format: Numeric * maxLength: 4 LodgingRoom1NumberOfNights string `json:"lodging.room1.numberOfNights,omitempty"` // The rate of the room. * Format: Numeric * maxLength: 12 LodgingRoom1Rate string `json:"lodging.room1.rate,omitempty"` // The total amount of tax to be paid. * Format: Numeric * maxLength: 12 LodgingRoom1Tax string `json:"lodging.room1.tax,omitempty"` // Total room tax amount. * Format: Numeric * maxLength: 12 LodgingTotalRoomTax string `json:"lodging.totalRoomTax,omitempty"` // Total tax amount. * Format: Numeric * maxLength: 12 LodgingTotalTax string `json:"lodging.totalTax,omitempty"` // Number of nights. This should be included in the auth message. * Format: Numeric * maxLength: 2 TravelEntertainmentAuthDataDuration string `json:"travelEntertainmentAuthData.duration,omitempty"` // Indicates what market-specific dataset will be submitted or is being submitted. Value should be \"H\" for Hotel. This should be included in the auth message. * Format: Alphanumeric * maxLength: 1 TravelEntertainmentAuthDataMarket string `json:"travelEntertainmentAuthData.market,omitempty"` }
AdditionalDataLodging struct for AdditionalDataLodging
type AdditionalDataOpenInvoice ¶
type AdditionalDataOpenInvoice struct { // Holds different merchant data points like product, purchase, customer, and so on. It takes data in a Base64 encoded string. The `merchantData` parameter needs to be added to the `openinvoicedata` signature at the end. Since the field is optional, if it's not included it does not impact computing the merchant signature. Applies only to Klarna. You can contact Klarna for the format and structure of the string. OpeninvoicedataMerchantData string `json:"openinvoicedata.merchantData,omitempty"` // The number of invoice lines included in `openinvoicedata`. There needs to be at least one line, so `numberOfLines` needs to be at least 1. OpeninvoicedataNumberOfLines string `json:"openinvoicedata.numberOfLines,omitempty"` // The three-character ISO currency code. OpeninvoicedataLineItemNrCurrencyCode string `json:"openinvoicedataLine[itemNr].currencyCode,omitempty"` // A text description of the product the invoice line refers to. OpeninvoicedataLineItemNrDescription string `json:"openinvoicedataLine[itemNr].description,omitempty"` // The price for one item in the invoice line, represented in minor units. The due amount for the item, VAT excluded. OpeninvoicedataLineItemNrItemAmount string `json:"openinvoicedataLine[itemNr].itemAmount,omitempty"` // A unique id for this item. Required for RatePay if the description of each item is not unique. OpeninvoicedataLineItemNrItemId string `json:"openinvoicedataLine[itemNr].itemId,omitempty"` // The VAT due for one item in the invoice line, represented in minor units. OpeninvoicedataLineItemNrItemVatAmount string `json:"openinvoicedataLine[itemNr].itemVatAmount,omitempty"` // The VAT percentage for one item in the invoice line, represented in minor units. For example, 19% VAT is specified as 1900. OpeninvoicedataLineItemNrItemVatPercentage string `json:"openinvoicedataLine[itemNr].itemVatPercentage,omitempty"` // The number of units purchased of a specific product. OpeninvoicedataLineItemNrNumberOfItems string `json:"openinvoicedataLine[itemNr].numberOfItems,omitempty"` // Name of the shipping company handling the the return shipment. OpeninvoicedataLineItemNrReturnShippingCompany string `json:"openinvoicedataLine[itemNr].returnShippingCompany,omitempty"` // The tracking number for the return of the shipment. OpeninvoicedataLineItemNrReturnTrackingNumber string `json:"openinvoicedataLine[itemNr].returnTrackingNumber,omitempty"` // URI where the customer can track the return of their shipment. OpeninvoicedataLineItemNrReturnTrackingUri string `json:"openinvoicedataLine[itemNr].returnTrackingUri,omitempty"` // Name of the shipping company handling the delivery. OpeninvoicedataLineItemNrShippingCompany string `json:"openinvoicedataLine[itemNr].shippingCompany,omitempty"` // Shipping method. OpeninvoicedataLineItemNrShippingMethod string `json:"openinvoicedataLine[itemNr].shippingMethod,omitempty"` // The tracking number for the shipment. OpeninvoicedataLineItemNrTrackingNumber string `json:"openinvoicedataLine[itemNr].trackingNumber,omitempty"` // URI where the customer can track their shipment. OpeninvoicedataLineItemNrTrackingUri string `json:"openinvoicedataLine[itemNr].trackingUri,omitempty"` }
AdditionalDataOpenInvoice struct for AdditionalDataOpenInvoice
type AdditionalDataOpi ¶
type AdditionalDataOpi struct { // Optional boolean indicator. Set to **true** if you want an ecommerce transaction to return an `opi.transToken` as additional data in the response. You can store this Oracle Payment Interface token in your Oracle Opera database. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce). OpiIncludeTransToken string `json:"opi.includeTransToken,omitempty"` }
AdditionalDataOpi struct for AdditionalDataOpi
type AdditionalDataRatepay ¶
type AdditionalDataRatepay struct { // Amount the customer has to pay each month. RatepayInstallmentAmount string `json:"ratepay.installmentAmount,omitempty"` // Interest rate of this installment. RatepayInterestRate string `json:"ratepay.interestRate,omitempty"` // Amount of the last installment. RatepayLastInstallmentAmount string `json:"ratepay.lastInstallmentAmount,omitempty"` // Calendar day of the first payment. RatepayPaymentFirstday string `json:"ratepay.paymentFirstday,omitempty"` // Date the merchant delivered the goods to the customer. RatepaydataDeliveryDate string `json:"ratepaydata.deliveryDate,omitempty"` // Date by which the customer must settle the payment. RatepaydataDueDate string `json:"ratepaydata.dueDate,omitempty"` // Invoice date, defined by the merchant. If not included, the invoice date is set to the delivery date. RatepaydataInvoiceDate string `json:"ratepaydata.invoiceDate,omitempty"` // Identification name or number for the invoice, defined by the merchant. RatepaydataInvoiceId string `json:"ratepaydata.invoiceId,omitempty"` }
AdditionalDataRatepay struct for AdditionalDataRatepay
type AdditionalDataRetry ¶
type AdditionalDataRetry struct { // The number of times the transaction (not order) has been retried between different payment service providers. For instance, the `chainAttemptNumber` set to 2 means that this transaction has been recently tried on another provider before being sent to Adyen. > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together. RetryChainAttemptNumber string `json:"retry.chainAttemptNumber,omitempty"` // The index of the attempt to bill a particular order, which is identified by the `merchantOrderReference` field. For example, if a recurring transaction fails and is retried one day later, then the order number for these attempts would be 1 and 2, respectively. > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together. RetryOrderAttemptNumber string `json:"retry.orderAttemptNumber,omitempty"` // The Boolean value indicating whether Adyen should skip or retry this transaction, if possible. > If you submit `retry.chainAttemptNumber`, `retry.orderAttemptNumber`, and `retry.skipRetry` values, we also recommend you provide the `merchantOrderReference` to facilitate linking payment attempts together. RetrySkipRetry string `json:"retry.skipRetry,omitempty"` }
AdditionalDataRetry struct for AdditionalDataRetry
type AdditionalDataRisk ¶
type AdditionalDataRisk struct { // The data for your custom risk field. For more information, refer to [Create custom risk fields](https://docs.adyen.com/risk-management/configure-custom-risk-rules#step-1-create-custom-risk-fields). RiskdataCustomFieldName string `json:"riskdata.[customFieldName],omitempty"` // The price of item in the basket, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes). RiskdataBasketItemItemNrAmountPerItem string `json:"riskdata.basket.item[itemNr].amountPerItem,omitempty"` // Brand of the item. RiskdataBasketItemItemNrBrand string `json:"riskdata.basket.item[itemNr].brand,omitempty"` // Category of the item. RiskdataBasketItemItemNrCategory string `json:"riskdata.basket.item[itemNr].category,omitempty"` // Color of the item. RiskdataBasketItemItemNrColor string `json:"riskdata.basket.item[itemNr].color,omitempty"` // The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217). RiskdataBasketItemItemNrCurrency string `json:"riskdata.basket.item[itemNr].currency,omitempty"` // ID of the item. RiskdataBasketItemItemNrItemID string `json:"riskdata.basket.item[itemNr].itemID,omitempty"` // Manufacturer of the item. RiskdataBasketItemItemNrManufacturer string `json:"riskdata.basket.item[itemNr].manufacturer,omitempty"` // A text description of the product the invoice line refers to. RiskdataBasketItemItemNrProductTitle string `json:"riskdata.basket.item[itemNr].productTitle,omitempty"` // Quantity of the item purchased. RiskdataBasketItemItemNrQuantity string `json:"riskdata.basket.item[itemNr].quantity,omitempty"` // Email associated with the given product in the basket (usually in electronic gift cards). RiskdataBasketItemItemNrReceiverEmail string `json:"riskdata.basket.item[itemNr].receiverEmail,omitempty"` // Size of the item. RiskdataBasketItemItemNrSize string `json:"riskdata.basket.item[itemNr].size,omitempty"` // [Stock keeping unit](https://en.wikipedia.org/wiki/Stock_keeping_unit). RiskdataBasketItemItemNrSku string `json:"riskdata.basket.item[itemNr].sku,omitempty"` // [Universal Product Code](https://en.wikipedia.org/wiki/Universal_Product_Code). RiskdataBasketItemItemNrUpc string `json:"riskdata.basket.item[itemNr].upc,omitempty"` // Code of the promotion. RiskdataPromotionsPromotionItemNrPromotionCode string `json:"riskdata.promotions.promotion[itemNr].promotionCode,omitempty"` // The discount amount of the promotion, represented in [minor units](https://docs.adyen.com/development-resources/currency-codes). RiskdataPromotionsPromotionItemNrPromotionDiscountAmount string `json:"riskdata.promotions.promotion[itemNr].promotionDiscountAmount,omitempty"` // The three-character [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217). RiskdataPromotionsPromotionItemNrPromotionDiscountCurrency string `json:"riskdata.promotions.promotion[itemNr].promotionDiscountCurrency,omitempty"` // Promotion's percentage discount. It is represented in percentage value and there is no need to include the '%' sign. e.g. for a promotion discount of 30%, the value of the field should be 30. RiskdataPromotionsPromotionItemNrPromotionDiscountPercentage string `json:"riskdata.promotions.promotion[itemNr].promotionDiscountPercentage,omitempty"` // Name of the promotion. RiskdataPromotionsPromotionItemNrPromotionName string `json:"riskdata.promotions.promotion[itemNr].promotionName,omitempty"` // Reference number of the risk profile that you want to apply to the payment. If not provided or left blank, the merchant-level account's default risk profile will be applied to the payment. For more information, see [dynamically assign a risk profile to a payment](https://docs.adyen.com/risk-management/create-and-use-risk-profiles#dynamically-assign-a-risk-profile-to-a-payment). RiskdataRiskProfileReference string `json:"riskdata.riskProfileReference,omitempty"` // If this parameter is provided with the value **true**, risk checks for the payment request are skipped and the transaction will not get a risk score. RiskdataSkipRisk string `json:"riskdata.skipRisk,omitempty"` }
AdditionalDataRisk struct for AdditionalDataRisk
type AdditionalDataRiskStandalone ¶
type AdditionalDataRiskStandalone struct { // Shopper's country of residence in the form of ISO standard 3166 2-character country codes. PayPalCountryCode string `json:"PayPal.CountryCode,omitempty"` // Shopper's email. PayPalEmailId string `json:"PayPal.EmailId,omitempty"` // Shopper's first name. PayPalFirstName string `json:"PayPal.FirstName,omitempty"` // Shopper's last name. PayPalLastName string `json:"PayPal.LastName,omitempty"` // Unique PayPal Customer Account identification number. Character length and limitations: 13 single-byte alphanumeric characters. PayPalPayerId string `json:"PayPal.PayerId,omitempty"` // Shopper's phone number. PayPalPhone string `json:"PayPal.Phone,omitempty"` // Allowed values: * **Eligible** — Merchant is protected by PayPal's Seller Protection Policy for Unauthorized Payments and Item Not Received. * **PartiallyEligible** — Merchant is protected by PayPal's Seller Protection Policy for Item Not Received. * **Ineligible** — Merchant is not protected under the Seller Protection Policy. PayPalProtectionEligibility string `json:"PayPal.ProtectionEligibility,omitempty"` // Unique transaction ID of the payment. PayPalTransactionId string `json:"PayPal.TransactionId,omitempty"` // Raw AVS result received from the acquirer, where available. Example: D AvsResultRaw string `json:"avsResultRaw,omitempty"` // The Bank Identification Number of a credit card, which is the first six digits of a card number. Required for [tokenized card request](https://docs.adyen.com/risk-management/standalone-risk#tokenised-pan-request). Bin string `json:"bin,omitempty"` // Raw CVC result received from the acquirer, where available. Example: 1 CvcResultRaw string `json:"cvcResultRaw,omitempty"` // Unique identifier or token for the shopper's card details. RiskToken string `json:"riskToken,omitempty"` // A Boolean value indicating whether 3DS authentication was completed on this payment. Example: true ThreeDAuthenticated string `json:"threeDAuthenticated,omitempty"` // A Boolean value indicating whether 3DS was offered for this payment. Example: true ThreeDOffered string `json:"threeDOffered,omitempty"` // Required for PayPal payments only. The only supported value is: **paypal**. TokenDataType string `json:"tokenDataType,omitempty"` }
AdditionalDataRiskStandalone struct for AdditionalDataRiskStandalone
type AdditionalDataSubMerchant ¶
type AdditionalDataSubMerchant struct { // Required for transactions performed by registered payment facilitators. Indicates the number of sub-merchants contained in the request. For example, **3**. SubMerchantNumberOfSubSellers string `json:"subMerchant.numberOfSubSellers,omitempty"` // Required for transactions performed by registered payment facilitators. The city of the sub-merchant's address. * Format: Alphanumeric * Maximum length: 13 characters SubMerchantSubSellerSubSellerNrCity string `json:"subMerchant.subSeller[subSellerNr].city,omitempty"` // Required for transactions performed by registered payment facilitators. The three-letter country code of the sub-merchant's address. For example, **BRA** for Brazil. * Format: [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) * Fixed length: 3 characters SubMerchantSubSellerSubSellerNrCountry string `json:"subMerchant.subSeller[subSellerNr].country,omitempty"` // Required for transactions performed by registered payment facilitators. A unique identifier that you create for the sub-merchant, used by schemes to identify the sub-merchant. * Format: Alphanumeric * Maximum length: 15 characters SubMerchantSubSellerSubSellerNrId string `json:"subMerchant.subSeller[subSellerNr].id,omitempty"` // Required for transactions performed by registered payment facilitators. The sub-merchant's 4-digit Merchant Category Code (MCC). * Format: Numeric * Fixed length: 4 digits SubMerchantSubSellerSubSellerNrMcc string `json:"subMerchant.subSeller[subSellerNr].mcc,omitempty"` // Required for transactions performed by registered payment facilitators. The name of the sub-merchant. Based on scheme specifications, this value will overwrite the shopper statement that will appear in the card statement. * Format: Alphanumeric * Maximum length: 22 characters SubMerchantSubSellerSubSellerNrName string `json:"subMerchant.subSeller[subSellerNr].name,omitempty"` // Required for transactions performed by registered payment facilitators. The postal code of the sub-merchant's address, without dashes. * Format: Numeric * Fixed length: 8 digits SubMerchantSubSellerSubSellerNrPostalCode string `json:"subMerchant.subSeller[subSellerNr].postalCode,omitempty"` // Required for transactions performed by registered payment facilitators. The state code of the sub-merchant's address, if applicable to the country. * Format: Alphanumeric * Maximum length: 2 characters SubMerchantSubSellerSubSellerNrState string `json:"subMerchant.subSeller[subSellerNr].state,omitempty"` // Required for transactions performed by registered payment facilitators. The street name and house number of the sub-merchant's address. * Format: Alphanumeric * Maximum length: 60 characters SubMerchantSubSellerSubSellerNrStreet string `json:"subMerchant.subSeller[subSellerNr].street,omitempty"` // Required for transactions performed by registered payment facilitators. The tax ID of the sub-merchant. * Format: Numeric * Fixed length: 11 digits for the CPF or 14 digits for the CNPJ SubMerchantSubSellerSubSellerNrTaxId string `json:"subMerchant.subSeller[subSellerNr].taxId,omitempty"` }
AdditionalDataSubMerchant struct for AdditionalDataSubMerchant
type AdditionalDataTemporaryServices ¶
type AdditionalDataTemporaryServices struct { // Customer code, if supplied by a customer. * Encoding: ASCII * maxLength: 25 EnhancedSchemeDataCustomerReference string `json:"enhancedSchemeData.customerReference,omitempty"` // Name or ID associated with the individual working in a temporary capacity. * maxLength: 40 EnhancedSchemeDataEmployeeName string `json:"enhancedSchemeData.employeeName,omitempty"` // Description of the job or task of the individual working in a temporary capacity. * maxLength: 40 EnhancedSchemeDataJobDescription string `json:"enhancedSchemeData.jobDescription,omitempty"` // Amount paid per regular hours worked, minor units. * maxLength: 7 EnhancedSchemeDataRegularHoursRate string `json:"enhancedSchemeData.regularHoursRate,omitempty"` // Amount of time worked during a normal operation for the task or job. * maxLength: 7 EnhancedSchemeDataRegularHoursWorked string `json:"enhancedSchemeData.regularHoursWorked,omitempty"` // Name of the individual requesting temporary services. * maxLength: 40 EnhancedSchemeDataRequestName string `json:"enhancedSchemeData.requestName,omitempty"` // Date for the beginning of the pay period. * Format: ddMMyy * maxLength: 6 EnhancedSchemeDataTempStartDate string `json:"enhancedSchemeData.tempStartDate,omitempty"` // Date of the end of the billing cycle. * Format: ddMMyy * maxLength: 6 EnhancedSchemeDataTempWeekEnding string `json:"enhancedSchemeData.tempWeekEnding,omitempty"` // Total tax amount, in minor units. For example, 2000 means USD 20.00 * maxLength: 12 EnhancedSchemeDataTotalTaxAmount string `json:"enhancedSchemeData.totalTaxAmount,omitempty"` }
AdditionalDataTemporaryServices struct for AdditionalDataTemporaryServices
type AdditionalDataWallets ¶
type AdditionalDataWallets struct { // The Android Pay token retrieved from the SDK. AndroidpayToken string `json:"androidpay.token,omitempty"` // The Mastercard Masterpass Transaction ID retrieved from the SDK. MasterpassTransactionId string `json:"masterpass.transactionId,omitempty"` // The Apple Pay token retrieved from the SDK. PaymentToken string `json:"payment.token,omitempty"` // The Google Pay token retrieved from the SDK. PaywithgoogleToken string `json:"paywithgoogle.token,omitempty"` // The Samsung Pay token retrieved from the SDK. SamsungpayToken string `json:"samsungpay.token,omitempty"` // The Visa Checkout Call ID retrieved from the SDK. VisacheckoutCallId string `json:"visacheckout.callId,omitempty"` }
AdditionalDataWallets struct for AdditionalDataWallets
type Address ¶
type Address struct { // The name of the city. Maximum length: 3000 characters. City string `json:"city"` // The two-character ISO-3166-1 alpha-2 country code. For example, **US**. > If you don't know the country or are not collecting the country from the shopper, provide `country` as `ZZ`. Country string `json:"country"` // The number or name of the house. Maximum length: 3000 characters. HouseNumberOrName string `json:"houseNumberOrName"` // A maximum of five digits for an address in the US, or a maximum of ten characters for an address in all other countries. PostalCode string `json:"postalCode"` // The two-character ISO 3166-2 state or province code. For example, **CA** in the US or **ON** in Canada. > Required for the US and Canada. StateOrProvince string `json:"stateOrProvince,omitempty"` // The name of the street. Maximum length: 3000 characters. > The house number should not be included in this field; it should be separately provided via `houseNumberOrName`. Street string `json:"street"` }
Address struct for Address
type AfterpayDetails ¶
type AfterpayDetails struct { // The address where to send the invoice. BillingAddress string `json:"billingAddress,omitempty"` // The address where the goods should be delivered. DeliveryAddress string `json:"deliveryAddress,omitempty"` // Shopper name, date of birth, phone number, and email address. PersonalDetails string `json:"personalDetails,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **afterpay_default** Type string `json:"type"` }
AfterpayDetails struct for AfterpayDetails
type AmazonPayDetails ¶
type AmazonPayDetails struct { // This is the `amazonPayToken` that you obtained from the [Get Checkout Session](https://amazon-pay-acquirer-guide.s3-eu-west-1.amazonaws.com/v1/amazon-pay-api-v2/checkout-session.html#get-checkout-session) response. AmazonPayToken string `json:"amazonPayToken,omitempty"` // **amazonpay** Type string `json:"type,omitempty"` }
AmazonPayDetails struct for AmazonPayDetails
type Amount ¶
type Amount struct { // The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). Currency string `json:"currency"` // The amount of the transaction, in [minor units](https://docs.adyen.com/development-resources/currency-codes). Value int64 `json:"value"` }
Amount struct for Amount
type AndroidPayDetails ¶
type AndroidPayDetails struct { // **androidpay** Type string `json:"type,omitempty"` }
AndroidPayDetails struct for AndroidPayDetails
type ApplePayDetails ¶
type ApplePayDetails struct { // The stringified and base64 encoded `paymentData` you retrieved from the Apple framework. ApplePayToken string `json:"applePayToken"` // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **applepay** Type string `json:"type,omitempty"` }
ApplePayDetails struct for ApplePayDetails
type ApplicationInfo ¶
type ApplicationInfo struct { AdyenLibrary *CommonField `json:"adyenLibrary,omitempty"` AdyenPaymentSource *CommonField `json:"adyenPaymentSource,omitempty"` ExternalPlatform *ExternalPlatform `json:"externalPlatform,omitempty"` MerchantApplication *CommonField `json:"merchantApplication,omitempty"` MerchantDevice *MerchantDevice `json:"merchantDevice,omitempty"` ShopperInteractionDevice *ShopperInteractionDevice `json:"shopperInteractionDevice,omitempty"` }
ApplicationInfo struct for ApplicationInfo
type AuthenticationData ¶
type AuthenticationData struct { // Indicates when 3D Secure authentication should be attempted. This overrides all other rules, including [Dynamic 3D Secure settings](https://docs.adyen.com/risk-management/dynamic-3d-secure). Possible values: * **always**: Perform 3D Secure authentication. * **never**: Don't perform 3D Secure authentication. If PSD2 SCA or other national regulations require authentication, the transaction gets declined. * **preferNo**: Do not perform 3D Secure authentication if not required by PSD2 SCA or other national regulations. AttemptAuthentication string `json:"attemptAuthentication,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. Default: *false**. AuthenticationOnly bool `json:"authenticationOnly,omitempty"` ThreeDSRequestData *ThreeDSRequestData `json:"threeDSRequestData,omitempty"` }
AuthenticationData struct for AuthenticationData
type Avs ¶
type Avs struct { // Indicates whether the shopper is allowed to modify the billing address for the current payment request. AddressEditable bool `json:"addressEditable,omitempty"` // Specifies whether the shopper should enter their billing address during checkout. Allowed values: * yes — Perform AVS checks for every card payment. * automatic — Perform AVS checks only when required to optimize the conversion rate. * no — Do not perform AVS checks. Enabled string `json:"enabled,omitempty"` }
Avs struct for Avs
type BacsDirectDebitDetails ¶
type BacsDirectDebitDetails struct { // The bank account number (without separators). BankAccountNumber string `json:"bankAccountNumber,omitempty"` // The bank routing number of the account. BankLocationId string `json:"bankLocationId,omitempty"` // The name of the bank account holder. HolderName string `json:"holderName,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **directdebit_GB** Type string `json:"type,omitempty"` }
BacsDirectDebitDetails struct for BacsDirectDebitDetails
type BankAccount ¶
type BankAccount struct { // The bank account number (without separators). BankAccountNumber string `json:"bankAccountNumber,omitempty"` // The bank city. BankCity string `json:"bankCity,omitempty"` // The location id of the bank. The field value is `nil` in most cases. BankLocationId string `json:"bankLocationId,omitempty"` // The name of the bank. BankName string `json:"bankName,omitempty"` // The [Business Identifier Code](https://en.wikipedia.org/wiki/ISO_9362) (BIC) is the SWIFT address assigned to a bank. The field value is `nil` in most cases. Bic string `json:"bic,omitempty"` // Country code where the bank is located. A valid value is an ISO two-character country code (e.g. 'NL'). CountryCode string `json:"countryCode,omitempty"` // The [International Bank Account Number](https://en.wikipedia.org/wiki/International_Bank_Account_Number) (IBAN). Iban string `json:"iban,omitempty"` // The name of the bank account holder. If you submit a name with non-Latin characters, we automatically replace some of them with corresponding Latin characters to meet the FATF recommendations. For example: * χ12 is converted to ch12. * üA is converted to euA. * Peter Møller is converted to Peter Mller, because banks don't accept 'ø'. After replacement, the ownerName must have at least three alphanumeric characters (A-Z, a-z, 0-9), and at least one of them must be a valid Latin character (A-Z, a-z). For example: * John17 - allowed. * J17 - allowed. * 171 - not allowed. * John-7 - allowed. > If provided details don't match the required format, the response returns the error message: 203 'Invalid bank account holder name'. OwnerName string `json:"ownerName,omitempty"` // The bank account holder's tax ID. TaxId string `json:"taxId,omitempty"` }
BankAccount struct for BankAccount
type BillDeskDetails ¶
type BillDeskDetails struct { // The issuer id of the shopper's selected bank. Issuer string `json:"issuer"` // **billdesk** Type string `json:"type"` }
BillDeskDetails struct for BillDeskDetails
type BillDeskOnlineDetails ¶
type BillDeskOnlineDetails struct { // The issuer id of the shopper's selected bank. Issuer string `json:"issuer"` // **billdesk_online** Type string `json:"type"` }
BillDeskOnlineDetails struct for BillDeskOnlineDetails
type BillDeskWalletDetails ¶
type BillDeskWalletDetails struct { // The issuer id of the shopper's selected bank. Issuer string `json:"issuer"` // **billdesk_wallet** Type string `json:"type"` }
BillDeskWalletDetails struct for BillDeskWalletDetails
type BlikDetails ¶
type BlikDetails struct { // BLIK code consisting of 6 digits. BlikCode string `json:"blikCode,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **blik** Type string `json:"type,omitempty"` }
BlikDetails struct for BlikDetails
type BrowserInfo ¶
type BrowserInfo struct { // The accept header value of the shopper's browser. AcceptHeader string `json:"acceptHeader"` // The color depth of the shopper's browser in bits per pixel. This should be obtained by using the browser's `screen.colorDepth` property. Accepted values: 1, 4, 8, 15, 16, 24, 30, 32 or 48 bit color depth. ColorDepth int32 `json:"colorDepth"` // Boolean value indicating if the shopper's browser is able to execute Java. JavaEnabled bool `json:"javaEnabled"` // Boolean value indicating if the shopper's browser is able to execute JavaScript. A default 'true' value is assumed if the field is not present. JavaScriptEnabled bool `json:"javaScriptEnabled,omitempty"` // The `navigator.language` value of the shopper's browser (as defined in IETF BCP 47). Language string `json:"language"` // The total height of the shopper's device screen in pixels. ScreenHeight int32 `json:"screenHeight"` // The total width of the shopper's device screen in pixels. ScreenWidth int32 `json:"screenWidth"` // Time difference between UTC time and the shopper's browser local time, in minutes. TimeZoneOffset int32 `json:"timeZoneOffset"` // The user agent value of the shopper's browser. UserAgent string `json:"userAgent"` }
BrowserInfo struct for BrowserInfo
type Card ¶
type Card struct { // The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid) (1-20 characters). Depending on the card brand, it is known also as: * CVV2/CVC2 – length: 3 digits * CID – length: 4 digits > If you are using [Client-Side Encryption](https://docs.adyen.com/classic-integration/cse-integration-ecommerce), the CVC code is present in the encrypted data. You must never post the card details to the server. > This field must be always present in a [one-click payment request](https://docs.adyen.com/classic-integration/recurring-payments). > When this value is returned in a response, it is always empty because it is not stored. Cvc string `json:"cvc,omitempty"` // The card expiry month. Format: 2 digits, zero-padded for single digits. For example: * 03 = March * 11 = November ExpiryMonth string `json:"expiryMonth"` // The card expiry year. Format: 4 digits. For example: 2020 ExpiryYear string `json:"expiryYear"` // The name of the cardholder, as printed on the card. HolderName string `json:"holderName"` // The issue number of the card (for some UK debit cards only). IssueNumber string `json:"issueNumber,omitempty"` // The card number (4-19 characters). Do not use any separators. When this value is returned in a response, only the last 4 digits of the card number are returned. Number string `json:"number"` // The month component of the start date (for some UK debit cards only). StartMonth string `json:"startMonth,omitempty"` // The year component of the start date (for some UK debit cards only). StartYear string `json:"startYear,omitempty"` }
Card struct for Card
type CardBrandDetails ¶
type CardBrandDetails struct { // Indicates if you support the card brand. Supported bool `json:"supported,omitempty"` // The name of the card brand. Type string `json:"type,omitempty"` }
CardBrandDetails struct for CardBrandDetails
type CardDetails ¶
type CardDetails struct { // Secondary brand of the card. For example: **plastix**, **hmclub**. Brand string `json:"brand,omitempty"` CupsecureplusSmscode string `json:"cupsecureplus.smscode,omitempty"` // The card verification code. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). Cvc string `json:"cvc,omitempty"` // The encrypted card number. EncryptedCardNumber string `json:"encryptedCardNumber"` // The encrypted card expiry month. EncryptedExpiryMonth string `json:"encryptedExpiryMonth"` // The encrypted card expiry year. EncryptedExpiryYear string `json:"encryptedExpiryYear"` // The encrypted card verification code. EncryptedSecurityCode string `json:"encryptedSecurityCode,omitempty"` // The card expiry month. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). ExpiryMonth string `json:"expiryMonth,omitempty"` // The card expiry year. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). ExpiryYear string `json:"expiryYear,omitempty"` // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // The name of the card holder. HolderName string `json:"holderName,omitempty"` // The network token reference. This is the [`networkTxReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_additionalData-ResponseAdditionalDataCommon-networkTxReference) from the response to the first payment. NetworkPaymentReference string `json:"networkPaymentReference,omitempty"` // The card number. Only collect raw card data if you are [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide). Number string `json:"number,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used only for recurring payments in India. ShopperNotificationReference string `json:"shopperNotificationReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // Version of the 3D Secure 2 mobile SDK. ThreeDS2SdkVersion string `json:"threeDS2SdkVersion,omitempty"` // Default payment method details. Common for scheme payment methods, and for simple payment method details. Type string `json:"type,omitempty"` }
CardDetails struct for CardDetails
type CardDetailsRequest ¶
type CardDetailsRequest struct { // A minimum of the first 8 digits of the card number and a maximum of the full card number. 11 digits gives the best result. You must be [fully PCI compliant](https://docs.adyen.com/development-resources/pci-dss-compliance-guide) to collect raw card data. CardNumber string `json:"cardNumber"` // The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE CountryCode string `json:"countryCode,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // The card brands you support. This is the [`brands`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods__resParam_paymentMethods-brands) array from your [`/paymentMethods`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/paymentMethods) response. If not included, our API uses the ones configured for your merchant account and, if provided, the country code. SupportedBrands []string `json:"supportedBrands,omitempty"` }
CardDetailsRequest struct for CardDetailsRequest
type CardDetailsResponse ¶
type CardDetailsResponse struct { // The list of brands identified for the card. Brands *[]CardBrandDetails `json:"brands,omitempty"` }
CardDetailsResponse struct for CardDetailsResponse
type CellulantDetails ¶
type CellulantDetails struct { // The Cellulant issuer. Issuer string `json:"issuer,omitempty"` // **Cellulant** Type string `json:"type,omitempty"` }
CellulantDetails struct for CellulantDetails
type Checkout ¶
Shared Checkout service
func (Checkout) Cancels ¶
func (a Checkout) Cancels(req *CreateStandalonePaymentCancelRequest, ctxs ..._context.Context) (StandalonePaymentCancelResource, *_nethttp.Response, error)
Cancels Cancel an authorised payment Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**TECHNICAL_CANCEL** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook). If you want to cancel a payment using the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), use the [`/payments/{paymentPspReference}/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) endpoint instead. If you want to cancel a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead. For more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).
- @param req CreateStandalonePaymentCancelRequest - reference of CreateStandalonePaymentCancelRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return StandalonePaymentCancelResource
func (Checkout) CardDetails ¶
func (a Checkout) CardDetails(req *CardDetailsRequest, ctxs ..._context.Context) (CardDetailsResponse, *_nethttp.Response, error)
CardDetails Get the list of brands on the card Send a request with at least the first 6 digits of the card number to get a response with an array of brands on the card. If you include [your supported brands](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__reqParam_supportedBrands) in the request, the response also tells you if you support each [brand that was identified](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cardDetails__resParam_details). If you have an API-only integration and collect card data, use this endpoint to find out if the shopper's card is co-branded. For co-branded cards, you must let the shopper choose the brand to pay with if you support both brands.
- @param req CardDetailsRequest - reference of CardDetailsRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return CardDetailsResponse
func (Checkout) Donations ¶
func (a Checkout) Donations(req *PaymentDonationRequest, ctxs ..._context.Context) (DonationResponse, *_nethttp.Response, error)
Donations Start a transaction for donations Takes in the donation token generated by the `/payments` request and uses it to make the donation for the donation account specified in the request. For more information, see [Donations](https://docs.adyen.com/online-payments/donations).
- @param req PaymentDonationRequest - reference of PaymentDonationRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return DonationResponse
func (Checkout) GetPaymentLink ¶
func (a Checkout) GetPaymentLink(linkId string, ctxs ..._context.Context) (PaymentLinkResponse, *_nethttp.Response, error)
GetPaymentLink Get a payment link Retrieves the payment link details using the payment link `id`.
- @param linkId Unique identifier of the payment link.
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentLinkResponse
func (Checkout) Orders ¶
func (a Checkout) Orders(req *CheckoutCreateOrderRequest, ctxs ..._context.Context) (CheckoutCreateOrderResponse, *_nethttp.Response, error)
Orders Create an order Creates an order to be used for partial payments. Make a POST `/orders` call before making a `/payments` call when processing payments with different payment methods.
- @param req CheckoutCreateOrderRequest - reference of CheckoutCreateOrderRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return CheckoutCreateOrderResponse
func (Checkout) OrdersCancel ¶
func (a Checkout) OrdersCancel(req *CheckoutCancelOrderRequest, ctxs ..._context.Context) (CheckoutCancelOrderResponse, *_nethttp.Response, error)
OrdersCancel Cancel an order Cancels an order. Cancellation of an order results in an automatic rollback of all payments made in the order, either by canceling or refunding the payment, depending on the type of payment method.
- @param req CheckoutCancelOrderRequest - reference of CheckoutCancelOrderRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return CheckoutCancelOrderResponse
func (Checkout) OriginKeys ¶
func (a Checkout) OriginKeys(req *CheckoutUtilityRequest, ctxs ..._context.Context) (CheckoutUtilityResponse, *_nethttp.Response, error)
OriginKeys Create originKey values for domains This operation takes the origin domains and returns a JSON object containing the corresponding origin keys for the domains. > If you're still using origin key for your Web Drop-in or Components integration, we recommend [switching to client key](https://docs.adyen.com/development-resources/client-side-authentication/migrate-from-origin-key-to-client-key). This allows you to use a single key for all origins, add or remove origins without generating a new key, and detect the card type from the number entered in your payment form.
- @param req CheckoutUtilityRequest - reference of CheckoutUtilityRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return CheckoutUtilityResponse
func (Checkout) PaymentLinks ¶
func (a Checkout) PaymentLinks(req *CreatePaymentLinkRequest, ctxs ..._context.Context) (PaymentLinkResponse, *_nethttp.Response, error)
PaymentLinks Create a payment link Creates a payment link to our hosted payment form where shoppers can pay. The list of payment methods presented to the shopper depends on the `currency` and `country` parameters sent in the request. For more information, refer to [Pay by Link documentation](https://docs.adyen.com/online-payments/pay-by-link#create-payment-links-through-api).
- @param req CreatePaymentLinkRequest - reference of CreatePaymentLinkRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentLinkResponse
func (Checkout) PaymentMethods ¶
func (a Checkout) PaymentMethods(req *PaymentMethodsRequest, ctxs ..._context.Context) (PaymentMethodsResponse, *_nethttp.Response, error)
PaymentMethods Get a list of available payment methods Queries the available payment methods for a transaction based on the transaction context (like amount, country, and currency). Besides giving back a list of the available payment methods, the response also returns which input details you need to collect from the shopper (to be submitted to `/payments`). Although we highly recommend using this endpoint to ensure you are always offering the most up-to-date list of payment methods, its usage is optional. You can, for example, also cache the `/paymentMethods` response and update it once a week.
- @param req PaymentMethodsRequest - reference of PaymentMethodsRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentMethodsResponse
func (Checkout) PaymentMethodsBalance ¶
func (a Checkout) PaymentMethodsBalance(req *CheckoutBalanceCheckRequest, ctxs ..._context.Context) (CheckoutBalanceCheckResponse, *_nethttp.Response, error)
PaymentMethodsBalance Get the balance of a gift card Retrieves the balance remaining on a shopper's gift card. To check a gift card's balance, make a POST `/paymentMethods/balance` call and include the gift card's details inside a `paymentMethod` object.
- @param req CheckoutBalanceCheckRequest - reference of CheckoutBalanceCheckRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return CheckoutBalanceCheckResponse
func (Checkout) PaymentSession ¶
func (a Checkout) PaymentSession(req *PaymentSetupRequest, ctxs ..._context.Context) (PaymentSetupResponse, *_nethttp.Response, error)
PaymentSession Create a payment session Provides the data object that can be used to start the Checkout SDK. To set up the payment, pass its amount, currency, and other required parameters. We use this to optimise the payment flow and perform better risk assessment of the transaction. For more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).
- @param req PaymentSetupRequest - reference of PaymentSetupRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentSetupResponse
func (Checkout) Payments ¶
func (a Checkout) Payments(req *PaymentRequest, ctxs ..._context.Context) (PaymentResponse, *_nethttp.Response, error)
Payments Start a transaction Sends payment parameters (like amount, country, and currency) together with other required input details collected from the shopper. To know more about required parameters for specific payment methods, refer to our [payment method guides](https://docs.adyen.com/payment-methods). The response depends on the [payment flow](https://docs.adyen.com/payment-methods#payment-flow): * For a direct flow, the response includes a `pspReference` and a `resultCode` with the payment result, for example **Authorised** or **Refused**. * For a redirect or additional action, the response contains an `action` object.
- @param req PaymentRequest - reference of PaymentRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentResponse
func (Checkout) PaymentsDetails ¶
func (a Checkout) PaymentsDetails(req *DetailsRequest, ctxs ..._context.Context) (PaymentDetailsResponse, *_nethttp.Response, error)
PaymentsDetails Submit details for a payment Submits details for a payment created using `/payments`. This step is only needed when no final state has been reached on the `/payments` request, for example when the shopper was redirected to another page to complete the payment.
- @param req DetailsRequest - reference of DetailsRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentDetailsResponse
func (Checkout) PaymentsPaymentPspReferenceAmountUpdates ¶
func (a Checkout) PaymentsPaymentPspReferenceAmountUpdates(paymentPspReference string, req *CreatePaymentAmountUpdateRequest, ctxs ..._context.Context) (PaymentAmountUpdateResource, *_nethttp.Response, error)
PaymentsPaymentPspReferenceAmountUpdates Update an authorised amount Increases or decreases the authorised payment amount and returns a unique reference for this request. You get the outcome of the request asynchronously, in an [**AUTHORISATION_ADJUSTMENT** webhook](https://docs.adyen.com/development-resources/webhooks/understand-notifications#event-codes). You can only update authorised amounts that have not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures). The amount you specify in the request is the updated amount, which is larger or smaller than the initial authorised amount. For more information, refer to [Authorisation adjustment](https://docs.adyen.com/online-payments/adjust-authorisation#use-cases).
- @param paymentPspReference The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment.
- @param req CreatePaymentAmountUpdateRequest - reference of CreatePaymentAmountUpdateRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentAmountUpdateResource
func (Checkout) PaymentsPaymentPspReferenceCancels ¶
func (a Checkout) PaymentsPaymentPspReferenceCancels(paymentPspReference string, req *CreatePaymentCancelRequest, ctxs ..._context.Context) (PaymentCancelResource, *_nethttp.Response, error)
PaymentsPaymentPspReferenceCancels Cancel an authorised payment Cancels the authorisation on a payment that has not yet been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/paymentPspReference/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CANCELLATION** webhook](https://docs.adyen.com/online-payments/cancel#cancellation-webhook). If you want to cancel a payment but don't have the [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference), use the [`/cancels`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/cancels) endpoint instead. If you want to cancel a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead. For more information, refer to [Cancel](https://docs.adyen.com/online-payments/cancel).
- @param paymentPspReference The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to cancel.
- @param req CreatePaymentCancelRequest - reference of CreatePaymentCancelRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentCancelResource
func (Checkout) PaymentsPaymentPspReferenceCaptures ¶
func (a Checkout) PaymentsPaymentPspReferenceCaptures(paymentPspReference string, req *CreatePaymentCaptureRequest, ctxs ..._context.Context) (PaymentCaptureResource, *_nethttp.Response, error)
PaymentsPaymentPspReferenceCaptures Capture an authorised payment
Captures an authorised payment and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CAPTURE** webhook](https://docs.adyen.com/online-payments/capture#capture-notification). You can capture either the full authorised amount or a part of the authorised amount. By default, any unclaimed amount after a partial capture gets cancelled. This does not apply if you enabled multiple partial captures on your account and the payment method supports multiple partial captures. [Automatic capture](https://docs.adyen.com/online-payments/capture#automatic-capture) is the default setting for most payment methods. In these cases, you don't need to make capture requests. However, making capture requests for payments that are captured automatically does not result in double charges. For more information, refer to [Capture](https://docs.adyen.com/online-payments/capture). * @param paymentPspReference The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to capture. * @param req CreatePaymentCaptureRequest - reference of CreatePaymentCaptureRequest). * @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentCaptureResource
func (Checkout) PaymentsPaymentPspReferenceRefunds ¶
func (a Checkout) PaymentsPaymentPspReferenceRefunds(paymentPspReference string, req *CreatePaymentRefundRequest, ctxs ..._context.Context) (PaymentRefundResource, *_nethttp.Response, error)
PaymentsPaymentPspReferenceRefunds Refund a captured payment Refunds a payment that has been [captured](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/captures), and returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**REFUND** webhook](https://docs.adyen.com/online-payments/refund#refund-webhook). You can refund either the full captured amount or a part of the captured amount. You can also perform multiple partial refunds, as long as their sum doesn't exceed the captured amount. > Some payment methods do not support partial refunds. To learn if a payment method supports partial refunds, refer to the payment method page such as [cards](https://docs.adyen.com/payment-methods/cards#supported-cards), [iDEAL](https://docs.adyen.com/payment-methods/ideal), or [Klarna](https://docs.adyen.com/payment-methods/klarna). If you want to refund a payment but are not sure whether it has been captured, use the [`/payments/{paymentPspReference}/reversals`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/reversals) endpoint instead. For more information, refer to [Refund](https://docs.adyen.com/online-payments/refund).
- @param paymentPspReference The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to refund.
- @param req CreatePaymentRefundRequest - reference of CreatePaymentRefundRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentRefundResource
func (Checkout) PaymentsPaymentPspReferenceReversals ¶
func (a Checkout) PaymentsPaymentPspReferenceReversals(paymentPspReference string, req *CreatePaymentReversalRequest, ctxs ..._context.Context) (PaymentReversalResource, *_nethttp.Response, error)
PaymentsPaymentPspReferenceReversals Refund or cancel a payment [Refunds](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/refunds) a payment if it has already been captured, and [cancels](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments/{paymentPspReference}/cancels) a payment if it has not yet been captured. Returns a unique reference for this request. You get the outcome of the request asynchronously, in a [**CANCEL_OR_REFUND** webhook](https://docs.adyen.com/online-payments/reverse#cancel-or-refund-webhook). The reversed amount is always the full payment amount. > Do not use this request for payments that involve multiple partial captures. For more information, refer to [Reversal](https://docs.adyen.com/online-payments/reversal).
- @param paymentPspReference The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment that you want to reverse.
- @param req CreatePaymentReversalRequest - reference of CreatePaymentReversalRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentReversalResource
func (Checkout) PaymentsResult ¶
func (a Checkout) PaymentsResult(req *PaymentVerificationRequest, ctxs ..._context.Context) (PaymentVerificationResponse, *_nethttp.Response, error)
PaymentsResult Verify a payment result Verifies the payment result using the payload returned from the Checkout SDK. For more information, refer to [How it works](https://docs.adyen.com/online-payments#howitworks).
- @param req PaymentVerificationRequest - reference of PaymentVerificationRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentVerificationResponse
func (Checkout) Sessions ¶
func (a Checkout) Sessions(req *CreateCheckoutSessionRequest, ctxs ..._context.Context) (CreateCheckoutSessionResponse, *_nethttp.Response, error)
Sessions Create a payment session Creates a payment session for [Web Drop-in](https://docs.adyen.com/online-payments/web-drop-in) and [Web Components](https://docs.adyen.com/online-payments/web-components) integrations. The response contains encrypted payment session data. The front end then uses the session data to make any required server-side calls for the payment flow. You get the payment outcome asynchronously, in an [AUTHORISATION](https://docs.adyen.com/api-explorer/#/Webhooks/latest/post/AUTHORISATION) webhook.
- @param req CreateCheckoutSessionRequest - reference of CreateCheckoutSessionRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return CreateCheckoutSessionResponse
func (Checkout) UpdatePaymentLink ¶
func (a Checkout) UpdatePaymentLink(linkId string, req *UpdatePaymentLinkRequest, ctxs ..._context.Context) (PaymentLinkResponse, *_nethttp.Response, error)
UpdatePaymentLink Update the status of a payment link Updates the status of a payment link. Use this endpoint to [force the expiry of a payment link](https://docs.adyen.com/online-payments/pay-by-link#update-payment-link-status).
- @param linkId Unique identifier of the payment link.
- @param req UpdatePaymentLinkRequest - reference of UpdatePaymentLinkRequest).
- @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return PaymentLinkResponse
type CheckoutAwaitAction ¶
type CheckoutAwaitAction struct { // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // **await** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutAwaitAction struct for CheckoutAwaitAction
type CheckoutBalanceCheckRequest ¶
type CheckoutBalanceCheckRequest struct { AccountInfo *AccountInfo `json:"accountInfo,omitempty"` AdditionalAmount *Amount `json:"additionalAmount,omitempty"` // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` BrowserInfo *BrowserInfo `json:"browserInfo,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` DccQuote *ForexQuote `json:"dccQuote,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00 DeliveryDate *time.Time `json:"deliveryDate,omitempty"` // A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). DeviceFingerprint string `json:"deviceFingerprint,omitempty"` // An integer value that is added to the normal fraud score. The value can be either positive or negative. FraudOffset int32 `json:"fraudOffset,omitempty"` Installments *Installments `json:"installments,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` MerchantRiskIndicator *MerchantRiskIndicator `json:"merchantRiskIndicator,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value. Metadata map[string]string `json:"metadata,omitempty"` // When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. OrderReference string `json:"orderReference,omitempty"` // The collection that contains the type of the payment method and its specific information. PaymentMethod map[string]interface{} `json:"paymentMethod"` Recurring *Recurring `json:"recurring,omitempty"` // Defines a recurring payment type. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters. Reference string `json:"reference"` // Some payment methods require defining a value for this field to specify how to process the transaction. For the Bancontact payment method, it can be set to: * `maestro` (default), to be processed like a Maestro card, or * `bcmc`, to be processed like a Bancontact card. SelectedBrand string `json:"selectedBrand,omitempty"` // The `recurringDetailReference` you want to use for this payment. The value `LATEST` can be used to select the most recently stored recurring detail. SelectedRecurringDetailReference string `json:"selectedRecurringDetailReference,omitempty"` // A session ID used to identify a payment session. SessionId string `json:"sessionId,omitempty"` // The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new). ShopperIP string `json:"shopperIP,omitempty"` // Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal. ShopperInteraction string `json:"shopperInteraction,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). Splits *[]Split `json:"splits,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms. Store string `json:"store,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` ThreeDS2RequestData *ThreeDS2RequestData `json:"threeDS2RequestData,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` // The reference value to aggregate sales totals in reporting. When not specified, the store field is used (if available). TotalsGroup string `json:"totalsGroup,omitempty"` // Set to true if the payment should be routed to a trusted MID. TrustedShopper bool `json:"trustedShopper,omitempty"` }
CheckoutBalanceCheckRequest struct for CheckoutBalanceCheckRequest
type CheckoutBalanceCheckResponse ¶
type CheckoutBalanceCheckResponse struct { // Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**. AdditionalData map[string]string `json:"additionalData,omitempty"` Balance Amount `json:"balance"` FraudResult *FraudResult `json:"fraudResult,omitempty"` // Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. PspReference string `json:"pspReference,omitempty"` // If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReason string `json:"refusalReason,omitempty"` // The result of the cancellation request. Possible values: * **Success** – Indicates that the balance check was successful. * **NotEnoughBalance** – Commonly indicates that the card did not have enough balance to pay the amount in the request, or that the currency of the balance on the card did not match the currency of the requested amount. * **Failed** – Indicates that the balance check failed. ResultCode string `json:"resultCode"` TransactionLimit *Amount `json:"transactionLimit,omitempty"` }
CheckoutBalanceCheckResponse struct for CheckoutBalanceCheckResponse
type CheckoutBankTransferAction ¶
type CheckoutBankTransferAction struct { // The name of the account holder. Beneficiary string `json:"beneficiary,omitempty"` // The BIC of the IBAN. Bic string `json:"bic,omitempty"` // The url to download payment details with. DownloadUrl string `json:"downloadUrl,omitempty"` // The IBAN of the bank transfer. Iban string `json:"iban,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // The transfer reference. Reference string `json:"reference,omitempty"` // The e-mail of the shopper, included if an e-mail was sent to the shopper. ShopperEmail string `json:"shopperEmail,omitempty"` TotalAmount *Amount `json:"totalAmount,omitempty"` // The type of the action. Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutBankTransferAction struct for CheckoutBankTransferAction
type CheckoutCancelOrderRequest ¶
type CheckoutCancelOrderRequest struct { // The merchant account identifier that orderData belongs to. MerchantAccount string `json:"merchantAccount"` Order CheckoutOrder `json:"order"` }
CheckoutCancelOrderRequest struct for CheckoutCancelOrderRequest
type CheckoutCancelOrderResponse ¶
type CheckoutCancelOrderResponse struct { // A unique reference of the cancellation request. PspReference string `json:"pspReference"` // The result of the cancellation request. Possible values: * **Received** – Indicates the cancellation has successfully been received by Adyen, and will be processed. ResultCode string `json:"resultCode"` }
CheckoutCancelOrderResponse struct for CheckoutCancelOrderResponse
type CheckoutCreateOrderRequest ¶
type CheckoutCreateOrderRequest struct { Amount Amount `json:"amount"` // The date that order expires; e.g. 2019-03-23T12:25:28Z. If not provided, the default expiry duration is 1 day. ExpiresAt string `json:"expiresAt,omitempty"` // The merchant account identifier, with which you want to process the order. MerchantAccount string `json:"merchantAccount"` // A custom reference identifying the order. Reference string `json:"reference"` }
CheckoutCreateOrderRequest struct for CheckoutCreateOrderRequest
type CheckoutCreateOrderResponse ¶
type CheckoutCreateOrderResponse struct { // Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**. AdditionalData map[string]string `json:"additionalData,omitempty"` Amount Amount `json:"amount"` // The date that the order will expire. ExpiresAt string `json:"expiresAt"` FraudResult *FraudResult `json:"fraudResult,omitempty"` // The encrypted data that will be used by merchant for adding payments to the order. OrderData string `json:"orderData"` // Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. PspReference string `json:"pspReference,omitempty"` // The reference provided by merchant for creating the order. Reference string `json:"reference,omitempty"` // If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReason string `json:"refusalReason,omitempty"` RemainingAmount Amount `json:"remainingAmount"` // The result of the order creation request. The value is always **Success**. ResultCode string `json:"resultCode"` }
CheckoutCreateOrderResponse struct for CheckoutCreateOrderResponse
type CheckoutDonationAction ¶
type CheckoutDonationAction struct { // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // The type of the action. Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutDonationAction struct for CheckoutDonationAction
type CheckoutOneTimePasscodeAction ¶
type CheckoutOneTimePasscodeAction struct { // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` Redirect *Redirect `json:"redirect,omitempty"` // The interval in second between OTP resend. ResendInterval int32 `json:"resendInterval,omitempty"` // The maximum number of OTP resend attempts. ResendMaxAttempts int32 `json:"resendMaxAttempts,omitempty"` // The URL, to which you make POST request to trigger OTP resend. ResendUrl string `json:"resendUrl,omitempty"` // The type of the action. Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutOneTimePasscodeAction struct for CheckoutOneTimePasscodeAction
type CheckoutOrder ¶
type CheckoutOrder struct { // The encrypted order data. OrderData string `json:"orderData"` // The `pspReference` that belongs to the order. PspReference string `json:"pspReference"` }
CheckoutOrder struct for CheckoutOrder
type CheckoutOrderResponse ¶
type CheckoutOrderResponse struct { Amount *Amount `json:"amount,omitempty"` // The expiry date for the order. ExpiresAt string `json:"expiresAt,omitempty"` // The encrypted order data. OrderData string `json:"orderData,omitempty"` // The `pspReference` that belongs to the order. PspReference string `json:"pspReference"` // The merchant reference for the order. Reference string `json:"reference,omitempty"` RemainingAmount *Amount `json:"remainingAmount,omitempty"` }
CheckoutOrderResponse struct for CheckoutOrderResponse
type CheckoutPaymentsAction ¶
type CheckoutPaymentsAction struct { // The voucher alternative reference code. AlternativeReference string `json:"alternativeReference,omitempty"` // When the redirect URL must be accessed via POST, use this data to post to the redirect URL. Data *map[string]interface{} `json:"data,omitempty"` // The URL to download the voucher. DownloadUrl string `json:"downloadUrl,omitempty"` // An entity number of Multibanco. Entity string `json:"entity,omitempty"` // The date time of the voucher expiry. ExpiresAt string `json:"expiresAt,omitempty"` InitialAmount *Amount `json:"initialAmount,omitempty"` // The URL to the detailed instructions to make payment using the voucher. InstructionsUrl string `json:"instructionsUrl,omitempty"` // The issuer of the voucher. Issuer string `json:"issuer,omitempty"` // The shopper telephone number (partially masked). MaskedTelephoneNumber string `json:"maskedTelephoneNumber,omitempty"` // The merchant name. MerchantName string `json:"merchantName,omitempty"` // The merchant reference. MerchantReference string `json:"merchantReference,omitempty"` // Specifies the HTTP method, for example GET or POST. Method string `json:"method,omitempty"` // When non-empty, contains a value that you must submit to the `/payments/details` endpoint. In some cases, required for polling. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // The contents of the QR code as a UTF8 string. QrCodeData string `json:"qrCodeData,omitempty"` // The voucher reference code. Reference string `json:"reference,omitempty"` // The shopper email. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper name. ShopperName string `json:"shopperName,omitempty"` Surcharge *Amount `json:"surcharge,omitempty"` // A token to pass to the 3DS2 Component to get the fingerprint/challenge. Token string `json:"token,omitempty"` TotalAmount *Amount `json:"totalAmount,omitempty"` // Enum that specifies the action that needs to be taken by the client. Type string `json:"type,omitempty"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` // SDK data for type "sdk" SDKData *SDKData `json:"sdkData,omitempty"` }
CheckoutPaymentsAction struct for CheckoutPaymentsAction
type CheckoutQrCodeAction ¶
type CheckoutQrCodeAction struct { // Expiry time of the QR code. ExpiresAt string `json:"expiresAt,omitempty"` // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // The contents of the QR code as a UTF8 string. QrCodeData string `json:"qrCodeData,omitempty"` // **qrCode** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutQrCodeAction struct for CheckoutQrCodeAction
type CheckoutRedirectAction ¶
type CheckoutRedirectAction struct { // When the redirect URL must be accessed via POST, use this data to post to the redirect URL. Data map[string]string `json:"data,omitempty"` // Specifies the HTTP method, for example GET or POST. Method string `json:"method,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // **redirect** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutRedirectAction struct for CheckoutRedirectAction
type CheckoutSDKAction ¶
type CheckoutSDKAction struct { // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // The data to pass to the SDK. SdkData map[string]string `json:"sdkData,omitempty"` // The type of the action. Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutSDKAction struct for CheckoutSDKAction
type CheckoutThreeDS2Action ¶
type CheckoutThreeDS2Action struct { // A token needed to authorise a payment. AuthorisationToken string `json:"authorisationToken,omitempty"` // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // A subtype of the token. Subtype string `json:"subtype,omitempty"` // A token to pass to the 3DS2 Component to get the fingerprint. Token string `json:"token,omitempty"` // **threeDS2** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutThreeDS2Action struct for CheckoutThreeDS2Action
type CheckoutThreeDS2ChallengeAction ¶
type CheckoutThreeDS2ChallengeAction struct { // A value that must be submitted to the `/payments/details` endpoint to verify this payment. In v67 and later, you will always get this value from the Component. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // A token to pass to the 3DS2 Component to get the challenge. Token string `json:"token,omitempty"` // **threeDS2Challenge** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutThreeDS2ChallengeAction struct for CheckoutThreeDS2ChallengeAction
type CheckoutThreeDS2FingerPrintAction ¶
type CheckoutThreeDS2FingerPrintAction struct { // A value that must be submitted to the `/payments/details` endpoint to verify this payment. In v67 and later, you will always get this value from the Component. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // A token to pass to the 3DS2 Component to get the fingerprint. Token string `json:"token,omitempty"` // **threeDS2Fingerprint** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutThreeDS2FingerPrintAction struct for CheckoutThreeDS2FingerPrintAction
type CheckoutUtilityRequest ¶
type CheckoutUtilityRequest struct { // The list of origin domains, for which origin keys are requested. OriginDomains []string `json:"originDomains"` }
CheckoutUtilityRequest struct for CheckoutUtilityRequest
type CheckoutUtilityResponse ¶
type CheckoutUtilityResponse struct { // The list of origin keys for all requested domains. For each list item, the key is the domain and the value is the origin key. OriginKeys map[string]string `json:"originKeys,omitempty"` }
CheckoutUtilityResponse struct for CheckoutUtilityResponse
type CheckoutVoucherAction ¶
type CheckoutVoucherAction struct { // The voucher alternative reference code. AlternativeReference string `json:"alternativeReference,omitempty"` // A collection institution number (store number) for Econtext Pay-Easy ATM. CollectionInstitutionNumber string `json:"collectionInstitutionNumber,omitempty"` // The URL to download the voucher. DownloadUrl string `json:"downloadUrl,omitempty"` // An entity number of Multibanco. Entity string `json:"entity,omitempty"` // The date time of the voucher expiry. ExpiresAt string `json:"expiresAt,omitempty"` InitialAmount *Amount `json:"initialAmount,omitempty"` // The URL to the detailed instructions to make payment using the voucher. InstructionsUrl string `json:"instructionsUrl,omitempty"` // The issuer of the voucher. Issuer string `json:"issuer,omitempty"` // The shopper telephone number (partially masked). MaskedTelephoneNumber string `json:"maskedTelephoneNumber,omitempty"` // The merchant name. MerchantName string `json:"merchantName,omitempty"` // The merchant reference. MerchantReference string `json:"merchantReference,omitempty"` // A value that must be submitted to the `/payments/details` endpoint to verify this payment. PaymentData string `json:"paymentData,omitempty"` // Specifies the payment method. PaymentMethodType string `json:"paymentMethodType,omitempty"` // The voucher reference code. Reference string `json:"reference,omitempty"` // The shopper email. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper name. ShopperName string `json:"shopperName,omitempty"` Surcharge *Amount `json:"surcharge,omitempty"` TotalAmount *Amount `json:"totalAmount,omitempty"` // **voucher** Type string `json:"type"` // Specifies the URL to redirect to. Url string `json:"url,omitempty"` }
CheckoutVoucherAction struct for CheckoutVoucherAction
type CommonField ¶
type CommonField struct { // Name of the field. For example, Name of External Platform. Name string `json:"name,omitempty"` // Version of the field. For example, Version of External Platform. Version string `json:"version,omitempty"` }
CommonField struct for CommonField
type Company ¶
type Company struct { // The company website's home page. Homepage string `json:"homepage,omitempty"` // The company name. Name string `json:"name,omitempty"` // Registration number of the company. RegistrationNumber string `json:"registrationNumber,omitempty"` // Registry location of the company. RegistryLocation string `json:"registryLocation,omitempty"` // Tax ID of the company. TaxId string `json:"taxId,omitempty"` // The company type. Type string `json:"type,omitempty"` }
Company struct for Company
type Configuration ¶
type Configuration struct { Avs *Avs `json:"avs,omitempty"` // Determines whether the cardholder name should be provided or not. Permitted values: * NONE * OPTIONAL * REQUIRED CardHolderName string `json:"cardHolderName,omitempty"` Installments *InstallmentsNumber `json:"installments,omitempty"` ShopperInput *ShopperInput `json:"shopperInput,omitempty"` }
Configuration struct for Configuration
type CreateCheckoutSessionRequest ¶
type CreateCheckoutSessionRequest struct { AccountInfo *AccountInfo `json:"accountInfo,omitempty"` AdditionalAmount *Amount `json:"additionalAmount,omitempty"` // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` // List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]` AllowedPaymentMethods []string `json:"allowedPaymentMethods,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` AuthenticationData *AuthenticationData `json:"authenticationData,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` // List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]` BlockedPaymentMethods []string `json:"blockedPaymentMethods,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * **iOS** * **Android** * **Web** Channel string `json:"channel,omitempty"` Company *Company `json:"company,omitempty"` // The shopper's two-letter country code. CountryCode string `json:"countryCode,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` // The date and time when the purchased goods should be delivered. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**. DeliverAt *time.Time `json:"deliverAt,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. EnableOneClick bool `json:"enableOneClick,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for payouts. EnablePayOut bool `json:"enablePayOut,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. EnableRecurring bool `json:"enableRecurring,omitempty"` // The date the session expires in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. When not specified, the expiry date is set to 1 hour after session creation. You cannot set the session expiry to more than 24 hours after session creation. ExpiresAt *time.Time `json:"expiresAt,omitempty"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, and Zip. LineItems *[]LineItem `json:"lineItems,omitempty"` Mandate *Mandate `json:"mandate,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. * Maximum 20 characters per key. * Maximum 80 characters per value. Metadata map[string]string `json:"metadata,omitempty"` MpiData *ThreeDSecureData `json:"mpiData,omitempty"` // Date after which no further authorisations shall be performed. Only for 3D Secure 2. RecurringExpiry string `json:"recurringExpiry,omitempty"` // Minimum number of days between authorisations. Only for 3D Secure 2. RecurringFrequency string `json:"recurringFrequency,omitempty"` // Defines a recurring payment type. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // Specifies the redirect method (GET or POST) when redirecting back from the issuer. RedirectFromIssuerMethod string `json:"redirectFromIssuerMethod,omitempty"` // Specifies the redirect method (GET or POST) when redirecting to the issuer. RedirectToIssuerMethod string `json:"redirectToIssuerMethod,omitempty"` // The reference to uniquely identify a payment. Reference string `json:"reference"` // The URL to return to when a redirect payment is completed. ReturnUrl string `json:"returnUrl"` RiskData *RiskData `json:"riskData,omitempty"` // The shopper's email address. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new). ShopperIP string `json:"shopperIP,omitempty"` // Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal. ShopperInteraction string `json:"shopperInteraction,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // Boolean value indicating whether the card payment method should be split into separate debit and credit options. SplitCardFundingSources bool `json:"splitCardFundingSources,omitempty"` // An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). Splits *[]Split `json:"splits,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Store string `json:"store,omitempty"` // When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. StorePaymentMethod bool `json:"storePaymentMethod,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` // Set to true if the payment should be routed to a trusted MID. TrustedShopper bool `json:"trustedShopper,omitempty"` }
CreateCheckoutSessionRequest struct for CreateCheckoutSessionRequest
type CreateCheckoutSessionResponse ¶
type CreateCheckoutSessionResponse struct { AccountInfo *AccountInfo `json:"accountInfo,omitempty"` AdditionalAmount *Amount `json:"additionalAmount,omitempty"` // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` // List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]` AllowedPaymentMethods []string `json:"allowedPaymentMethods,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` AuthenticationData *AuthenticationData `json:"authenticationData,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` // List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]` BlockedPaymentMethods []string `json:"blockedPaymentMethods,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * **iOS** * **Android** * **Web** Channel string `json:"channel,omitempty"` Company *Company `json:"company,omitempty"` // The shopper's two-letter country code. CountryCode string `json:"countryCode,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` // The date and time when the purchased goods should be delivered. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**. DeliverAt *time.Time `json:"deliverAt,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. EnableOneClick bool `json:"enableOneClick,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for payouts. EnablePayOut bool `json:"enablePayOut,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. EnableRecurring bool `json:"enableRecurring,omitempty"` // The date the session expires in [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. When not specified, the expiry date is set to 1 hour after session creation. You cannot set the session expiry to more than 24 hours after session creation. ExpiresAt time.Time `json:"expiresAt"` // A unique identifier of the session. Id string `json:"id"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, and Zip. LineItems *[]LineItem `json:"lineItems,omitempty"` Mandate *Mandate `json:"mandate,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. * Maximum 20 characters per key. * Maximum 80 characters per value. Metadata map[string]string `json:"metadata,omitempty"` MpiData *ThreeDSecureData `json:"mpiData,omitempty"` // Date after which no further authorisations shall be performed. Only for 3D Secure 2. RecurringExpiry string `json:"recurringExpiry,omitempty"` // Minimum number of days between authorisations. Only for 3D Secure 2. RecurringFrequency string `json:"recurringFrequency,omitempty"` // Defines a recurring payment type. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // Specifies the redirect method (GET or POST) when redirecting back from the issuer. RedirectFromIssuerMethod string `json:"redirectFromIssuerMethod,omitempty"` // Specifies the redirect method (GET or POST) when redirecting to the issuer. RedirectToIssuerMethod string `json:"redirectToIssuerMethod,omitempty"` // The reference to uniquely identify a payment. Reference string `json:"reference"` // The URL to return to when a redirect payment is completed. ReturnUrl string `json:"returnUrl"` RiskData *RiskData `json:"riskData,omitempty"` // The payment session data you need to pass to your front end. SessionData string `json:"sessionData,omitempty"` // The shopper's email address. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new). ShopperIP string `json:"shopperIP,omitempty"` // Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal. ShopperInteraction string `json:"shopperInteraction,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // Boolean value indicating whether the card payment method should be split into separate debit and credit options. SplitCardFundingSources bool `json:"splitCardFundingSources,omitempty"` // An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). Splits *[]Split `json:"splits,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Store string `json:"store,omitempty"` // When this is set to **true** and the `shopperReference` is provided, the payment details will be stored. StorePaymentMethod bool `json:"storePaymentMethod,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` // Set to true if the payment should be routed to a trusted MID. TrustedShopper bool `json:"trustedShopper,omitempty"` }
CreateCheckoutSessionResponse struct for CreateCheckoutSessionResponse
type CreatePaymentAmountUpdateRequest ¶
type CreatePaymentAmountUpdateRequest struct { Amount Amount `json:"amount"` // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The reason for the amount update. Possible values: * **delayedCharge** * **noShow** Reason string `json:"reason,omitempty"` // Your reference for the amount update request. Maximum length: 80 characters. Reference string `json:"reference,omitempty"` // An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` }
CreatePaymentAmountUpdateRequest struct for CreatePaymentAmountUpdateRequest
type CreatePaymentCancelRequest ¶
type CreatePaymentCancelRequest struct { // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // Your reference for the cancel request. Maximum length: 80 characters. Reference string `json:"reference,omitempty"` }
CreatePaymentCancelRequest struct for CreatePaymentCancelRequest
type CreatePaymentCaptureRequest ¶
type CreatePaymentCaptureRequest struct { Amount Amount `json:"amount"` // Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). > This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // Your reference for the capture request. Maximum length: 80 characters. Reference string `json:"reference,omitempty"` // An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` }
CreatePaymentCaptureRequest struct for CreatePaymentCaptureRequest
type CreatePaymentLinkRequest ¶
type CreatePaymentLinkRequest struct { // List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]` AllowedPaymentMethods []string `json:"allowedPaymentMethods,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` // List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]` BlockedPaymentMethods []string `json:"blockedPaymentMethods,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The shopper's two-letter country code. CountryCode string `json:"countryCode,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` // The date and time when the purchased goods should be delivered. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**. DeliverAt *time.Time `json:"deliverAt,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // A short description visible on the payment page. Maximum length: 280 characters. Description string `json:"description,omitempty"` // The date when the payment link expires. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**. The maximum expiry date is 70 days after the payment link is created. If not provided, the payment link expires 24 hours after it was created. ExpiresAt string `json:"expiresAt,omitempty"` // A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options. InstallmentOptions *map[string]InstallmentOption `json:"installmentOptions,omitempty"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. This parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip. LineItems *[]LineItem `json:"lineItems,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier for which the payment link is created. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limitations: * Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\" * Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\" * A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID. Metadata map[string]string `json:"metadata,omitempty"` // Defines a recurring payment type. Possible values: * **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule. * **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // A reference that is used to uniquely identify the payment in future communications about the payment status. Reference string `json:"reference"` // List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information). Possible values: * **billingAddress** – The address where to send the invoice. * **deliveryAddress** – The address where the purchased goods should be delivered. * **shopperEmail** – The shopper's email address. * **shopperName** – The shopper's full name. * **telephoneNumber** – The shopper's phone number. RequiredShopperFields []string `json:"requiredShopperFields,omitempty"` // Website URL used for redirection after payment is completed. If provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL. ReturnUrl string `json:"returnUrl,omitempty"` // Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only. Reusable bool `json:"reusable,omitempty"` RiskData *RiskData `json:"riskData,omitempty"` // The shopper's email address. ShopperEmail string `json:"shopperEmail,omitempty"` // The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`. For a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/online-payments/pay-by-link#language-and-localization). ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // Boolean value indicating whether the card payment method should be split into separate debit and credit options. SplitCardFundingSources bool `json:"splitCardFundingSources,omitempty"` // An array of objects specifying how the payment should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` // The physical store, for which this payment is processed. Store string `json:"store,omitempty"` // Indicates if the details of the payment method will be stored for the shopper. Possible values: * **disabled** – No details will be stored (default). * **askForConsent** – If the `shopperReference` is provided, the UI lets the shopper choose if they want their payment details to be stored. * **enabled** – If the `shopperReference` is provided, the details will be stored without asking the shopper for consent. StorePaymentMethodMode string `json:"storePaymentMethodMode,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` // A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area. ThemeId string `json:"themeId,omitempty"` }
CreatePaymentLinkRequest struct for CreatePaymentLinkRequest
type CreatePaymentLinkResponse ¶
type CreatePaymentLinkResponse struct { Amount *Amount `json:"amount,omitempty"` // The date that the Pay By Link expires; e.g. 2019-03-23T12:25:28Z. ExpiresAt string `json:"expiresAt"` // The reference that was specified when the Pay By Link URL was created. Reference string `json:"reference"` // The URL at which the shopper can complete the payment. Url string `json:"url"` }
CreatePaymentLinkResponse struct for CreatePaymentLinkResponse
type CreatePaymentRefundRequest ¶
type CreatePaymentRefundRequest struct { Amount Amount `json:"amount"` // Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // Your reference for the refund request. Maximum length: 80 characters. Reference string `json:"reference,omitempty"` // An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` }
CreatePaymentRefundRequest struct for CreatePaymentRefundRequest
type CreatePaymentReversalRequest ¶
type CreatePaymentReversalRequest struct { // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // Your reference for the reversal request. Maximum length: 80 characters. Reference string `json:"reference,omitempty"` }
CreatePaymentReversalRequest struct for CreatePaymentReversalRequest
type CreateStandalonePaymentCancelRequest ¶
type CreateStandalonePaymentCancelRequest struct { // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) of the payment that you want to cancel. PaymentReference string `json:"paymentReference"` // Your reference for the cancel request. Maximum length: 80 characters. Reference string `json:"reference,omitempty"` }
CreateStandalonePaymentCancelRequest struct for CreateStandalonePaymentCancelRequest
type DetailsRequest ¶
type DetailsRequest struct { Details PaymentCompletionDetails `json:"details"` // The `paymentData` value from the `/payments` response. Required if the `/payments` response returns this value. PaymentData string `json:"paymentData,omitempty"` // Change the `authenticationOnly` indicator originally set in the `/payments` request. Only needs to be set if you want to modify the value set previously. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` }
DetailsRequest struct for DetailsRequest
type DeviceRenderOptions ¶
type DeviceRenderOptions struct { // Supported SDK interface types. Allowed values: * native * html * both SdkInterface string `json:"sdkInterface,omitempty"` // UI types supported for displaying specific challenges. Allowed values: * text * singleSelect * outOfBand * otherHtml * multiSelect SdkUiType []string `json:"sdkUiType,omitempty"` }
DeviceRenderOptions struct for DeviceRenderOptions
type DokuDetails ¶
type DokuDetails struct { // The shopper's first name. FirstName string `json:"firstName"` // The shopper's last name. LastName string `json:"lastName"` // The shopper's email. ShopperEmail string `json:"shopperEmail"` // **doku** Type string `json:"type"` }
DokuDetails struct for DokuDetails
type DonationResponse ¶
type DonationResponse struct { Amount *Amount `json:"amount,omitempty"` // The Adyen account name of your charity. We will provide you with this account name once your chosen charity has been [onboarded](https://docs.adyen.com/online-payments/donations#onboarding). DonationAccount string `json:"donationAccount,omitempty"` // Your unique resource identifier. Id string `json:"id,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount,omitempty"` Payment *PaymentResponse `json:"payment,omitempty"` // The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters. Reference string `json:"reference,omitempty"` // The status of the donation transaction. Possible values: * **completed** * **pending** * **refused** Status string `json:"status,omitempty"` }
DonationResponse struct for DonationResponse
type DotpayDetails ¶
type DotpayDetails struct { // The Dotpay issuer value of the shopper's selected bank. Set this to an **id** of a Dotpay issuer to preselect it. Issuer string `json:"issuer"` // **dotpay** Type string `json:"type,omitempty"` }
DotpayDetails struct for DotpayDetails
type DragonpayDetails ¶
type DragonpayDetails struct { // The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it. Issuer string `json:"issuer"` // The shopper’s email address. ShopperEmail string `json:"shopperEmail,omitempty"` // **dragonpay** Type string `json:"type"` }
DragonpayDetails struct for DragonpayDetails
type EcontextVoucherDetails ¶
type EcontextVoucherDetails struct { // The shopper's first name. FirstName string `json:"firstName"` // The shopper's last name. LastName string `json:"lastName"` // The shopper's email. ShopperEmail string `json:"shopperEmail"` // The shopper's contact number. It must have an international number format, for example **+31 20 779 1846**. Formats like **+31 (0)20 779 1846** or **0031 20 779 1846** are not accepted. TelephoneNumber string `json:"telephoneNumber"` // **econtextvoucher** Type string `json:"type"` }
EcontextVoucherDetails struct for EcontextVoucherDetails
type EntercashDetails ¶
type EntercashDetails struct { // The issuer id of the shopper's selected bank. Issuer string `json:"issuer"` // **entercash** Type string `json:"type"` }
EntercashDetails struct for EntercashDetails
type ExternalPlatform ¶
type ExternalPlatform struct { // External platform integrator. Integrator string `json:"integrator,omitempty"` // Name of the field. For example, Name of External Platform. Name string `json:"name,omitempty"` // Version of the field. For example, Version of External Platform. Version string `json:"version,omitempty"` }
ExternalPlatform struct for ExternalPlatform
type ForexQuote ¶
type ForexQuote struct { // The account name. Account string `json:"account,omitempty"` // The account type. AccountType string `json:"accountType,omitempty"` BaseAmount *Amount `json:"baseAmount,omitempty"` // The base points. BasePoints int32 `json:"basePoints"` Buy *Amount `json:"buy,omitempty"` Interbank *Amount `json:"interbank,omitempty"` // The reference assigned to the forex quote request. Reference string `json:"reference,omitempty"` Sell *Amount `json:"sell,omitempty"` // The signature to validate the integrity. Signature string `json:"signature,omitempty"` // The source of the forex quote. Source string `json:"source,omitempty"` // The type of forex. Type string `json:"type,omitempty"` // The date until which the forex quote is valid. ValidTill time.Time `json:"validTill"` }
ForexQuote struct for ForexQuote
type FraudCheckResult ¶
type FraudCheckResult struct { // The fraud score generated by the risk check. AccountScore int32 `json:"accountScore"` // The ID of the risk check. CheckId int32 `json:"checkId"` // The name of the risk check. Name string `json:"name"` }
FraudCheckResult struct for FraudCheckResult
type FraudResult ¶
type FraudResult struct { // The total fraud score generated by the risk checks. AccountScore int32 `json:"accountScore"` // The result of the individual risk checks. Results *[]FraudCheckResult `json:"results,omitempty"` }
FraudResult struct for FraudResult
type GenericIssuerPaymentMethodDetails ¶
type GenericIssuerPaymentMethodDetails struct { // The issuer id of the shopper's selected bank. Issuer string `json:"issuer"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **genericissuer** Type string `json:"type"` }
GenericIssuerPaymentMethodDetails struct for GenericIssuerPaymentMethodDetails
type GiropayDetails ¶
type GiropayDetails struct { // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **giropay** Type string `json:"type,omitempty"` }
GiropayDetails struct for GiropayDetails
type GooglePayDetails ¶
type GooglePayDetails struct { // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response. GooglePayToken string `json:"googlePayToken"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **googlepay**, **paywithgoogle** Type string `json:"type,omitempty"` }
GooglePayDetails struct for GooglePayDetails
type IdealDetails ¶
type IdealDetails struct { // The iDEAL issuer value of the shopper's selected bank. Set this to an **id** of an iDEAL issuer to preselect it. Issuer string `json:"issuer"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **ideal** Type string `json:"type,omitempty"` }
IdealDetails struct for IdealDetails
type InputDetail ¶
type InputDetail struct { // Configuration parameters for the required input. Configuration map[string]string `json:"configuration,omitempty"` // Input details can also be provided recursively. Details *[]SubInputDetail `json:"details,omitempty"` // Input details can also be provided recursively (deprecated). InputDetails *[]SubInputDetail `json:"inputDetails,omitempty"` // In case of a select, the URL from which to query the items. ItemSearchUrl string `json:"itemSearchUrl,omitempty"` // In case of a select, the items to choose from. Items *[]Item `json:"items,omitempty"` // The value to provide in the result. Key string `json:"key,omitempty"` // True if this input value is optional. Optional bool `json:"optional,omitempty"` // The type of the required input. Type string `json:"type,omitempty"` // The value can be pre-filled, if available. Value string `json:"value,omitempty"` }
InputDetail struct for InputDetail
type InstallmentOption ¶
type InstallmentOption struct { // The maximum number of installments offered for this payment method. MaxValue int32 `json:"maxValue,omitempty"` // Defines the type of installment plan. If not set, defaults to **regular**. Possible values: * **regular** * **revolving** Plans []string `json:"plans,omitempty"` // Preselected number of installments offered for this payment method. PreselectedValue int32 `json:"preselectedValue,omitempty"` // An array of the number of installments that the shopper can choose from. For example, **[2,3,5]**. This cannot be specified simultaneously with `maxValue`. Values []int32 `json:"values,omitempty"` }
InstallmentOption struct for InstallmentOption
type Installments ¶
type Installments struct { // The installment plan, used for [card installments in Japan](https://docs.adyen.com/payment-methods/cards/credit-card-installments#make-a-payment-japan). By default, this is set to **regular**. Possible values: * **regular** * **revolving** Plan string `json:"plan,omitempty"` // Defines the number of installments. Its value needs to be greater than zero. Usually, the maximum allowed number of installments is capped. For example, it may not be possible to split a payment in more than 24 installments. The acquirer sets this upper limit, so its value may vary. Value int32 `json:"value"` }
Installments struct for Installments
type Installments2 ¶
type Installments2 struct { // Maximum number of installments MaxNumberOfInstallments int32 `json:"maxNumberOfInstallments"` }
Installments2 struct for Installments2
type InstallmentsNumber ¶
type InstallmentsNumber struct { // Maximum number of installments MaxNumberOfInstallments int32 `json:"maxNumberOfInstallments"` }
InstallmentsNumber struct for InstallmentsNumber
type Item ¶
type Item struct { // The value to provide in the result. Id string `json:"id,omitempty"` // The display name. Name string `json:"name,omitempty"` }
Item struct for Item
type KlarnaDetails ¶
type KlarnaDetails struct { // The address where to send the invoice. BillingAddress string `json:"billingAddress,omitempty"` // The address where the goods should be delivered. DeliveryAddress string `json:"deliveryAddress,omitempty"` // Shopper name, date of birth, phone number, and email address. PersonalDetails string `json:"personalDetails,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **klarna** Type string `json:"type"` }
KlarnaDetails struct for KlarnaDetails
type LianLianPayDetails ¶
type LianLianPayDetails struct { TelephoneNumber string `json:"telephoneNumber"` // **lianlianpay** Type string `json:"type"` }
LianLianPayDetails struct for LianLianPayDetails
type LineItem ¶
type LineItem struct { // Item amount excluding the tax, in minor units. AmountExcludingTax int64 `json:"amountExcludingTax,omitempty"` // Item amount including the tax, in minor units. AmountIncludingTax int64 `json:"amountIncludingTax,omitempty"` // Description of the line item. Description string `json:"description,omitempty"` // ID of the line item. Id string `json:"id,omitempty"` // Link to the picture of the purchased item. ImageUrl string `json:"imageUrl,omitempty"` // Item category, used by the RatePay payment method. ItemCategory string `json:"itemCategory,omitempty"` // Link to the purchased item. ProductUrl string `json:"productUrl,omitempty"` // Number of items. Quantity int64 `json:"quantity,omitempty"` // Tax amount, in minor units. TaxAmount int64 `json:"taxAmount,omitempty"` // Tax percentage, in minor units. TaxPercentage int64 `json:"taxPercentage,omitempty"` }
LineItem struct for LineItem
type Mandate ¶
type Mandate struct { // The billing amount (in minor units) of the recurring transactions. Amount string `json:"amount"` // The limitation rule of the billing amount. Possible values: * **max**: The transaction amount can not exceed the `amount`. * **exact**: The transaction amount should be the same as the `amount`. AmountRule string `json:"amountRule,omitempty"` // The rule to specify the period, within which the recurring debit can happen, relative to the mandate recurring date. Possible values: * **on**: On a specific date. * **before**: Before and on a specific date. * **after**: On and after a specific date. BillingAttemptsRule string `json:"billingAttemptsRule,omitempty"` // The number of the day, on which the recurring debit can happen. Should be within the same calendar month as the mandate recurring date. Possible values: 1-31 based on the `frequency`. BillingDay string `json:"billingDay,omitempty"` // End date of the billing plan, in YYYY-MM-DD format. EndsAt string `json:"endsAt"` // The frequency with which a shopper should be charged. Possible values: **daily**, **weekly**, **biWeekly**, **monthly**, **quarterly**, **halfYearly**, **yearly**. Frequency string `json:"frequency"` // The message shown by UPI to the shopper on the approval screen. Remarks string `json:"remarks,omitempty"` // Start date of the billing plan, in YYYY-MM-DD format. By default, the transaction date. StartsAt string `json:"startsAt,omitempty"` }
Mandate struct for Mandate
type MasterpassDetails ¶
type MasterpassDetails struct { // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // The Masterpass transaction ID. MasterpassTransactionId string `json:"masterpassTransactionId"` // **masterpass** Type string `json:"type,omitempty"` }
MasterpassDetails struct for MasterpassDetails
type MbwayDetails ¶
type MbwayDetails struct { ShopperEmail string `json:"shopperEmail"` TelephoneNumber string `json:"telephoneNumber"` // **mbway** Type string `json:"type,omitempty"` }
MbwayDetails struct for MbwayDetails
type MerchantDevice ¶
type MerchantDevice struct { // Operating system running on the merchant device. Os string `json:"os,omitempty"` // Version of the operating system on the merchant device. OsVersion string `json:"osVersion,omitempty"` // Merchant device reference. Reference string `json:"reference,omitempty"` }
MerchantDevice struct for MerchantDevice
type MerchantRiskIndicator ¶
type MerchantRiskIndicator struct { // Whether the chosen delivery address is identical to the billing address. AddressMatch bool `json:"addressMatch,omitempty"` // Indicator regarding the delivery address. Allowed values: * `shipToBillingAddress` * `shipToVerifiedAddress` * `shipToNewAddress` * `shipToStore` * `digitalGoods` * `goodsNotShipped` * `other` DeliveryAddressIndicator string `json:"deliveryAddressIndicator,omitempty"` // The delivery email address (for digital goods). DeliveryEmail string `json:"deliveryEmail,omitempty"` // For Electronic delivery, the email address to which the merchandise was delivered. Maximum length: 254 characters. DeliveryEmailAddress string `json:"deliveryEmailAddress,omitempty"` // The estimated delivery time for the shopper to receive the goods. Allowed values: * `electronicDelivery` * `sameDayShipping` * `overnightShipping` * `twoOrMoreDaysShipping` DeliveryTimeframe string `json:"deliveryTimeframe,omitempty"` GiftCardAmount *Amount `json:"giftCardAmount,omitempty"` // For prepaid or gift card purchase, total count of individual prepaid or gift cards/codes purchased. GiftCardCount int32 `json:"giftCardCount,omitempty"` // For prepaid or gift card purchase, [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) three-digit currency code of the gift card, other than those listed in Table A.5 of the EMVCo 3D Secure Protocol and Core Functions Specification. GiftCardCurr string `json:"giftCardCurr,omitempty"` // For pre-order purchases, the expected date this product will be available to the shopper. PreOrderDate *time.Time `json:"preOrderDate,omitempty"` // Indicator for whether this transaction is for pre-ordering a product. PreOrderPurchase bool `json:"preOrderPurchase,omitempty"` // Indicates whether Cardholder is placing an order for merchandise with a future availability or release date. PreOrderPurchaseInd string `json:"preOrderPurchaseInd,omitempty"` // Indicator for whether the shopper has already purchased the same items in the past. ReorderItems bool `json:"reorderItems,omitempty"` // Indicates whether the cardholder is reordering previously purchased merchandise. ReorderItemsInd string `json:"reorderItemsInd,omitempty"` // Indicates shipping method chosen for the transaction. ShipIndicator string `json:"shipIndicator,omitempty"` }
MerchantRiskIndicator struct for MerchantRiskIndicator
type MobilePayDetails ¶
type MobilePayDetails struct { // **mobilepay** Type string `json:"type,omitempty"` }
MobilePayDetails struct for MobilePayDetails
type MolPayDetails ¶
type MolPayDetails struct { // The shopper's bank. Specify this with the issuer value that corresponds to this bank. Issuer string `json:"issuer"` // **molpay** Type string `json:"type"` }
MolPayDetails struct for MolPayDetails
type Name ¶
type Name struct { // The first name. FirstName string `json:"firstName"` // The last name. LastName string `json:"lastName"` }
Name struct for Name
type OpenInvoiceDetails ¶
type OpenInvoiceDetails struct { // The address where to send the invoice. BillingAddress string `json:"billingAddress,omitempty"` // The address where the goods should be delivered. DeliveryAddress string `json:"deliveryAddress,omitempty"` // Shopper name, date of birth, phone number, and email address. PersonalDetails string `json:"personalDetails,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **openinvoice** Type string `json:"type,omitempty"` }
OpenInvoiceDetails struct for OpenInvoiceDetails
type PayPalDetails ¶
type PayPalDetails struct { // The unique ID associated with the order. OrderID string `json:"orderID,omitempty"` // The unique ID associated with the payer. PayerID string `json:"payerID,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // The type of flow to initiate. Subtype string `json:"subtype,omitempty"` // **paypal** Type string `json:"type"` }
PayPalDetails struct for PayPalDetails
type PayUUpiDetails ¶
type PayUUpiDetails struct { // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only. ShopperNotificationReference string `json:"shopperNotificationReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **payu_IN_upi** Type string `json:"type"` // The virtual payment address for UPI. VirtualPaymentAddress string `json:"virtualPaymentAddress,omitempty"` }
PayUUpiDetails struct for PayUUpiDetails
type PayWithGoogleDetails ¶
type PayWithGoogleDetails struct { // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // The `token` that you obtained from the [Google Pay API](https://developers.google.com/pay/api/web/reference/response-objects#PaymentData) `PaymentData` response. GooglePayToken string `json:"googlePayToken"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **paywithgoogle** Type string `json:"type,omitempty"` }
PayWithGoogleDetails struct for PayWithGoogleDetails
type PaymentAmountUpdateResource ¶
type PaymentAmountUpdateResource struct { Amount Amount `json:"amount"` // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to update. PaymentPspReference string `json:"paymentPspReference"` // Adyen's 16-character reference associated with the amount update request. PspReference string `json:"pspReference"` // The reason for the amount update. Possible values: * **DelayedCharge** * **NoShow** Reason string `json:"reason,omitempty"` // Your reference for the amount update request. Maximum length: 80 characters. Reference string `json:"reference"` // An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` // The status of your request. This will always have the value **received**. Status string `json:"status"` }
PaymentAmountUpdateResource struct for PaymentAmountUpdateResource
type PaymentCancelResource ¶
type PaymentCancelResource struct { // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to cancel. PaymentPspReference string `json:"paymentPspReference"` // Adyen's 16-character reference associated with the cancel request. PspReference string `json:"pspReference"` // Your reference for the cancel request. Reference string `json:"reference,omitempty"` // The status of your request. This will always have the value **received**. Status string `json:"status"` }
PaymentCancelResource struct for PaymentCancelResource
type PaymentCaptureResource ¶
type PaymentCaptureResource struct { Amount Amount `json:"amount"` // Price and product information of the captured items, required for [partial captures](https://docs.adyen.com/online-payments/capture#partial-capture). > This field is required for partial captures with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to capture. PaymentPspReference string `json:"paymentPspReference"` // Adyen's 16-character reference associated with the capture request. PspReference string `json:"pspReference"` // Your reference for the capture request. Reference string `json:"reference,omitempty"` // An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` // The status of your request. This will always have the value **received**. Status string `json:"status"` }
PaymentCaptureResource struct for PaymentCaptureResource
type PaymentCompletionDetails ¶
type PaymentCompletionDetails struct { // A payment session identifier returned by the card issuer. MD string `json:"MD,omitempty"` // (3D) Payment Authentication Request data for the card issuer. PaReq string `json:"PaReq,omitempty"` // (3D) Payment Authentication Response data by the card issuer. PaRes string `json:"PaRes,omitempty"` // PayPal-generated token for recurring payments. BillingToken string `json:"billingToken,omitempty"` // The SMS verification code collected from the shopper. CupsecureplusSmscode string `json:"cupsecureplus.smscode,omitempty"` // PayPal-generated third party access token. FacilitatorAccessToken string `json:"facilitatorAccessToken,omitempty"` // A random number sent to the mobile phone number of the shopper to verify the payment. OneTimePasscode string `json:"oneTimePasscode,omitempty"` // PayPal-assigned ID for the order. OrderID string `json:"orderID,omitempty"` // PayPal-assigned ID for the payer (shopper). PayerID string `json:"payerID,omitempty"` // Payload appended to the `returnURL` as a result of the redirect. Payload string `json:"payload,omitempty"` // PayPal-generated ID for the payment. PaymentID string `json:"paymentID,omitempty"` // Value passed from the WeChat MiniProgram `wx.requestPayment` **complete** callback. Possible values: any value starting with `requestPayment:`. PaymentStatus string `json:"paymentStatus,omitempty"` // The result of the redirect as appended to the `returnURL`. RedirectResult string `json:"redirectResult,omitempty"` // Base64-encoded string returned by the Component after the challenge flow. It contains the following parameters: `transStatus`, `authorisationToken`. ThreeDSResult string `json:"threeDSResult,omitempty"` // Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `transStatus`. Threeds2ChallengeResult string `json:"threeds2.challengeResult,omitempty"` // Base64-encoded string returned by the Component after the challenge flow. It contains the following parameter: `threeDSCompInd`. Threeds2Fingerprint string `json:"threeds2.fingerprint,omitempty"` }
PaymentCompletionDetails struct for PaymentCompletionDetails
type PaymentDetails ¶
type PaymentDetails struct { // The payment method type. Type string `json:"type,omitempty"` }
PaymentDetails struct for PaymentDetails
type PaymentDetailsResponse ¶
type PaymentDetailsResponse struct { // Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**. AdditionalData map[string]string `json:"additionalData,omitempty"` Amount *Amount `json:"amount,omitempty"` // Donation Token containing payment details for Adyen Giving. DonationToken string `json:"donationToken,omitempty"` FraudResult *FraudResult `json:"fraudResult,omitempty"` // The reference used during the /payments request. MerchantReference string `json:"merchantReference,omitempty"` Order *CheckoutOrderResponse `json:"order,omitempty"` PaymentMethod *ResponsePaymentMethod `json:"paymentMethod,omitempty"` // Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. PspReference string `json:"pspReference,omitempty"` // If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReason string `json:"refusalReason,omitempty"` // Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReasonCode string `json:"refusalReasonCode,omitempty"` // The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes). Possible values: * **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions. * **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). * **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state. * **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state. * **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions. * **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state. * **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions. * **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment. * **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment. * **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments. * **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation. * **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state. ResultCode *common.ResultCode `json:"resultCode,omitempty"` //ResultCode string `json:"resultCode,omitempty"` // The shopperLocale. ShopperLocale string `json:"shopperLocale,omitempty"` ThreeDS2ResponseData *ThreeDS2ResponseData `json:"threeDS2ResponseData,omitempty"` ThreeDS2Result *ThreeDS2Result `json:"threeDS2Result,omitempty"` // When non-empty, contains a value that you must submit to the `/payments/details` endpoint as `paymentData`. ThreeDSPaymentData string `json:"threeDSPaymentData,omitempty"` }
PaymentDetailsResponse struct for PaymentDetailsResponse
type PaymentDonationRequest ¶
type PaymentDonationRequest struct { AccountInfo *AccountInfo `json:"accountInfo,omitempty"` // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` AuthenticationData *AuthenticationData `json:"authenticationData,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` BrowserInfo *BrowserInfo `json:"browserInfo,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web Channel string `json:"channel,omitempty"` // Checkout attempt ID that corresponds to the Id generated for tracking user payment journey. CheckoutAttemptId string `json:"checkoutAttemptId,omitempty"` Company *Company `json:"company,omitempty"` // Conversion ID that corresponds to the Id generated for tracking user payment journey. ConversionId string `json:"conversionId,omitempty"` // The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE CountryCode string `json:"countryCode,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` DccQuote *ForexQuote `json:"dccQuote,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00 DeliveryDate *time.Time `json:"deliveryDate,omitempty"` // A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). DeviceFingerprint string `json:"deviceFingerprint,omitempty"` // Donation account to which the transaction is credited. DonationAccount string `json:"donationAccount"` // PSP reference of the transaction from which the donation token is generated. Required when `donationToken` is provided. DonationOriginalPspReference string `json:"donationOriginalPspReference,omitempty"` // Donation token received in the `/payments` call. DonationToken string `json:"donationToken,omitempty"` // When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. EnableOneClick bool `json:"enableOneClick,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for payouts. EnablePayOut bool `json:"enablePayOut,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. EnableRecurring bool `json:"enableRecurring,omitempty"` // The type of the entity the payment is processed for. EntityType string `json:"entityType,omitempty"` // An integer value that is added to the normal fraud score. The value can be either positive or negative. FraudOffset int32 `json:"fraudOffset,omitempty"` Installments *Installments `json:"installments,omitempty"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` Mandate *Mandate `json:"mandate,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` MerchantRiskIndicator *MerchantRiskIndicator `json:"merchantRiskIndicator,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value. Metadata map[string]string `json:"metadata,omitempty"` MpiData *ThreeDSecureData `json:"mpiData,omitempty"` Order *CheckoutOrder `json:"order,omitempty"` // When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. OrderReference string `json:"orderReference,omitempty"` // Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from. Origin string `json:"origin,omitempty"` // The type and required details of a payment method to use. PaymentMethod interface{} `json:"paymentMethod"` // Date after which no further authorisations shall be performed. Only for 3D Secure 2. RecurringExpiry string `json:"recurringExpiry,omitempty"` // Minimum number of days between authorisations. Only for 3D Secure 2. RecurringFrequency string `json:"recurringFrequency,omitempty"` // Defines a recurring payment type. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // Specifies the redirect method (GET or POST) when redirecting back from the issuer. RedirectFromIssuerMethod string `json:"redirectFromIssuerMethod,omitempty"` // Specifies the redirect method (GET or POST) when redirecting to the issuer. RedirectToIssuerMethod string `json:"redirectToIssuerMethod,omitempty"` // The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters. Reference string `json:"reference"` // The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` ReturnUrl string `json:"returnUrl"` RiskData *RiskData `json:"riskData,omitempty"` // The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00 SessionValidity string `json:"sessionValidity,omitempty"` // The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new). ShopperIP string `json:"shopperIP,omitempty"` // Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal. ShopperInteraction string `json:"shopperInteraction,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). Splits *[]Split `json:"splits,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms. Store string `json:"store,omitempty"` // When true and `shopperReference` is provided, the payment details will be stored. StorePaymentMethod bool `json:"storePaymentMethod,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` ThreeDS2RequestData *ThreeDS2RequestData `json:"threeDS2RequestData,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` // Set to true if the payment should be routed to a trusted MID. TrustedShopper bool `json:"trustedShopper,omitempty"` }
PaymentDonationRequest struct for PaymentDonationRequest
type PaymentLinkResponse ¶
type PaymentLinkResponse struct { // List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]` AllowedPaymentMethods []string `json:"allowedPaymentMethods,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` // List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]` BlockedPaymentMethods []string `json:"blockedPaymentMethods,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The shopper's two-letter country code. CountryCode string `json:"countryCode,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` // The date and time when the purchased goods should be delivered. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**. DeliverAt *time.Time `json:"deliverAt,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // A short description visible on the payment page. Maximum length: 280 characters. Description string `json:"description,omitempty"` // The date when the payment link expires. [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format: YYYY-MM-DDThh:mm:ss+TZD, for example, **2020-12-18T10:15:30+01:00**. The maximum expiry date is 70 days after the payment link is created. If not provided, the payment link expires 24 hours after it was created. ExpiresAt string `json:"expiresAt,omitempty"` // A unique identifier of the payment link. Id string `json:"id"` // A set of key-value pairs that specifies the installment options available per payment method. The key must be a payment method name in lowercase. For example, **card** to specify installment options for all cards, or **visa** or **mc**. The value must be an object containing the installment options. InstallmentOptions *map[string]InstallmentOption `json:"installmentOptions,omitempty"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. This parameter is required for open invoice (_buy now, pay later_) payment methods such Afterpay, Clearpay, Klarna, RatePay, and Zip. LineItems *[]LineItem `json:"lineItems,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier for which the payment link is created. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (for example, order auth-rate). The reference should be unique per billing cycle. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limitations: * Maximum 20 key-value pairs per request. Otherwise, error \"177\" occurs: \"Metadata size exceeds limit\" * Maximum 20 characters per key. Otherwise, error \"178\" occurs: \"Metadata key size exceeds limit\" * A key cannot have the name `checkout.linkId`. Any value that you provide with this key is going to be replaced by the real payment link ID. Metadata map[string]string `json:"metadata,omitempty"` // Defines a recurring payment type. Possible values: * **Subscription** – A transaction for a fixed or variable amount, which follows a fixed schedule. * **CardOnFile** – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * **UnscheduledCardOnFile** – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or has variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // A reference that is used to uniquely identify the payment in future communications about the payment status. Reference string `json:"reference"` // List of fields that the shopper has to provide on the payment page before completing the payment. For more information, refer to [Provide shopper information](https://docs.adyen.com/unified-commerce/pay-by-link/payment-links/api#shopper-information). Possible values: * **billingAddress** – The address where to send the invoice. * **deliveryAddress** – The address where the purchased goods should be delivered. * **shopperEmail** – The shopper's email address. * **shopperName** – The shopper's full name. * **telephoneNumber** – The shopper's phone number. RequiredShopperFields []string `json:"requiredShopperFields,omitempty"` // Website URL used for redirection after payment is completed. If provided, a **Continue** button will be shown on the payment page. If shoppers select the button, they are redirected to the specified URL. ReturnUrl string `json:"returnUrl,omitempty"` // Indicates whether the payment link can be reused for multiple payments. If not provided, this defaults to **false** which means the link can be used for one successful payment only. Reusable bool `json:"reusable,omitempty"` RiskData *RiskData `json:"riskData,omitempty"` // The shopper's email address. ShopperEmail string `json:"shopperEmail,omitempty"` // The language to be used in the payment page, specified by a combination of a language and country code. For example, `en-US`. For a list of shopper locales that Pay by Link supports, refer to [Language and localization](https://docs.adyen.com/online-payments/pay-by-link#language-and-localization). ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // Boolean value indicating whether the card payment method should be split into separate debit and credit options. SplitCardFundingSources bool `json:"splitCardFundingSources,omitempty"` // An array of objects specifying how the payment should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` // Status of the payment link. Possible values: * **active**: The link can be used to make payments. * **expired**: The expiry date for the payment link has passed. Shoppers can no longer use the link to make payments. * **completed**: The shopper completed the payment. * **paymentPending**: The shopper is in the process of making the payment. Applies to payment methods with an asynchronous flow. Status string `json:"status"` // The physical store, for which this payment is processed. Store string `json:"store,omitempty"` // Indicates if the details of the payment method will be stored for the shopper. Possible values: * **disabled** – No details will be stored (default). * **askForConsent** – If the `shopperReference` is provided, the UI lets the shopper choose if they want their payment details to be stored. * **enabled** – If the `shopperReference` is provided, the details will be stored without asking the shopper for consent. StorePaymentMethodMode string `json:"storePaymentMethodMode,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` // A [theme](https://docs.adyen.com/unified-commerce/pay-by-link/api#themes) to customize the appearance of the payment page. If not specified, the payment page is rendered according to the theme set as default in your Customer Area. ThemeId string `json:"themeId,omitempty"` // The URL at which the shopper can complete the payment. Url string `json:"url"` }
PaymentLinkResponse struct for PaymentLinkResponse
type PaymentMethod ¶
type PaymentMethod struct { // Brand for the selected gift card. For example: plastix, hmclub. Brand string `json:"brand,omitempty"` // List of possible brands. For example: visa, mc. Brands []string `json:"brands,omitempty"` // The configuration of the payment method. Configuration map[string]string `json:"configuration,omitempty"` // The funding source of the payment method. FundingSource string `json:"fundingSource,omitempty"` Group *PaymentMethodGroup `json:"group,omitempty"` // All input details to be provided to complete the payment with this payment method. InputDetails *[]InputDetail `json:"inputDetails,omitempty"` // A list of issuers for this payment method. Issuers *[]PaymentMethodIssuer `json:"issuers,omitempty"` // The displayable name of this payment method. Name string `json:"name,omitempty"` // The unique payment method code. Type string `json:"type,omitempty"` }
PaymentMethod struct for PaymentMethod
type PaymentMethodACH ¶
type PaymentMethodACH struct { // Must be set to **ach**. Type string `json:"type"` // The bank account, from which the funds should be deducted. BankAccount string `json:"bankAccount"` }
PaymentMethodACH struct for PaymentMethodACH
type PaymentMethodAmazonPay ¶
type PaymentMethodAmazonPay struct { // Must be set to **androidpay**. Type string `json:"type"` // The stringified and base64 encoded paymentData retrieved from the Amazon framework. AmazonPayToken string `json:"amazonPayToken"` }
PaymentMethodAmazonPay struct for PaymentMethodAmazonPay
type PaymentMethodAndroidPay ¶
type PaymentMethodAndroidPay struct { // Must be set to **androidpay**. Type string `json:"type"` // The stringified and base64 encoded paymentData retrieved from the Android framework. AndroidpayToken string `json:"androidpay.token"` }
PaymentMethodAndroidPay struct for PaymentMethodAndroidPay
type PaymentMethodApplePay ¶
type PaymentMethodApplePay struct { // Must be set to **applepay**. Type string `json:"type"` // The stringified and base64 encoded paymentData retrieved from the Apple framework. ApplepayToken string `json:"applepay.token"` }
PaymentMethodApplePay struct for PaymentMethodApplePay
type PaymentMethodCard ¶
type PaymentMethodCard struct { // Must be set to **scheme**. Type string `json:"type"` // The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid) (1-20 characters). Depending on the card brand, it is known also as: * CVV2/CVC2 – length: 3 digits * CID – length: 4 digits Cvc string `json:"cvc,omitempty"` // The card expiry month. Format: 2 digits, zero-padded for single digits. For example: * 03 = March * 11 = November ExpiryMonth string `json:"expiryMonth"` // The card expiry year. Format: 4 digits. For example: 2020 ExpiryYear string `json:"expiryYear"` // The name of the cardholder, as printed on the card. HolderName string `json:"holderName"` // The card number (4-19 characters). Do not use any separators. Number string `json:"number"` }
PaymentMethodCard struct for PaymentMethodCard
type PaymentMethodDotpay ¶
type PaymentMethodDotpay struct { // Must be set to **dotpay**. Type string `json:"type"` // The Dotpay issuer value of the shopper's selected bank. Set this to an **id** of a Dotpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodDotpay struct for PaymentMethodDotpay
type PaymentMethodDragonpayEBanking ¶
type PaymentMethodDragonpayEBanking struct { // Must be set to **dragonpay_ebanking**. Type string `json:"type"` // The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodDragonpayEBanking struct for PaymentMethodDragonpayEBanking
type PaymentMethodDragonpayOtcBanking ¶
type PaymentMethodDragonpayOtcBanking struct { // Must be set to **dragonpay_otc_banking**. Type string `json:"type"` // The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodDragonpayOtcBanking struct for PaymentMethodDragonpayOtcBanking
type PaymentMethodDragonpayOtcNonBanking ¶
type PaymentMethodDragonpayOtcNonBanking struct { // Must be set to **dragonpay_otc_non_banking**. Type string `json:"type"` // The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodDragonpayOtcNonBanking struct for PaymentMethodDragonpayOtcNonBanking
type PaymentMethodDragonpayOtcPhilippines ¶
type PaymentMethodDragonpayOtcPhilippines struct { // Must be set to **dragonpay_otc_philippines**. Type string `json:"type"` // The Dragonpay issuer value of the shopper's selected bank. Set this to an **id** of a Dragonpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodDragonpayOtcPhilippines struct for PaymentMethodDragonpayOtcPhilippines
type PaymentMethodGiropay ¶
type PaymentMethodGiropay struct { // Must be set to **giropay**. Type string `json:"type"` // The bank identifier code (BIC) of the selected issuing bank. Bic string `json:"bic"` }
PaymentMethodGiropay struct for PaymentMethodGiropay
type PaymentMethodGroup ¶
type PaymentMethodGroup struct { // The name of the group. Name string `json:"name,omitempty"` // Echo data to be used if the payment method is displayed as part of this group. PaymentMethodData string `json:"paymentMethodData,omitempty"` // The unique code of the group. Type string `json:"type,omitempty"` }
PaymentMethodGroup struct for PaymentMethodGroup
type PaymentMethodIDeal ¶
type PaymentMethodIDeal struct { // Must be set to **dotpay**. Type string `json:"type"` // The iDEAL issuer value of the shopper's selected bank. Set this to an **id** of an iDeal issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodIDeal struct for PaymentMethodIDeal
type PaymentMethodIssuer ¶
type PaymentMethodIssuer struct { // A boolean value indicating whether this issuer is unavailable. Can be `true` whenever the issuer is offline. Disabled bool `json:"disabled,omitempty"` // The unique identifier of this issuer, to submit in requests to /payments. Id string `json:"id"` // A localized name of the issuer. Name string `json:"name"` }
PaymentMethodIssuer struct for PaymentMethodIssuer
type PaymentMethodLianLianPayEbankingCredit ¶
type PaymentMethodLianLianPayEbankingCredit struct { // Must be set to **lianlianpay_ebanking_credit**. Type string `json:"type"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber"` }
PaymentMethodLianLianPayEbankingCredit struct for PaymentMethodLianLianPayEbankingCredit
type PaymentMethodLianLianPayEbankingDebit ¶
type PaymentMethodLianLianPayEbankingDebit struct { // Must be set to **lianlianpay_ebanking_debit**. Type string `json:"type"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber"` }
PaymentMethodLianLianPayEbankingDebit struct for PaymentMethodLianLianPayEbankingDebit
type PaymentMethodLianLianPayEbankingEnterprise ¶
type PaymentMethodLianLianPayEbankingEnterprise struct { // Must be set to **lianlianpay_ebanking_enterprise**. Type string `json:"type"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber"` }
PaymentMethodLianLianPayEbankingEnterprise struct for PaymentMethodLianLianPayEbankingEnterprise
type PaymentMethodMOLpayEBankingMalaysia ¶
type PaymentMethodMOLpayEBankingMalaysia struct { // Must be set to **molpay_ebanking_fpx_MY**. Type string `json:"type"` // The MOLpay issuer value of the shopper's selected bank. Set this to an **id** of a MOLpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodMOLpayEBankingMalaysia struct for PaymentMethodMOLpayEBankingMalaysia
type PaymentMethodMOLpayEBankingThailand ¶
type PaymentMethodMOLpayEBankingThailand struct { // Must be set to **molpay_ebanking_TH**. Type string `json:"type"` // The MOLpay issuer value of the shopper's selected bank. Set this to an **id** of a MOLpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodMOLpayEBankingThailand struct for PaymentMethodMOLpayEBankingThailand
type PaymentMethodMOLpayEBankingVietnam ¶
type PaymentMethodMOLpayEBankingVietnam struct { // Must be set to **molpay_ebanking_VN**. Type string `json:"type"` // The MOLpay issuer value of the shopper's selected bank. Set this to an **id** of a MOLpay issuer to preselect it. Issuer string `json:"issuer"` }
PaymentMethodMOLpayEBankingVietnam struct for PaymentMethodMOLpayEBankingVietnam
type PaymentMethodPayWithGoogle ¶
type PaymentMethodPayWithGoogle struct { // Must be set to **paywithgoogle**. Type string `json:"type,omitempty"` // The stringified and base64 encoded paymentData retrieved from the Google framework. PaywithgoogleToken string `json:"paywithgoogle.token"` // The stringified and base64 encoded paymentData retrieved from the Google framework. GooglePayToken string `json:"googlePayToken"` // The card type provided by the shopper. GooglePayCardNetwork string `json:"googlePayCardNetwork"` }
PaymentMethodPayWithGoogle struct for PaymentMethodPayWithGoogle
type PaymentMethodQIWIWallet ¶
type PaymentMethodQIWIWallet struct { // Must be set to **qiwiwallet**. Type string `json:"type"` // The shopper's telephone number prefix. QiwiwalletTelephoneNumberPrefix string `json:"qiwiwallet.telephoneNumberPrefix"` // The shopper's telephone number. QiwiwalletTelephoneNumber string `json:"qiwiwallet.telephoneNumber"` }
PaymentMethodQIWIWallet struct for PaymentMethodQIWIWallet
type PaymentMethodSamsungpay ¶
type PaymentMethodSamsungpay struct { // Must be set to **samsungpay**. Type string `json:"type"` // The stringified and base64 encoded paymentData retrieved from the Samsung framework. SamsungpayToken string `json:"samsungpay.token"` }
PaymentMethodSamsungpay struct for PaymentMethodSamsungpay
type PaymentMethodSchemeGiftCard ¶
type PaymentMethodSchemeGiftCard struct { // Must be set to **scheme**. Type string `json:"type"` // The [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid) (1-20 characters). Depending on the card brand, it is known also as: * CVV2/CVC2 – length: 3 digits * CID – length: 4 digits Cvc string `json:"cvc,omitempty"` // The card expiry month. Format: 2 digits, zero-padded for single digits. For example: * 03 = March * 11 = November ExpiryMonth string `json:"expiryMonth"` // The card expiry year. Format: 4 digits. For example: 2020 ExpiryYear string `json:"expiryYear"` // The name of the cardholder, as printed on the card. HolderName string `json:"holderName"` // The card number (4-19 characters). Do not use any separators. Number string `json:"number"` // The encrypted [card verification code](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid) (1-20 characters). Depending on the card brand, it is known also as: * CVV2/CVC2 – length: 3 digits * CID – length: 4 digits EncryptedSecurityCode string `json:"encryptedSecurityCode"` // The encrypted card expiry month. Format: 2 digits, zero-padded for single digits. For example: * 03 = March * 11 = November EncryptedExpiryMonth string `json:"encryptedExpiryMonth"` // The encrypted card expiry year. Format: 4 digits. For example: 2020 EncryptedExpiryYear string `json:"encryptedExpiryYear"` // The encrypted card number (4-19 characters). Do not use any separators. EncryptedCardNumber string `json:"encryptedCardNumber"` }
PaymentMethodSchemeGiftCard struct for PaymentMethodSchemeGiftCard
type PaymentMethodSepaDirectDebit ¶
type PaymentMethodSepaDirectDebit struct { // Must be set to **sepadirectdebit**. Type string `json:"type"` // The shopper's international bank account number (IBAN). SepaIbanNumber string `json:"sepa.ibanNumber"` // The name on the SEPA bank account. SepaOwnerName string `json:"sepa.ownerName"` }
PaymentMethodSepaDirectDebit struct for PaymentMethodSepaDirectDebit
type PaymentMethodVipps ¶
type PaymentMethodVipps struct { // Must be set to **vipps**. Type string `json:"type"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber"` }
PaymentMethodVipps struct for PaymentMethodVipps
type PaymentMethodsGroup ¶
type PaymentMethodsGroup struct { // The type to submit for any payment method in this group. GroupType string `json:"groupType,omitempty"` // The human-readable name of this group. Name string `json:"name,omitempty"` // The types of payment methods that belong in this group. Types []string `json:"types,omitempty"` }
PaymentMethodsGroup struct for PaymentMethodsGroup
type PaymentMethodsRequest ¶
type PaymentMethodsRequest struct { // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` // List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]` AllowedPaymentMethods []string `json:"allowedPaymentMethods,omitempty"` Amount *Amount `json:"amount,omitempty"` // List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type` from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]` BlockedPaymentMethods []string `json:"blockedPaymentMethods,omitempty"` // The platform where a payment transaction takes place. This field can be used for filtering out payment methods that are only available on specific platforms. Possible values: * iOS * Android * Web Channel string `json:"channel,omitempty"` // The shopper's country code. CountryCode string `json:"countryCode,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` Order *CheckoutOrder `json:"order,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` // Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // Boolean value indicating whether the card payment method should be split into separate debit and credit options. SplitCardFundingSources bool `json:"splitCardFundingSources,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms. Store string `json:"store,omitempty"` }
PaymentMethodsRequest struct for PaymentMethodsRequest
type PaymentMethodsResponse ¶
type PaymentMethodsResponse struct { // Detailed list of payment methods required to generate payment forms. PaymentMethods *[]PaymentMethod `json:"paymentMethods,omitempty"` // List of all stored payment methods. StoredPaymentMethods *[]StoredPaymentMethod `json:"storedPaymentMethods,omitempty"` }
PaymentMethodsResponse struct for PaymentMethodsResponse
type PaymentRefundResource ¶
type PaymentRefundResource struct { Amount Amount `json:"amount"` // Price and product information of the refunded items, required for [partial refunds](https://docs.adyen.com/online-payments/refund#refund-a-payment). > This field is required for partial refunds with 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to refund. PaymentPspReference string `json:"paymentPspReference"` // Adyen's 16-character reference associated with the refund request. PspReference string `json:"pspReference"` // Your reference for the refund request. Reference string `json:"reference,omitempty"` // An array of objects specifying how the amount should be split between accounts when using Adyen for Platforms. For details, refer to [Providing split information](https://docs.adyen.com/platforms/processing-payments#providing-split-information). Splits *[]Split `json:"splits,omitempty"` // The status of your request. This will always have the value **received**. Status string `json:"status"` }
PaymentRefundResource struct for PaymentRefundResource
type PaymentRequest ¶
type PaymentRequest struct { AccountInfo *AccountInfo `json:"accountInfo,omitempty"` // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` AuthenticationData *AuthenticationData `json:"authenticationData,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` BrowserInfo *BrowserInfo `json:"browserInfo,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web Channel string `json:"channel,omitempty"` // Checkout attempt ID that corresponds to the Id generated for tracking user payment journey. CheckoutAttemptId string `json:"checkoutAttemptId,omitempty"` Company *Company `json:"company,omitempty"` // Conversion ID that corresponds to the Id generated for tracking user payment journey. ConversionId string `json:"conversionId,omitempty"` // The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE CountryCode string `json:"countryCode,omitempty"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` DccQuote *ForexQuote `json:"dccQuote,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00 DeliveryDate *time.Time `json:"deliveryDate,omitempty"` // A string containing the shopper's device fingerprint. For more information, refer to [Device fingerprinting](https://docs.adyen.com/risk-management/device-fingerprinting). DeviceFingerprint string `json:"deviceFingerprint,omitempty"` // When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. EnableOneClick bool `json:"enableOneClick,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for payouts. EnablePayOut bool `json:"enablePayOut,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. EnableRecurring bool `json:"enableRecurring,omitempty"` // The type of the entity the payment is processed for. EntityType string `json:"entityType,omitempty"` // An integer value that is added to the normal fraud score. The value can be either positive or negative. FraudOffset int32 `json:"fraudOffset,omitempty"` Installments *Installments `json:"installments,omitempty"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` Mandate *Mandate `json:"mandate,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` MerchantRiskIndicator *MerchantRiskIndicator `json:"merchantRiskIndicator,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value. Metadata map[string]string `json:"metadata,omitempty"` MpiData *ThreeDSecureData `json:"mpiData,omitempty"` Order *CheckoutOrder `json:"order,omitempty"` // When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. OrderReference string `json:"orderReference,omitempty"` // Required for the 3D Secure 2 `channel` **Web** integration. Set this parameter to the origin URL of the page that you are loading the 3D Secure Component from. Origin string `json:"origin,omitempty"` // The type and required details of a payment method to use. PaymentMethod interface{} `json:"paymentMethod"` // Date after which no further authorisations shall be performed. Only for 3D Secure 2. RecurringExpiry string `json:"recurringExpiry,omitempty"` // Minimum number of days between authorisations. Only for 3D Secure 2. RecurringFrequency string `json:"recurringFrequency,omitempty"` // Defines a recurring payment type. Allowed values: * `Subscription` – A transaction for a fixed or variable amount, which follows a fixed schedule. * `CardOnFile` – With a card-on-file (CoF) transaction, card details are stored to enable one-click or omnichannel journeys, or simply to streamline the checkout process. Any subscription not following a fixed schedule is also considered a card-on-file transaction. * `UnscheduledCardOnFile` – An unscheduled card-on-file (UCoF) transaction is a transaction that occurs on a non-fixed schedule and/or have variable amounts. For example, automatic top-ups when a cardholder's balance drops below a certain amount. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // Specifies the redirect method (GET or POST) when redirecting back from the issuer. RedirectFromIssuerMethod string `json:"redirectFromIssuerMethod,omitempty"` // Specifies the redirect method (GET or POST) when redirecting to the issuer. RedirectToIssuerMethod string `json:"redirectToIssuerMethod,omitempty"` // The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters. Reference string `json:"reference"` // The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` ReturnUrl string `json:"returnUrl"` RiskData *RiskData `json:"riskData,omitempty"` // The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00 SessionValidity string `json:"sessionValidity,omitempty"` // The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new). ShopperIP string `json:"shopperIP,omitempty"` // Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal. ShopperInteraction string `json:"shopperInteraction,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). Splits *[]Split `json:"splits,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms. Store string `json:"store,omitempty"` // When true and `shopperReference` is provided, the payment details will be stored. StorePaymentMethod bool `json:"storePaymentMethod"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` ThreeDS2RequestData *ThreeDS2RequestData `json:"threeDS2RequestData,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` // Set to true if the payment should be routed to a trusted MID. TrustedShopper bool `json:"trustedShopper,omitempty"` }
PaymentRequest struct for PaymentRequest
func (*PaymentRequest) UnmarshalJSON ¶
func (req *PaymentRequest) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals a quoted json string to PaymentRequest struct
type PaymentResponse ¶
type PaymentResponse struct { // Action to be taken for completing the payment. // Action OneOfCheckoutAwaitActionCheckoutBankTransferActionCheckoutDonationActionCheckoutOneTimePasscodeActionCheckoutQrCodeActionCheckoutRedirectActionCheckoutSDKActionCheckoutThreeDS2ActionCheckoutVoucherAction `json:"action,omitempty"` Action interface{} `json:"action,omitempty"` // Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**. AdditionalData map[string]string `json:"additionalData,omitempty"` Amount *Amount `json:"amount,omitempty"` // Donation Token containing payment details for Adyen Giving. DonationToken string `json:"donationToken,omitempty"` FraudResult *FraudResult `json:"fraudResult,omitempty"` // The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters. MerchantReference string `json:"merchantReference,omitempty"` Order *CheckoutOrderResponse `json:"order,omitempty"` PaymentMethod *ResponsePaymentMethod `json:"paymentMethod,omitempty"` // Adyen's 16-character string reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. > For payment methods that require a redirect or additional action, you will get this value in the `/payments/details` response. PspReference string `json:"pspReference,omitempty"` // If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReason string `json:"refusalReason,omitempty"` // Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReasonCode string `json:"refusalReasonCode,omitempty"` // The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes). Possible values: * **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions. * **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). * **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state. * **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state. * **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions. * **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state. * **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions. * **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment. * **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment. * **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments. * **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation. * **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state. ResultCode *common.ResultCode `json:"resultCode,omitempty"` ThreeDS2ResponseData *ThreeDS2ResponseData `json:"threeDS2ResponseData,omitempty"` ThreeDS2Result *ThreeDS2Result `json:"threeDS2Result,omitempty"` // When non-empty, contains a value that you must submit to the `/payments/details` endpoint as `paymentData`. ThreeDSPaymentData string `json:"threeDSPaymentData,omitempty"` }
PaymentResponse struct for PaymentResponse
func (*PaymentResponse) UnmarshalJSON ¶
func (req *PaymentResponse) UnmarshalJSON(b []byte) error
UnmarshalJSON unmarshals a quoted json string to PaymentResponse struct
type PaymentReversalResource ¶
type PaymentReversalResource struct { // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`pspReference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__resParam_pspReference) of the payment to reverse. PaymentPspReference string `json:"paymentPspReference"` // Adyen's 16-character reference associated with the reversal request. PspReference string `json:"pspReference"` // Your reference for the reversal request. Reference string `json:"reference,omitempty"` // The status of your request. This will always have the value **received**. Status string `json:"status"` }
PaymentReversalResource struct for PaymentReversalResource
type PaymentSetupRequest ¶
type PaymentSetupRequest struct { // This field contains additional data, which may be required for a particular payment request. The `additionalData` object consists of entries, each of which includes the key and value. AdditionalData map[string]string `json:"additionalData,omitempty"` // List of payment methods to be presented to the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"allowedPaymentMethods\":[\"ideal\",\"giropay\"]` AllowedPaymentMethods []string `json:"allowedPaymentMethods,omitempty"` Amount Amount `json:"amount"` ApplicationInfo *ApplicationInfo `json:"applicationInfo,omitempty"` BillingAddress *Address `json:"billingAddress,omitempty"` // List of payment methods to be hidden from the shopper. To refer to payment methods, use their `paymentMethod.type`from [Payment methods overview](https://docs.adyen.com/payment-methods). Example: `\"blockedPaymentMethods\":[\"ideal\",\"giropay\"]` BlockedPaymentMethods []string `json:"blockedPaymentMethods,omitempty"` // The delay between the authorisation and scheduled auto-capture, specified in hours. CaptureDelayHours int32 `json:"captureDelayHours,omitempty"` // The platform where a payment transaction takes place. This field is optional for filtering out payment methods that are only available on specific platforms. If this value is not set, then we will try to infer it from the `sdkVersion` or `token`. Possible values: * iOS * Android * Web Channel string `json:"channel,omitempty"` // Checkout attempt ID that corresponds to the Id generated for tracking user payment journey. CheckoutAttemptId string `json:"checkoutAttemptId,omitempty"` Company *Company `json:"company,omitempty"` Configuration *Configuration `json:"configuration,omitempty"` // Conversion ID that corresponds to the Id generated for tracking user payment journey. ConversionId string `json:"conversionId,omitempty"` // The shopper country. Format: [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) Example: NL or DE CountryCode string `json:"countryCode"` // The shopper's date of birth. Format [ISO-8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DD DateOfBirth *time.Time `json:"dateOfBirth,omitempty"` DccQuote *ForexQuote `json:"dccQuote,omitempty"` DeliveryAddress *Address `json:"deliveryAddress,omitempty"` // The date and time the purchased goods should be delivered. Format [ISO 8601](https://www.w3.org/TR/NOTE-datetime): YYYY-MM-DDThh:mm:ss.sssTZD Example: 2017-07-17T13:42:40.428+01:00 DeliveryDate *time.Time `json:"deliveryDate,omitempty"` // When true and `shopperReference` is provided, the shopper will be asked if the payment details should be stored for future one-click payments. EnableOneClick bool `json:"enableOneClick,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for payouts. EnablePayOut bool `json:"enablePayOut,omitempty"` // When true and `shopperReference` is provided, the payment details will be tokenized for recurring payments. EnableRecurring bool `json:"enableRecurring,omitempty"` // The type of the entity the payment is processed for. EntityType string `json:"entityType,omitempty"` // An integer value that is added to the normal fraud score. The value can be either positive or negative. FraudOffset int32 `json:"fraudOffset,omitempty"` Installments *Installments `json:"installments,omitempty"` // Price and product information about the purchased items, to be included on the invoice sent to the shopper. > This field is required for 3x 4x Oney, Affirm, Afterpay, Clearpay, Klarna, Ratepay, Zip and Atome. LineItems *[]LineItem `json:"lineItems,omitempty"` Mandate *Mandate `json:"mandate,omitempty"` // The [merchant category code](https://en.wikipedia.org/wiki/Merchant_category_code) (MCC) is a four-digit number, which relates to a particular market segment. This code reflects the predominant activity that is conducted by the merchant. Mcc string `json:"mcc,omitempty"` // The merchant account identifier, with which you want to process the transaction. MerchantAccount string `json:"merchantAccount"` // This reference allows linking multiple transactions to each other for reporting purposes (i.e. order auth-rate). The reference should be unique per billing cycle. The same merchant order reference should never be reused after the first authorised attempt. If used, this field should be supplied for all incoming authorisations. > We strongly recommend you send the `merchantOrderReference` value to benefit from linking payment requests when authorisation retries take place. In addition, we recommend you provide `retry.orderAttemptNumber`, `retry.chainAttemptNumber`, and `retry.skipRetry` values in `PaymentRequest.additionalData`. MerchantOrderReference string `json:"merchantOrderReference,omitempty"` // Metadata consists of entries, each of which includes a key and a value. Limits: * Maximum 20 key-value pairs per request. When exceeding, the \"177\" error occurs: \"Metadata size exceeds limit\". * Maximum 20 characters per key. * Maximum 80 characters per value. Metadata map[string]string `json:"metadata,omitempty"` // When you are doing multiple partial (gift card) payments, this is the `pspReference` of the first payment. We use this to link the multiple payments to each other. As your own reference for linking multiple payments, use the `merchantOrderReference`instead. OrderReference string `json:"orderReference,omitempty"` // Required for the Web integration. Set this parameter to the origin URL of the page that you are loading the SDK from. Origin string `json:"origin,omitempty"` // Date after which no further authorisations shall be performed. Only for 3D Secure 2. RecurringExpiry string `json:"recurringExpiry,omitempty"` // Minimum number of days between authorisations. Only for 3D Secure 2. RecurringFrequency string `json:"recurringFrequency,omitempty"` // The reference to uniquely identify a payment. This reference is used in all communication with you about the payment status. We recommend using a unique value per payment; however, it is not a requirement. If you need to provide multiple references for a transaction, separate them with hyphens (\"-\"). Maximum length: 80 characters. Reference string `json:"reference"` // The URL to return to in case of a redirection. The format depends on the channel. This URL can have a maximum of 1024 characters. * For web, include the protocol `http://` or `https://`. You can also include your own additional query parameters, for example, shopper ID or order reference number. Example: `https://your-company.com/checkout?shopperOrder=12xy` * For iOS, use the custom URL for your app. To know more about setting custom URL schemes, refer to the [Apple Developer documentation](https://developer.apple.com/documentation/uikit/inter-process_communication/allowing_apps_and_websites_to_link_to_your_content/defining_a_custom_url_scheme_for_your_app). Example: `my-app://` * For Android, use a custom URL handled by an Activity on your app. You can configure it with an [intent filter](https://developer.android.com/guide/components/intents-filters). Example: `my-app://your.package.name` ReturnUrl string `json:"returnUrl"` RiskData *RiskData `json:"riskData,omitempty"` // The version of the SDK you are using (for Web SDK integrations only). SdkVersion string `json:"sdkVersion,omitempty"` // The date and time until when the session remains valid, in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format. For example: 2020-07-18T15:42:40.428+01:00 SessionValidity string `json:"sessionValidity,omitempty"` // The shopper's email address. We recommend that you provide this data, as it is used in velocity fraud checks. > For 3D Secure 2 transactions, schemes require `shopperEmail` for all browser-based and mobile implementations. ShopperEmail string `json:"shopperEmail,omitempty"` // The shopper's IP address. In general, we recommend that you provide this data, as it is used in a number of risk checks (for instance, number of payment attempts or location-based checks). > For 3D Secure 2 transactions, schemes require `shopperIP` for all browser-based implementations. This field is also mandatory for some merchants depending on your business model. For more information, [contact Support](https://support.adyen.com/hc/en-us/requests/new). ShopperIP string `json:"shopperIP,omitempty"` // Specifies the sales channel, through which the shopper gives their card details, and whether the shopper is a returning customer. For the web service API, Adyen assumes Ecommerce shopper interaction by default. This field has the following possible values: * `Ecommerce` - Online transactions where the cardholder is present (online). For better authorisation rates, we recommend sending the card security code (CSC) along with the request. * `ContAuth` - Card on file and/or subscription transactions, where the cardholder is known to the merchant (returning customer). If the shopper is present (online), you can supply also the CSC to improve authorisation (one-click payment). * `Moto` - Mail-order and telephone-order transactions where the shopper is in contact with the merchant via email or telephone. * `POS` - Point-of-sale transactions where the shopper is physically present to make a payment using a secure payment terminal. ShopperInteraction string `json:"shopperInteraction,omitempty"` // The combination of a language code and a country code to specify the language to be used in the payment. ShopperLocale string `json:"shopperLocale,omitempty"` ShopperName *Name `json:"shopperName,omitempty"` // Required for recurring payments. Your reference to uniquely identify this shopper, for example user ID or account ID. Minimum length: 3 characters. > Your reference must not include personally identifiable information (PII), for example name or email address. ShopperReference string `json:"shopperReference,omitempty"` // The text to be shown on the shopper's bank statement. We recommend sending a maximum of 22 characters, otherwise banks might truncate the string. Allowed characters: **a-z**, **A-Z**, **0-9**, spaces, and special characters **. , ' _ - ? + * /_**. ShopperStatement string `json:"shopperStatement,omitempty"` // The shopper's social security number. SocialSecurityNumber string `json:"socialSecurityNumber,omitempty"` // An array of objects specifying how the payment should be split when using [Adyen for Platforms](https://docs.adyen.com/platforms/processing-payments#providing-split-information) or [Issuing](https://docs.adyen.com/issuing/manage-funds#split). Splits *[]Split `json:"splits,omitempty"` // The ecommerce or point-of-sale store that is processing the payment. Used in [partner arrangement integrations](https://docs.adyen.com/platforms/platforms-for-partners#route-payments) for Adyen for Platforms. Store string `json:"store,omitempty"` // When true and `shopperReference` is provided, the payment details will be stored. StorePaymentMethod bool `json:"storePaymentMethod,omitempty"` // The shopper's telephone number. TelephoneNumber string `json:"telephoneNumber,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. ThreeDSAuthenticationOnly bool `json:"threeDSAuthenticationOnly,omitempty"` // The token obtained when initializing the SDK. > This parameter is required for iOS and Android; not required for Web. Token string `json:"token,omitempty"` // Set to true if the payment should be routed to a trusted MID. TrustedShopper bool `json:"trustedShopper,omitempty"` }
PaymentSetupRequest struct for PaymentSetupRequest
type PaymentSetupResponse ¶
type PaymentSetupResponse struct { // The encoded payment session that you need to pass to the SDK. PaymentSession string `json:"paymentSession,omitempty"` // The detailed list of stored payment details required to generate payment forms. Will be empty if oneClick is set to false in the request. RecurringDetails *[]RecurringDetail `json:"recurringDetails,omitempty"` }
PaymentSetupResponse struct for PaymentSetupResponse
type PaymentVerificationRequest ¶
type PaymentVerificationRequest struct { // Encrypted and signed payment result data. You should receive this value from the Checkout SDK after the shopper completes the payment. Payload string `json:"payload"` }
PaymentVerificationRequest struct for PaymentVerificationRequest
type PaymentVerificationResponse ¶
type PaymentVerificationResponse struct { // Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs** > **Additional data settings**. AdditionalData map[string]string `json:"additionalData,omitempty"` FraudResult *FraudResult `json:"fraudResult,omitempty"` // A unique value that you provided in the initial `/paymentSession` request as a `reference` field. MerchantReference string `json:"merchantReference"` Order *CheckoutOrderResponse `json:"order,omitempty"` // Adyen's 16-character reference associated with the transaction/request. This value is globally unique; quote it when communicating with us about this request. PspReference string `json:"pspReference,omitempty"` // If the payment's authorisation is refused or an error occurs during authorisation, this field holds Adyen's mapped reason for the refusal or a description of the error. When a transaction fails, the authorisation response includes `resultCode` and `refusalReason` values. For more information, see [Refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReason string `json:"refusalReason,omitempty"` // Code that specifies the refusal reason. For more information, see [Authorisation refusal reasons](https://docs.adyen.com/development-resources/refusal-reasons). RefusalReasonCode string `json:"refusalReasonCode,omitempty"` // The result of the payment. For more information, see [Result codes](https://docs.adyen.com/online-payments/payment-result-codes). Possible values: * **AuthenticationFinished** – The payment has been successfully authenticated with 3D Secure 2. Returned for 3D Secure 2 authentication-only transactions. * **AuthenticationNotRequired** – The transaction does not require 3D Secure authentication. Returned for [standalone authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). * **Authorised** – The payment was successfully authorised. This state serves as an indicator to proceed with the delivery of goods and services. This is a final state. * **Cancelled** – Indicates the payment has been cancelled (either by the shopper or the merchant) before processing was completed. This is a final state. * **ChallengeShopper** – The issuer requires further shopper interaction before the payment can be authenticated. Returned for 3D Secure 2 transactions. * **Error** – There was an error when the payment was being processed. The reason is given in the `refusalReason` field. This is a final state. * **IdentifyShopper** – The issuer requires the shopper's device fingerprint before the payment can be authenticated. Returned for 3D Secure 2 transactions. * **Pending** – Indicates that it is not possible to obtain the final status of the payment. This can happen if the systems providing final status information for the payment are unavailable, or if the shopper needs to take further action to complete the payment. * **PresentToShopper** – Indicates that the response contains additional information that you need to present to a shopper, so that they can use it to complete a payment. * **Received** – Indicates the payment has successfully been received by Adyen, and will be processed. This is the initial state for all payments. * **RedirectShopper** – Indicates the shopper should be redirected to an external web page or app to complete the authorisation. * **Refused** – Indicates the payment was refused. The reason is given in the `refusalReason` field. This is a final state. ResultCode string `json:"resultCode,omitempty"` ServiceError *ServiceError2 `json:"serviceError,omitempty"` // The shopperLocale value provided in the payment request. ShopperLocale string `json:"shopperLocale"` }
PaymentVerificationResponse struct for PaymentVerificationResponse
type Phone ¶
type Phone struct { // Country code. Length: 1–3 characters. Cc string `json:"cc,omitempty"` // Subscriber number. Maximum length: 15 characters. Subscriber string `json:"subscriber,omitempty"` }
Phone struct for Phone
type QiwiWalletDetails ¶
type QiwiWalletDetails struct { TelephoneNumber string `json:"telephoneNumber"` // **qiwiwallet** Type string `json:"type,omitempty"` }
QiwiWalletDetails struct for QiwiWalletDetails
type RatepayDetails ¶
type RatepayDetails struct { // The address where to send the invoice. BillingAddress string `json:"billingAddress,omitempty"` // The address where the goods should be delivered. DeliveryAddress string `json:"deliveryAddress,omitempty"` // Shopper name, date of birth, phone number, and email address. PersonalDetails string `json:"personalDetails,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **ratepay** Type string `json:"type"` }
RatepayDetails struct for RatepayDetails
type Recurring ¶
type Recurring struct { // The type of recurring contract to be used. Possible values: * `ONECLICK` – Payment details can be used to initiate a one-click payment, where the shopper enters the [card security code (CVC/CVV)](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-security-code-cvc-cvv-cid). * `RECURRING` – Payment details can be used without the card security code to initiate [card-not-present transactions](https://docs.adyen.com/payments-fundamentals/payment-glossary#card-not-present-cnp). * `ONECLICK,RECURRING` – Payment details can be used regardless of whether the shopper is on your site or not. * `PAYOUT` – Payment details can be used to [make a payout](https://docs.adyen.com/online-payments/online-payouts). Contract string `json:"contract,omitempty"` // A descriptive name for this detail. RecurringDetailName string `json:"recurringDetailName,omitempty"` // Date after which no further authorisations shall be performed. Only for 3D Secure 2. RecurringExpiry *time.Time `json:"recurringExpiry,omitempty"` // Minimum number of days between authorisations. Only for 3D Secure 2. RecurringFrequency string `json:"recurringFrequency,omitempty"` // The name of the token service. TokenService string `json:"tokenService,omitempty"` }
Recurring struct for Recurring
type RecurringDetail ¶
type RecurringDetail struct { // Brand for the selected gift card. For example: plastix, hmclub. Brand string `json:"brand,omitempty"` // List of possible brands. For example: visa, mc. Brands []string `json:"brands,omitempty"` // The configuration of the payment method. Configuration map[string]string `json:"configuration,omitempty"` // The funding source of the payment method. FundingSource string `json:"fundingSource,omitempty"` Group *PaymentMethodGroup `json:"group,omitempty"` // All input details to be provided to complete the payment with this payment method. InputDetails *[]InputDetail `json:"inputDetails,omitempty"` // A list of issuers for this payment method. Issuers *[]PaymentMethodIssuer `json:"issuers,omitempty"` // The displayable name of this payment method. Name string `json:"name,omitempty"` // The reference that uniquely identifies the recurring detail. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` StoredDetails *StoredDetails `json:"storedDetails,omitempty"` // The unique payment method code. Type string `json:"type,omitempty"` }
RecurringDetail struct for RecurringDetail
type Redirect ¶
type Redirect struct { // When the redirect URL must be accessed via POST, use this data to post to the redirect URL. Data map[string]string `json:"data,omitempty"` // The web method that you must use to access the redirect URL. Possible values: GET, POST. Method string `json:"method,omitempty"` // The URL, to which you must redirect a shopper to complete a payment. Url string `json:"url,omitempty"` }
Redirect struct for Redirect
type ResponseAdditionalData3DSecure ¶
type ResponseAdditionalData3DSecure struct { // Information provided by the issuer to the cardholder. If this field is present, you need to display this information to the cardholder. CardHolderInfo string `json:"cardHolderInfo,omitempty"` // The Cardholder Authentication Verification Value (CAVV) for the 3D Secure authentication session, as a Base64-encoded 20-byte array. Cavv string `json:"cavv,omitempty"` // The CAVV algorithm used. CavvAlgorithm string `json:"cavvAlgorithm,omitempty"` // Shows the [exemption type](https://docs.adyen.com/payments-fundamentals/psd2-sca-compliance-and-implementation-guide#specifypreferenceinyourapirequest) that Adyen requested for the payment. Possible values: * **lowValue** * **secureCorporate** * **trustedBeneficiary** * **transactionRiskAnalysis** ScaExemptionRequested string `json:"scaExemptionRequested,omitempty"` // Indicates whether a card is enrolled for 3D Secure 2. Threeds2CardEnrolled bool `json:"threeds2.cardEnrolled,omitempty"` }
ResponseAdditionalData3DSecure struct for ResponseAdditionalData3DSecure
type ResponseAdditionalDataBillingAddress ¶
type ResponseAdditionalDataBillingAddress struct { // The billing address city passed in the payment request. BillingAddressCity string `json:"billingAddress.city,omitempty"` // The billing address country passed in the payment request. Example: NL BillingAddressCountry string `json:"billingAddress.country,omitempty"` // The billing address house number or name passed in the payment request. BillingAddressHouseNumberOrName string `json:"billingAddress.houseNumberOrName,omitempty"` // The billing address postal code passed in the payment request. Example: 1011 DJ BillingAddressPostalCode string `json:"billingAddress.postalCode,omitempty"` // The billing address state or province passed in the payment request. Example: NH BillingAddressStateOrProvince string `json:"billingAddress.stateOrProvince,omitempty"` // The billing address street passed in the payment request. BillingAddressStreet string `json:"billingAddress.street,omitempty"` }
ResponseAdditionalDataBillingAddress struct for ResponseAdditionalDataBillingAddress
type ResponseAdditionalDataCard ¶
type ResponseAdditionalDataCard struct { // The first six digits of the card number. This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with a six-digit BIN. Example: 521234 CardBin string `json:"cardBin,omitempty"` // The cardholder name passed in the payment request. CardHolderName string `json:"cardHolderName,omitempty"` // The bank or the financial institution granting lines of credit through card association branded payment cards. This information can be included when available. CardIssuingBank string `json:"cardIssuingBank,omitempty"` // The country where the card was issued. Example: US CardIssuingCountry string `json:"cardIssuingCountry,omitempty"` // The currency in which the card is issued, if this information is available. Provided as the currency code or currency number from the ISO-4217 standard. Example: USD CardIssuingCurrency string `json:"cardIssuingCurrency,omitempty"` // The card payment method used for the transaction. Example: amex CardPaymentMethod string `json:"cardPaymentMethod,omitempty"` // The last four digits of a card number. > Returned only in case of a card payment. CardSummary string `json:"cardSummary,omitempty"` // The first eight digits of the card number. Only returned if the card number is 16 digits or more. This is the [Bank Identification Number (BIN)](https://docs.adyen.com/get-started-with-adyen/payment-glossary#bank-identification-number-bin) for card numbers with an eight-digit BIN. Example: 52123423 IssuerBin string `json:"issuerBin,omitempty"` }
ResponseAdditionalDataCard struct for ResponseAdditionalDataCard
type ResponseAdditionalDataCommon ¶
type ResponseAdditionalDataCommon struct { // The name of the Adyen acquirer account. Example: PayPalSandbox_TestAcquirer > Only relevant for PayPal transactions. AcquirerAccountCode string `json:"acquirerAccountCode,omitempty"` // The name of the acquirer processing the payment request. Example: TestPmmAcquirer AcquirerCode string `json:"acquirerCode,omitempty"` // The reference number that can be used for reconciliation in case a non-Adyen acquirer is used for settlement. Example: 7C9N3FNBKT9 AcquirerReference string `json:"acquirerReference,omitempty"` // The Adyen alias of the card. Example: H167852639363479 Alias string `json:"alias,omitempty"` // The type of the card alias. Example: Default AliasType string `json:"aliasType,omitempty"` // Authorisation code: * When the payment is authorised successfully, this field holds the authorisation code for the payment. * When the payment is not authorised, this field is empty. Example: 58747 AuthCode string `json:"authCode,omitempty"` // Merchant ID known by the acquirer. AuthorisationMid string `json:"authorisationMid,omitempty"` // The currency of the authorised amount, as a three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). AuthorisedAmountCurrency string `json:"authorisedAmountCurrency,omitempty"` // Value of the amount authorised. This amount is represented in minor units according to the [following table](https://docs.adyen.com/development-resources/currency-codes). AuthorisedAmountValue string `json:"authorisedAmountValue,omitempty"` // The AVS result code of the payment, which provides information about the outcome of the AVS check. For possible values, see [AVS](https://docs.adyen.com/risk-management/configure-standard-risk-rules/consistency-rules#billing-address-does-not-match-cardholder-address-avs). AvsResult string `json:"avsResult,omitempty"` // Raw AVS result received from the acquirer, where available. Example: D AvsResultRaw string `json:"avsResultRaw,omitempty"` // BIC of a bank account. Example: TESTNL01 > Only relevant for SEPA Direct Debit transactions. Bic string `json:"bic,omitempty"` // Includes the co-branded card information. CoBrandedWith string `json:"coBrandedWith,omitempty"` // The result of CVC verification. CvcResult string `json:"cvcResult,omitempty"` // The raw result of CVC verification. CvcResultRaw string `json:"cvcResultRaw,omitempty"` // Supported for 3D Secure 2. The unique transaction identifier assigned by the DS to identify a single transaction. DsTransID string `json:"dsTransID,omitempty"` // The Electronic Commerce Indicator returned from the schemes for the 3DS payment session. Example: 02 Eci string `json:"eci,omitempty"` // The expiry date on the card. Example: 6/2016 > Returned only in case of a card payment. ExpiryDate string `json:"expiryDate,omitempty"` // The currency of the extra amount charged due to additional amounts set in the skin used in the HPP payment request. Example: EUR ExtraCostsCurrency string `json:"extraCostsCurrency,omitempty"` // The value of the extra amount charged due to additional amounts set in the skin used in the HPP payment request. The amount is in minor units. ExtraCostsValue string `json:"extraCostsValue,omitempty"` // The fraud score due to a particular fraud check. The fraud check name is found in the key of the key-value pair. FraudCheckItemNrFraudCheckname string `json:"fraudCheck-[itemNr]-[FraudCheckname],omitempty"` // Indicates if the payment is sent to manual review. FraudManualReview string `json:"fraudManualReview,omitempty"` // The fraud result properties of the payment. FraudResultType string `json:"fraudResultType,omitempty"` // Information regarding the funding type of the card. The possible return values are: * CHARGE * CREDIT * DEBIT * PREPAID * PREPAID_RELOADABLE * PREPAID_NONRELOADABLE * DEFFERED_DEBIT > This functionality requires additional configuration on Adyen's end. To enable it, contact the Support Team. For receiving this field in the notification, enable **Include Funding Source** in **Notifications** > **Additional settings**. FundingSource string `json:"fundingSource,omitempty"` // Indicates availability of funds. Visa: * \"I\" (fast funds are supported) * \"N\" (otherwise) Mastercard: * \"I\" (product type is Prepaid or Debit, or issuing country is in CEE/HGEM list) * \"N\" (otherwise) > Returned when you verify a card BIN or estimate costs, and only if payoutEligible is \"Y\" or \"D\". FundsAvailability string `json:"fundsAvailability,omitempty"` // Provides the more granular indication of why a transaction was refused. When a transaction fails with either \"Refused\", \"Restricted Card\", \"Transaction Not Permitted\", \"Not supported\" or \"DeclinedNon Generic\" refusalReason from the issuer, Adyen cross references its PSP-wide data for extra insight into the refusal reason. If an inferred refusal reason is available, the `inferredRefusalReason`, field is populated and the `refusalReason`, is set to \"Not Supported\". Possible values: * 3D Secure Mandated * Closed Account * ContAuth Not Supported * CVC Mandated * Ecommerce Not Allowed * Crossborder Not Supported * Card Updated * Low Authrate Bin * Non-reloadable prepaid card InferredRefusalReason string `json:"inferredRefusalReason,omitempty"` // Indicates if the card is used for business purposes only. IsCardCommercial string `json:"isCardCommercial,omitempty"` // The issuing country of the card based on the BIN list that Adyen maintains. Example: JP IssuerCountry string `json:"issuerCountry,omitempty"` // A Boolean value indicating whether a liability shift was offered for this payment. LiabilityShift string `json:"liabilityShift,omitempty"` // The `mcBankNetReferenceNumber`, is a minimum of six characters and a maximum of nine characters long. > Contact Support Team to enable this field. McBankNetReferenceNumber string `json:"mcBankNetReferenceNumber,omitempty"` // A code and message that issuers send to provide more details about the payment. This field is especially useful when implementing a retry logic for declined payments. Possible values: * **01: New account information available** * **02: Cannot approve at this time, try again later** * **03: Do not try again** * **04: Token requirements not fulfilled for this token type** * **21: Payment Cancellation** (only for Mastercard) MerchantAdviceCode string `json:"merchantAdviceCode,omitempty"` // The reference provided for the transaction. MerchantReference string `json:"merchantReference,omitempty"` // Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa. This contains either the Mastercard Trace ID or the Visa Transaction ID. NetworkTxReference string `json:"networkTxReference,omitempty"` // The owner name of a bank account. Only relevant for SEPA Direct Debit transactions. OwnerName string `json:"ownerName,omitempty"` // The Payment Account Reference (PAR) value links a network token with the underlying primary account number (PAN). The PAR value consists of 29 uppercase alphanumeric characters. PaymentAccountReference string `json:"paymentAccountReference,omitempty"` // The payment method used in the transaction. PaymentMethod string `json:"paymentMethod,omitempty"` // The Adyen sub-variant of the payment method used for the payment request. For more information, refer to [PaymentMethodVariant](https://docs.adyen.com/development-resources/paymentmethodvariant). Example: mcpro PaymentMethodVariant string `json:"paymentMethodVariant,omitempty"` // Indicates whether a payout is eligible or not for this card. Visa: * \"Y\" * \"N\" Mastercard: * \"Y\" (domestic and cross-border) * \"D\" (only domestic) * \"N\" (no MoneySend) * \"U\" (unknown) PayoutEligible string `json:"payoutEligible,omitempty"` // The response code from the Real Time Account Updater service. Possible return values are: * CardChanged * CardExpiryChanged * CloseAccount * ContactCardAccountHolder RealtimeAccountUpdaterStatus string `json:"realtimeAccountUpdaterStatus,omitempty"` // Message to be displayed on the terminal. ReceiptFreeText string `json:"receiptFreeText,omitempty"` // The recurring contract types applicable to the transaction. RecurringContractTypes string `json:"recurring.contractTypes,omitempty"` // The `pspReference`, of the first recurring payment that created the recurring detail. This functionality requires additional configuration on Adyen's end. To enable it, contact the Support Team. RecurringFirstPspReference string `json:"recurring.firstPspReference,omitempty"` // The reference that uniquely identifies the recurring transaction. RecurringRecurringDetailReference string `json:"recurring.recurringDetailReference,omitempty"` // The provided reference of the shopper for a recurring transaction. RecurringShopperReference string `json:"recurring.shopperReference,omitempty"` // The processing model used for the recurring transaction. RecurringProcessingModel string `json:"recurringProcessingModel,omitempty"` // If the payment is referred, this field is set to true. This field is unavailable if the payment is referred and is usually not returned with ecommerce transactions. Example: true Referred string `json:"referred,omitempty"` // Raw refusal reason received from the acquirer, where available. Example: AUTHORISED RefusalReasonRaw string `json:"refusalReasonRaw,omitempty"` // The amount of the payment request. RequestAmount string `json:"requestAmount,omitempty"` // The currency of the payment request. RequestCurrencyCode string `json:"requestCurrencyCode,omitempty"` // The shopper interaction type of the payment request. Example: Ecommerce ShopperInteraction string `json:"shopperInteraction,omitempty"` // The shopperReference passed in the payment request. Example: AdyenTestShopperXX ShopperReference string `json:"shopperReference,omitempty"` // The terminal ID used in a point-of-sale payment. Example: 06022622 TerminalId string `json:"terminalId,omitempty"` // A Boolean value indicating whether 3DS authentication was completed on this payment. Example: true ThreeDAuthenticated string `json:"threeDAuthenticated,omitempty"` // The raw 3DS authentication result from the card issuer. Example: N ThreeDAuthenticatedResponse string `json:"threeDAuthenticatedResponse,omitempty"` // A Boolean value indicating whether 3DS was offered for this payment. Example: true ThreeDOffered string `json:"threeDOffered,omitempty"` // The raw enrollment result from the 3DS directory services of the card schemes. Example: Y ThreeDOfferedResponse string `json:"threeDOfferedResponse,omitempty"` // The 3D Secure 2 version. ThreeDSVersion string `json:"threeDSVersion,omitempty"` // The `visaTransactionId`, has a fixed length of 15 numeric characters. > Contact Support Team to enable this field. VisaTransactionId string `json:"visaTransactionId,omitempty"` // The 3DS transaction ID of the 3DS session sent in notifications. The value is Base64-encoded and is returned for transactions with directoryResponse 'N' or 'Y'. If you want to submit the xid in your 3D Secure 1 request, use the `mpiData.xid`, field. Example: ODgxNDc2MDg2MDExODk5MAAAAAA= Xid string `json:"xid,omitempty"` }
ResponseAdditionalDataCommon struct for ResponseAdditionalDataCommon
type ResponseAdditionalDataDeliveryAddress ¶
type ResponseAdditionalDataDeliveryAddress struct { // The delivery address city passed in the payment request. DeliveryAddressCity string `json:"deliveryAddress.city,omitempty"` // The delivery address country passed in the payment request. Example: NL DeliveryAddressCountry string `json:"deliveryAddress.country,omitempty"` // The delivery address house number or name passed in the payment request. DeliveryAddressHouseNumberOrName string `json:"deliveryAddress.houseNumberOrName,omitempty"` // The delivery address postal code passed in the payment request. Example: 1011 DJ DeliveryAddressPostalCode string `json:"deliveryAddress.postalCode,omitempty"` // The delivery address state or province passed in the payment request. Example: NH DeliveryAddressStateOrProvince string `json:"deliveryAddress.stateOrProvince,omitempty"` // The delivery address street passed in the payment request. DeliveryAddressStreet string `json:"deliveryAddress.street,omitempty"` }
ResponseAdditionalDataDeliveryAddress struct for ResponseAdditionalDataDeliveryAddress
type ResponseAdditionalDataInstallments ¶
type ResponseAdditionalDataInstallments struct { // Type of installment. The value of `installmentType` should be **IssuerFinanced**. InstallmentPaymentDataInstallmentType string `json:"installmentPaymentData.installmentType,omitempty"` // Annual interest rate. InstallmentPaymentDataOptionItemNrAnnualPercentageRate string `json:"installmentPaymentData.option[itemNr].annualPercentageRate,omitempty"` // First Installment Amount in minor units. InstallmentPaymentDataOptionItemNrFirstInstallmentAmount string `json:"installmentPaymentData.option[itemNr].firstInstallmentAmount,omitempty"` // Installment fee amount in minor units. InstallmentPaymentDataOptionItemNrInstallmentFee string `json:"installmentPaymentData.option[itemNr].installmentFee,omitempty"` // Interest rate for the installment period. InstallmentPaymentDataOptionItemNrInterestRate string `json:"installmentPaymentData.option[itemNr].interestRate,omitempty"` // Maximum number of installments possible for this payment. InstallmentPaymentDataOptionItemNrMaximumNumberOfInstallments string `json:"installmentPaymentData.option[itemNr].maximumNumberOfInstallments,omitempty"` // Minimum number of installments possible for this payment. InstallmentPaymentDataOptionItemNrMinimumNumberOfInstallments string `json:"installmentPaymentData.option[itemNr].minimumNumberOfInstallments,omitempty"` // Total number of installments possible for this payment. InstallmentPaymentDataOptionItemNrNumberOfInstallments string `json:"installmentPaymentData.option[itemNr].numberOfInstallments,omitempty"` // Subsequent Installment Amount in minor units. InstallmentPaymentDataOptionItemNrSubsequentInstallmentAmount string `json:"installmentPaymentData.option[itemNr].subsequentInstallmentAmount,omitempty"` // Total amount in minor units. InstallmentPaymentDataOptionItemNrTotalAmountDue string `json:"installmentPaymentData.option[itemNr].totalAmountDue,omitempty"` // Possible values: * PayInInstallmentsOnly * PayInFullOnly * PayInFullOrInstallments InstallmentPaymentDataPaymentOptions string `json:"installmentPaymentData.paymentOptions,omitempty"` // The number of installments that the payment amount should be charged with. Example: 5 > Only relevant for card payments in countries that support installments. InstallmentsValue string `json:"installments.value,omitempty"` }
ResponseAdditionalDataInstallments struct for ResponseAdditionalDataInstallments
type ResponseAdditionalDataNetworkTokens ¶
type ResponseAdditionalDataNetworkTokens struct { // Indicates whether a network token is available for the specified card. NetworkTokenAvailable string `json:"networkToken.available,omitempty"` // The Bank Identification Number of a tokenized card, which is the first six digits of a card number. NetworkTokenBin string `json:"networkToken.bin,omitempty"` // The last four digits of a network token. NetworkTokenTokenSummary string `json:"networkToken.tokenSummary,omitempty"` }
ResponseAdditionalDataNetworkTokens struct for ResponseAdditionalDataNetworkTokens
type ResponseAdditionalDataOpi ¶
type ResponseAdditionalDataOpi struct { // Returned in the response if you included `opi.includeTransToken: true` in an ecommerce payment request. This contains an Oracle Payment Interface token that you can store in your Oracle Opera database to identify tokenized ecommerce transactions. For more information and required settings, see [Oracle Opera](https://docs.adyen.com/plugins/oracle-opera#opi-token-ecommerce). OpiTransToken string `json:"opi.transToken,omitempty"` }
ResponseAdditionalDataOpi struct for ResponseAdditionalDataOpi
type ResponseAdditionalDataPayPal ¶
type ResponseAdditionalDataPayPal struct { // The buyer's PayPal account email address. Example: paypaltest@adyen.com PaypalEmail string `json:"paypalEmail,omitempty"` // The buyer's PayPal ID. Example: LF5HCWWBRV2KL PaypalPayerId string `json:"paypalPayerId,omitempty"` // The buyer's country of residence. Example: NL PaypalPayerResidenceCountry string `json:"paypalPayerResidenceCountry,omitempty"` // The status of the buyer's PayPal account. Example: unverified PaypalPayerStatus string `json:"paypalPayerStatus,omitempty"` // The eligibility for PayPal Seller Protection for this payment. Example: Ineligible PaypalProtectionEligibility string `json:"paypalProtectionEligibility,omitempty"` }
ResponseAdditionalDataPayPal struct for ResponseAdditionalDataPayPal
type ResponseAdditionalDataSepa ¶
type ResponseAdditionalDataSepa struct { // The transaction signature date. Format: yyyy-MM-dd SepadirectdebitDateOfSignature string `json:"sepadirectdebit.dateOfSignature,omitempty"` // Its value corresponds to the pspReference value of the transaction. SepadirectdebitMandateId string `json:"sepadirectdebit.mandateId,omitempty"` // This field can take one of the following values: * OneOff: (OOFF) Direct debit instruction to initiate exactly one direct debit transaction. * First: (FRST) Initial/first collection in a series of direct debit instructions. * Recurring: (RCUR) Direct debit instruction to carry out regular direct debit transactions initiated by the creditor. * Final: (FNAL) Last/final collection in a series of direct debit instructions. Example: OOFF SepadirectdebitSequenceType string `json:"sepadirectdebit.sequenceType,omitempty"` }
ResponseAdditionalDataSepa struct for ResponseAdditionalDataSepa
type ResponsePaymentMethod ¶
type ResponsePaymentMethod struct { // The card brand. Only returned for card payments. Brand string `json:"brand,omitempty"` // The payment method type. Type string `json:"type,omitempty"` }
ResponsePaymentMethod struct for ResponsePaymentMethod
type RiskData ¶
type RiskData struct { // Contains client-side data, like the device fingerprint, cookies, and specific browser settings. ClientData string `json:"clientData,omitempty"` // Any custom fields used as part of the input to configured risk rules. CustomFields map[string]string `json:"customFields,omitempty"` // An integer value that is added to the normal fraud score. The value can be either positive or negative. FraudOffset int32 `json:"fraudOffset,omitempty"` // The risk profile to assign to this payment. When left empty, the merchant-level account's default risk profile will be applied. ProfileReference string `json:"profileReference,omitempty"` }
RiskData struct for RiskData
type SDKEphemPubKey ¶
type SDKEphemPubKey struct { // The `crv` value as received from the 3D Secure 2 SDK. Crv string `json:"crv,omitempty"` // The `kty` value as received from the 3D Secure 2 SDK. Kty string `json:"kty,omitempty"` // The `x` value as received from the 3D Secure 2 SDK. X string `json:"x,omitempty"` // The `y` value as received from the 3D Secure 2 SDK. Y string `json:"y,omitempty"` }
SDKEphemPubKey struct for SDKEphemPubKey
type SamsungPayDetails ¶
type SamsungPayDetails struct { // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // The payload you received from the Samsung Pay SDK response. SamsungPayToken string `json:"samsungPayToken"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **samsungpay** Type string `json:"type,omitempty"` }
SamsungPayDetails struct for SamsungPayDetails
type SepaDirectDebitDetails ¶
type SepaDirectDebitDetails struct { // The International Bank Account Number (IBAN). Iban string `json:"iban"` // The name of the bank account holder. OwnerName string `json:"ownerName"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **sepadirectdebit** Type string `json:"type,omitempty"` }
SepaDirectDebitDetails struct for SepaDirectDebitDetails
type ServiceError ¶
type ServiceError struct { // Contains additional information about the payment. Some data fields are included only if you select them first: Go to **Customer Area** > **Account** > **API URLs**. AdditionalData map[string]string `json:"additionalData,omitempty"` // The error code mapped to the error message. ErrorCode string `json:"errorCode,omitempty"` // The category of the error. ErrorType string `json:"errorType,omitempty"` // A short explanation of the issue. Message string `json:"message,omitempty"` // The PSP reference of the payment. PspReference string `json:"pspReference,omitempty"` // The HTTP response status. Status int32 `json:"status,omitempty"` }
ServiceError struct for ServiceError
type ServiceError2 ¶
type ServiceError2 struct { ErrorCode string `json:"errorCode,omitempty"` ErrorType string `json:"errorType,omitempty"` Message string `json:"message,omitempty"` PspReference string `json:"pspReference,omitempty"` }
ServiceError2 struct for ServiceError2
type ShopperInput ¶
type ShopperInput struct { // Specifies visibility of billing address fields. Permitted values: * editable * hidden * readOnly BillingAddress string `json:"billingAddress,omitempty"` // Specifies visibility of delivery address fields. Permitted values: * editable * hidden * readOnly DeliveryAddress string `json:"deliveryAddress,omitempty"` // Specifies visibility of personal details. Permitted values: * editable * hidden * readOnly PersonalDetails string `json:"personalDetails,omitempty"` }
ShopperInput struct for ShopperInput
type ShopperInteractionDevice ¶
type ShopperInteractionDevice struct { // Locale on the shopper interaction device. Locale string `json:"locale,omitempty"` // Operating system running on the shopper interaction device. Os string `json:"os,omitempty"` // Version of the operating system on the shopper interaction device. OsVersion string `json:"osVersion,omitempty"` }
ShopperInteractionDevice struct for ShopperInteractionDevice
type Split ¶
type Split struct { // Unique identifier of the account where the split amount should be sent. This is required if `type` is **MarketPlace** or **BalanceAccount**. Account string `json:"account,omitempty"` Amount SplitAmount `json:"amount"` // A description of this split. Description string `json:"description,omitempty"` // Your reference for the split, which you can use to link the split to other operations such as captures and refunds. This is required if `type` is **MarketPlace** or **BalanceAccount**. For the other types, we also recommend sending a reference so you can reconcile the split and the associated payment in the transaction overview and in the reports. If the reference is not provided, the split is reported as part of the aggregated [TransferBalance record type](https://docs.adyen.com/reporting/marketpay-payments-accounting-report) in Adyen for Platforms. Reference string `json:"reference,omitempty"` // The type of split. Possible values: **Default**, **PaymentFee**, **VAT**, **Commission**, **MarketPlace**, **BalanceAccount**, **Remainder**. Type string `json:"type"` }
Split struct for Split
type SplitAmount ¶
type SplitAmount struct { // The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes). If this value is not provided, the currency in which the payment is made will be used. Currency string `json:"currency,omitempty"` // The amount in [minor units](https://docs.adyen.com/development-resources/currency-codes). Value int64 `json:"value"` }
SplitAmount struct for SplitAmount
type StandalonePaymentCancelResource ¶
type StandalonePaymentCancelResource struct { // The merchant account that is used to process the payment. MerchantAccount string `json:"merchantAccount"` // The [`reference`](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/post/payments__reqParam_reference) of the payment to cancel. PaymentReference string `json:"paymentReference"` // Adyen's 16-character reference associated with the cancel request. PspReference string `json:"pspReference"` // Your reference for the cancel request. Reference string `json:"reference,omitempty"` // The status of your request. This will always have the value **received**. Status string `json:"status"` }
StandalonePaymentCancelResource struct for StandalonePaymentCancelResource
type StoredDetails ¶
type StoredDetails struct { Bank *BankAccount `json:"bank,omitempty"` Card *Card `json:"card,omitempty"` // The email associated with stored payment details. EmailAddress string `json:"emailAddress,omitempty"` }
StoredDetails struct for StoredDetails
type StoredPaymentMethod ¶
type StoredPaymentMethod struct { // The brand of the card. Brand string `json:"brand,omitempty"` // The month the card expires. ExpiryMonth string `json:"expiryMonth,omitempty"` // The last two digits of the year the card expires. For example, **22** for the year 2022. ExpiryYear string `json:"expiryYear,omitempty"` // The unique payment method code. HolderName string `json:"holderName,omitempty"` // The IBAN of the bank account. Iban string `json:"iban,omitempty"` // A unique identifier of this stored payment method. Id string `json:"id,omitempty"` // The last four digits of the PAN. LastFour string `json:"lastFour,omitempty"` // The display name of the stored payment method. Name string `json:"name,omitempty"` // Returned in the response if you are not tokenizing with Adyen and are using the Merchant-initiated transactions (MIT) framework from Mastercard or Visa. This contains either the Mastercard Trace ID or the Visa Transaction ID. NetworkTxReference string `json:"networkTxReference,omitempty"` // The name of the bank account holder. OwnerName string `json:"ownerName,omitempty"` // The shopper’s email address. ShopperEmail string `json:"shopperEmail,omitempty"` // The supported shopper interactions for this stored payment method. SupportedShopperInteractions []string `json:"supportedShopperInteractions,omitempty"` // The type of payment method. Type string `json:"type,omitempty"` }
StoredPaymentMethod struct for StoredPaymentMethod
type StoredPaymentMethodDetails ¶
type StoredPaymentMethodDetails struct { // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // The payment method type. Type string `json:"type,omitempty"` }
StoredPaymentMethodDetails struct for StoredPaymentMethodDetails
type SubInputDetail ¶
type SubInputDetail struct { // Configuration parameters for the required input. Configuration map[string]string `json:"configuration,omitempty"` // In case of a select, the items to choose from. Items *[]Item `json:"items,omitempty"` // The value to provide in the result. Key string `json:"key,omitempty"` // True if this input is optional to provide. Optional bool `json:"optional,omitempty"` // The type of the required input. Type string `json:"type,omitempty"` // The value can be pre-filled, if available. Value string `json:"value,omitempty"` }
SubInputDetail struct for SubInputDetail
type SubscriptionDetails ¶
type SubscriptionDetails struct { // The billing amount of the recurring transactions. Amount string `json:"amount"` // The limitation rule of the billing amount. Possible values: * `max`: The transaction amount can not exceed the `amount`. * `exact`: The transaction amount should be the same as the `amount`. AmountRule string `json:"amountRule,omitempty"` // The rule to specify the period, within which the recurring debit can happen, relative to the mandate recurring date. Possible values: * `on`: On a specific date. * `before`: Before and on a specific date. * `after`: On and after a specific date. BillingAttemptsRule string `json:"billingAttemptsRule,omitempty"` // The number of the day, on which the recurring debit can happen. Should be within the same calendar month as the mandate recurring date. Possible values: 1-31 based on the `frequency`. BillingDay string `json:"billingDay,omitempty"` // End date of the billing plan, in YYYY-MM-DD format. EndAt string `json:"endAt"` // The frequency with which a shopper should be charged. Possible values: daily, weekly, biWeekly, monthly, quarterly, halfYearly, yearly. Frequency string `json:"frequency"` // The message shown by UPI to the shopper on the approval screen. Remarks string `json:"remarks,omitempty"` // Start date of the billing plan, in YYYY-MM-DD format. By default, the transaction date. StartAt string `json:"startAt,omitempty"` }
SubscriptionDetails struct for SubscriptionDetails
type ThreeDS2RequestData ¶
type ThreeDS2RequestData struct { AcctInfo *AcctInfo `json:"acctInfo,omitempty"` // Indicates the type of account. For example, for a multi-account card product. Length: 2 characters. Allowed values: * **01** — Not applicable * **02** — Credit * **03** — Debit AcctType string `json:"acctType,omitempty"` // Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The acquiring BIN enrolled for 3D Secure 2. This string should match the value that you will use in the authorisation. Use 123456 on the Test platform. AcquirerBIN string `json:"acquirerBIN,omitempty"` // Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The merchantId that is enrolled for 3D Secure 2 by the merchant's acquirer. This string should match the value that you will use in the authorisation. Use 123456 on the Test platform. AcquirerMerchantID string `json:"acquirerMerchantID,omitempty"` // Indicates whether the Cardholder Shipping Address and Cardholder Billing Address are the same. Allowed values: * **Y** — Shipping Address matches Billing Address. * **N** — Shipping Address does not match Billing Address. AddrMatch string `json:"addrMatch,omitempty"` // If set to true, you will only perform the [3D Secure 2 authentication](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only), and not the payment authorisation. AuthenticationOnly bool `json:"authenticationOnly,omitempty"` // Possibility to specify a preference for receiving a challenge from the issuer. Allowed values: * `noPreference` * `requestNoChallenge` * `requestChallenge` * `requestChallengeAsMandate` ChallengeIndicator string `json:"challengeIndicator,omitempty"` // The environment of the shopper. Allowed values: * `app` * `browser` DeviceChannel string `json:"deviceChannel"` DeviceRenderOptions *DeviceRenderOptions `json:"deviceRenderOptions,omitempty"` HomePhone *Phone `json:"homePhone,omitempty"` // Required for merchants that have been enrolled for 3D Secure 2 by another party than Adyen, mostly [authentication-only integrations](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The `mcc` is a four-digit code with which the previously given `acquirerMerchantID` is registered at the scheme. Mcc string `json:"mcc,omitempty"` // Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only). The merchant name that the issuer presents to the shopper if they get a challenge. We recommend to use the same value that you will use in the authorization. Maximum length is 40 characters. > Optional for a [full 3D Secure 2 integration](https://docs.adyen.com/online-payments/3d-secure/native-3ds2/api-integration). Use this field if you are enrolled for 3D Secure 2 with us and want to override the merchant name already configured on your account. MerchantName string `json:"merchantName,omitempty"` // The `messageVersion` value indicating the 3D Secure 2 protocol version. MessageVersion string `json:"messageVersion,omitempty"` MobilePhone *Phone `json:"mobilePhone,omitempty"` // URL to where the issuer should send the `CRes`. Required if you are not using components for `channel` **Web** or if you are using classic integration `deviceChannel` **browser**. NotificationURL string `json:"notificationURL,omitempty"` // Value **true** indicates that the transaction was de-tokenised prior to being received by the ACS. PayTokenInd bool `json:"payTokenInd,omitempty"` // Indicates the type of payment for which an authentication is requested (message extension) PaymentAuthenticationUseCase string `json:"paymentAuthenticationUseCase,omitempty"` // Indicates the maximum number of authorisations permitted for instalment payments. Length: 1–3 characters. PurchaseInstalData string `json:"purchaseInstalData,omitempty"` // Date after which no further authorisations shall be performed. Format: YYYYMMDD RecurringExpiry string `json:"recurringExpiry,omitempty"` // Indicates the minimum number of days between authorisations. Maximum length: 4 characters. RecurringFrequency string `json:"recurringFrequency,omitempty"` // The `sdkAppID` value as received from the 3D Secure 2 SDK. Required for `deviceChannel` set to **app**. SdkAppID string `json:"sdkAppID,omitempty"` // The `sdkEncData` value as received from the 3D Secure 2 SDK. Required for `deviceChannel` set to **app**. SdkEncData string `json:"sdkEncData,omitempty"` SdkEphemPubKey *SDKEphemPubKey `json:"sdkEphemPubKey,omitempty"` // The maximum amount of time in minutes for the 3D Secure 2 authentication process. Optional and only for `deviceChannel` set to **app**. Defaults to **60** minutes. SdkMaxTimeout int32 `json:"sdkMaxTimeout,omitempty"` // The `sdkReferenceNumber` value as received from the 3D Secure 2 SDK. Only for `deviceChannel` set to **app**. SdkReferenceNumber string `json:"sdkReferenceNumber,omitempty"` // The `sdkTransID` value as received from the 3D Secure 2 SDK. Only for `deviceChannel` set to **app**. SdkTransID string `json:"sdkTransID,omitempty"` // Version of the 3D Secure 2 mobile SDK. Only for `deviceChannel` set to **app**. SdkVersion string `json:"sdkVersion,omitempty"` // Completion indicator for the device fingerprinting. ThreeDSCompInd string `json:"threeDSCompInd,omitempty"` // Indicates the type of Authentication request. ThreeDSRequestorAuthenticationInd string `json:"threeDSRequestorAuthenticationInd,omitempty"` ThreeDSRequestorAuthenticationInfo *ThreeDSRequestorAuthenticationInfo `json:"threeDSRequestorAuthenticationInfo,omitempty"` // Indicates whether a challenge is requested for this transaction. Possible values: * **01** — No preference * **02** — No challenge requested * **03** — Challenge requested (3DS Requestor preference) * **04** — Challenge requested (Mandate) * **05** — No challenge (transactional risk analysis is already performed) ThreeDSRequestorChallengeInd string `json:"threeDSRequestorChallengeInd,omitempty"` // Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only) for Visa. Unique 3D Secure requestor identifier assigned by the Directory Server when you enrol for 3D Secure 2. ThreeDSRequestorID string `json:"threeDSRequestorID,omitempty"` // Required for [authentication-only integration](https://docs.adyen.com/online-payments/3d-secure/other-3ds-flows/authentication-only) for Visa. Unique 3D Secure requestor name assigned by the Directory Server when you enrol for 3D Secure 2. ThreeDSRequestorName string `json:"threeDSRequestorName,omitempty"` ThreeDSRequestorPriorAuthenticationInfo *ThreeDSRequestorPriorAuthenticationInfo `json:"threeDSRequestorPriorAuthenticationInfo,omitempty"` // URL of the (customer service) website that will be shown to the shopper in case of technical errors during the 3D Secure 2 process. ThreeDSRequestorURL string `json:"threeDSRequestorURL,omitempty"` // Identifies the type of transaction being authenticated. Length: 2 characters. Allowed values: * **01** — Goods/Service Purchase * **03** — Check Acceptance * **10** — Account Funding * **11** — Quasi-Cash Transaction * **28** — Prepaid Activation and Load TransType string `json:"transType,omitempty"` // Identify the type of the transaction being authenticated. TransactionType string `json:"transactionType,omitempty"` // The `whiteListStatus` value returned from a previous 3D Secure 2 transaction, only applicable for 3D Secure 2 protocol version 2.2.0. WhiteListStatus string `json:"whiteListStatus,omitempty"` WorkPhone *Phone `json:"workPhone,omitempty"` }
ThreeDS2RequestData struct for ThreeDS2RequestData
type ThreeDS2ResponseData ¶
type ThreeDS2ResponseData struct { AcsChallengeMandated string `json:"acsChallengeMandated,omitempty"` AcsOperatorID string `json:"acsOperatorID,omitempty"` AcsReferenceNumber string `json:"acsReferenceNumber,omitempty"` AcsSignedContent string `json:"acsSignedContent,omitempty"` AcsTransID string `json:"acsTransID,omitempty"` AcsURL string `json:"acsURL,omitempty"` AuthenticationType string `json:"authenticationType,omitempty"` CardHolderInfo string `json:"cardHolderInfo,omitempty"` CavvAlgorithm string `json:"cavvAlgorithm,omitempty"` ChallengeIndicator string `json:"challengeIndicator,omitempty"` DsReferenceNumber string `json:"dsReferenceNumber,omitempty"` DsTransID string `json:"dsTransID,omitempty"` ExemptionIndicator string `json:"exemptionIndicator,omitempty"` MessageVersion string `json:"messageVersion,omitempty"` RiskScore string `json:"riskScore,omitempty"` SdkEphemPubKey string `json:"sdkEphemPubKey,omitempty"` ThreeDSServerTransID string `json:"threeDSServerTransID,omitempty"` TransStatus string `json:"transStatus,omitempty"` TransStatusReason string `json:"transStatusReason,omitempty"` }
ThreeDS2ResponseData struct for ThreeDS2ResponseData
type ThreeDS2Result ¶
type ThreeDS2Result struct { // The `authenticationValue` value as defined in the 3D Secure 2 specification. AuthenticationValue string `json:"authenticationValue,omitempty"` // The algorithm used by the ACS to calculate the authentication value, only for Cartes Bancaires integrations. CavvAlgorithm string `json:"cavvAlgorithm,omitempty"` // Indicator informing the Access Control Server (ACS) and the Directory Server (DS) that the authentication has been cancelled. For possible values, refer to [3D Secure API reference](https://docs.adyen.com/online-payments/3d-secure/api-reference#mpidata). ChallengeCancel string `json:"challengeCancel,omitempty"` // Specifies a preference for receiving a challenge from the issuer. Allowed values: * `noPreference` * `requestNoChallenge` * `requestChallenge` * `requestChallengeAsMandate` ChallengeIndicator string `json:"challengeIndicator,omitempty"` // The `dsTransID` value as defined in the 3D Secure 2 specification. DsTransID string `json:"dsTransID,omitempty"` // The `eci` value as defined in the 3D Secure 2 specification. Eci string `json:"eci,omitempty"` // Indicates the exemption type that was applied by the issuer to the authentication, if exemption applied. Allowed values: * `lowValue` * `secureCorporate` * `trustedBeneficiary` * `transactionRiskAnalysis` ExemptionIndicator string `json:"exemptionIndicator,omitempty"` // The `messageVersion` value as defined in the 3D Secure 2 specification. MessageVersion string `json:"messageVersion,omitempty"` // Risk score calculated by Cartes Bancaires Directory Server (DS). RiskScore string `json:"riskScore,omitempty"` // The `threeDSServerTransID` value as defined in the 3D Secure 2 specification. ThreeDSServerTransID string `json:"threeDSServerTransID,omitempty"` // The `timestamp` value of the 3D Secure 2 authentication. Timestamp string `json:"timestamp,omitempty"` // The `transStatus` value as defined in the 3D Secure 2 specification. TransStatus string `json:"transStatus,omitempty"` // Provides information on why the `transStatus` field has the specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values). TransStatusReason string `json:"transStatusReason,omitempty"` // The `whiteListStatus` value as defined in the 3D Secure 2 specification. WhiteListStatus string `json:"whiteListStatus,omitempty"` }
ThreeDS2Result struct for ThreeDS2Result
type ThreeDSRequestData ¶
type ThreeDSRequestData struct { // Indicates if [native 3D Secure authentication](https://docs.adyen.com/online-payments/3d-secure/native-3ds2) should be used when available. Possible values: * **preferred**: Use native 3D Secure authentication when available. NativeThreeDS string `json:"nativeThreeDS,omitempty"` // The version of 3D Secure to use. Possible values: * **2.1.0** * **2.2.0** ThreeDSVersion string `json:"threeDSVersion,omitempty"` }
ThreeDSRequestData struct for ThreeDSRequestData
type ThreeDSRequestorAuthenticationInfo ¶
type ThreeDSRequestorAuthenticationInfo struct { // Data that documents and supports a specific authentication process. Maximum length: 2048 bytes. ThreeDSReqAuthData string `json:"threeDSReqAuthData,omitempty"` // Mechanism used by the Cardholder to authenticate to the 3DS Requestor. Allowed values: * **01** — No 3DS Requestor authentication occurred (for example, cardholder “logged in” as guest). * **02** — Login to the cardholder account at the 3DS Requestor system using 3DS Requestor’s own credentials. * **03** — Login to the cardholder account at the 3DS Requestor system using federated ID. * **04** — Login to the cardholder account at the 3DS Requestor system using issuer credentials. * **05** — Login to the cardholder account at the 3DS Requestor system using third-party authentication. * **06** — Login to the cardholder account at the 3DS Requestor system using FIDO Authenticator. ThreeDSReqAuthMethod string `json:"threeDSReqAuthMethod,omitempty"` // Date and time in UTC of the cardholder authentication. Format: YYYYMMDDHHMM ThreeDSReqAuthTimestamp string `json:"threeDSReqAuthTimestamp,omitempty"` }
ThreeDSRequestorAuthenticationInfo struct for ThreeDSRequestorAuthenticationInfo
type ThreeDSRequestorPriorAuthenticationInfo ¶
type ThreeDSRequestorPriorAuthenticationInfo struct { // Data that documents and supports a specific authentication process. Maximum length: 2048 bytes. ThreeDSReqPriorAuthData string `json:"threeDSReqPriorAuthData,omitempty"` // Mechanism used by the Cardholder to previously authenticate to the 3DS Requestor. Allowed values: * **01** — Frictionless authentication occurred by ACS. * **02** — Cardholder challenge occurred by ACS. * **03** — AVS verified. * **04** — Other issuer methods. ThreeDSReqPriorAuthMethod string `json:"threeDSReqPriorAuthMethod,omitempty"` // Date and time in UTC of the prior cardholder authentication. Format: YYYYMMDDHHMM ThreeDSReqPriorAuthTimestamp string `json:"threeDSReqPriorAuthTimestamp,omitempty"` // This data element provides additional information to the ACS to determine the best approach for handing a request. This data element contains an ACS Transaction ID for a prior authenticated transaction. For example, the first recurring transaction that was authenticated with the cardholder. Length: 30 characters. ThreeDSReqPriorRef string `json:"threeDSReqPriorRef,omitempty"` }
ThreeDSRequestorPriorAuthenticationInfo struct for ThreeDSRequestorPriorAuthenticationInfo
type ThreeDSecureData ¶
type ThreeDSecureData struct { // In 3D Secure 1, the authentication response if the shopper was redirected. In 3D Secure 2, this is the `transStatus` from the challenge result. If the transaction was frictionless, omit this parameter. AuthenticationResponse string `json:"authenticationResponse,omitempty"` // The cardholder authentication value (base64 encoded, 20 bytes in a decoded form). Cavv string `json:"cavv,omitempty"` // The CAVV algorithm used. Include this only for 3D Secure 1. CavvAlgorithm string `json:"cavvAlgorithm,omitempty"` // Indicator informing the Access Control Server (ACS) and the Directory Server (DS) that the authentication has been cancelled. For possible values, refer to [3D Secure API reference](https://docs.adyen.com/online-payments/3d-secure/api-reference#mpidata). ChallengeCancel string `json:"challengeCancel,omitempty"` // In 3D Secure 1, this is the enrollment response from the 3D directory server. In 3D Secure 2, this is the `transStatus` from the `ARes`. DirectoryResponse string `json:"directoryResponse,omitempty"` // Supported for 3D Secure 2. The unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction. DsTransID string `json:"dsTransID,omitempty"` // The electronic commerce indicator. Eci string `json:"eci,omitempty"` // Risk score calculated by Directory Server (DS). Required for Cartes Bancaires integrations. RiskScore string `json:"riskScore,omitempty"` // The version of the 3D Secure protocol. ThreeDSVersion string `json:"threeDSVersion,omitempty"` // Network token authentication verification value (TAVV). The network token cryptogram. TokenAuthenticationVerificationValue string `json:"tokenAuthenticationVerificationValue,omitempty"` // Provides information on why the `transStatus` field has the specified value. For possible values, refer to [our docs](https://docs.adyen.com/online-payments/3d-secure/api-reference#possible-transstatusreason-values). TransStatusReason string `json:"transStatusReason,omitempty"` // Supported for 3D Secure 1. The transaction identifier (Base64-encoded, 20 bytes in a decoded form). Xid string `json:"xid,omitempty"` }
ThreeDSecureData struct for ThreeDSecureData
type UpdatePaymentLinkRequest ¶
type UpdatePaymentLinkRequest struct { // Status of the payment link. Possible values: * **expired** Status string `json:"status"` }
UpdatePaymentLinkRequest struct for UpdatePaymentLinkRequest
type UpiCollectDetails ¶
type UpiCollectDetails struct { // The sequence number for the debit. For example, send **2** if this is the second debit for the subscription. The sequence number is included in the notification sent to the shopper. BillingSequenceNumber string `json:"billingSequenceNumber"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only. ShopperNotificationReference string `json:"shopperNotificationReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **upi_collect** Type string `json:"type"` // The virtual payment address for UPI. VirtualPaymentAddress string `json:"virtualPaymentAddress,omitempty"` }
UpiCollectDetails struct for UpiCollectDetails
type UpiDetails ¶
type UpiDetails struct { // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // The `shopperNotificationReference` returned in the response when you requested to notify the shopper. Used for recurring payment only. ShopperNotificationReference string `json:"shopperNotificationReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **upi** Type string `json:"type"` // The virtual payment address for UPI. VirtualPaymentAddress string `json:"virtualPaymentAddress,omitempty"` }
UpiDetails struct for UpiDetails
type UpiIntentDetails ¶
type UpiIntentDetails struct { // **upi_intent** Type string `json:"type"` }
UpiIntentDetails struct for UpiIntentDetails
type VippsDetails ¶
type VippsDetails struct { // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` TelephoneNumber string `json:"telephoneNumber"` // **vipps** Type string `json:"type,omitempty"` }
VippsDetails struct for VippsDetails
type VisaCheckoutDetails ¶
type VisaCheckoutDetails struct { // The funding source that should be used when multiple sources are available. For Brazilian combo cards, by default the funding source is credit. To use debit, set this value to **debit**. FundingSource string `json:"fundingSource,omitempty"` // **visacheckout** Type string `json:"type,omitempty"` // The Visa Click to Pay Call ID value. When your shopper selects a payment and/or a shipping address from Visa Click to Pay, you will receive a Visa Click to Pay Call ID. VisaCheckoutCallId string `json:"visaCheckoutCallId"` }
VisaCheckoutDetails struct for VisaCheckoutDetails
type WeChatPayDetails ¶
type WeChatPayDetails struct { // **wechatpay** Type string `json:"type,omitempty"` }
WeChatPayDetails struct for WeChatPayDetails
type WeChatPayMiniProgramDetails ¶
type WeChatPayMiniProgramDetails struct { AppId string `json:"appId,omitempty"` Openid string `json:"openid,omitempty"` // **wechatpayMiniProgram** Type string `json:"type,omitempty"` }
WeChatPayMiniProgramDetails struct for WeChatPayMiniProgramDetails
type ZipDetails ¶
type ZipDetails struct { // Set this to **true** if the shopper would like to pick up and collect their order, instead of having the goods delivered to them. ClickAndCollect string `json:"clickAndCollect,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. RecurringDetailReference string `json:"recurringDetailReference,omitempty"` // This is the `recurringDetailReference` returned in the response when you created the token. StoredPaymentMethodId string `json:"storedPaymentMethodId,omitempty"` // **zip** Type string `json:"type,omitempty"` }
ZipDetails struct for ZipDetails
Source Files ¶
- api_classic_checkout_sdk.go
- api_default.go
- api_modifications.go
- api_orders.go
- api_payment_links.go
- api_payments.go
- api_utility.go
- model_account_info.go
- model_acct_info.go
- model_ach_details.go
- model_additional_data3_d_secure.go
- model_additional_data_airline.go
- model_additional_data_car_rental.go
- model_additional_data_common.go
- model_additional_data_level23.go
- model_additional_data_lodging.go
- model_additional_data_open_invoice.go
- model_additional_data_opi.go
- model_additional_data_ratepay.go
- model_additional_data_retry.go
- model_additional_data_risk.go
- model_additional_data_risk_standalone.go
- model_additional_data_sub_merchant.go
- model_additional_data_temporary_services.go
- model_additional_data_wallets.go
- model_address.go
- model_afterpay_details.go
- model_amazon_pay_details.go
- model_amount.go
- model_android_pay_details.go
- model_apple_pay_details.go
- model_application_info.go
- model_authentication_data.go
- model_avs.go
- model_bacs_direct_debit_details.go
- model_bank_account.go
- model_bill_desk_details.go
- model_bill_desk_online_details.go
- model_bill_desk_wallet_details.go
- model_blik_details.go
- model_browser_info.go
- model_card.go
- model_card_brand_details.go
- model_card_details.go
- model_card_details_request.go
- model_card_details_response.go
- model_cellulant_details.go
- model_checkout_await_action.go
- model_checkout_balance_check_request.go
- model_checkout_balance_check_response.go
- model_checkout_bank_transfer_action.go
- model_checkout_cancel_order_request.go
- model_checkout_cancel_order_response.go
- model_checkout_create_order_request.go
- model_checkout_create_order_response.go
- model_checkout_donation_action.go
- model_checkout_one_time_passcode_action.go
- model_checkout_order.go
- model_checkout_order_response.go
- model_checkout_payments_action.go
- model_checkout_qr_code_action.go
- model_checkout_redirect_action.go
- model_checkout_sdk_action.go
- model_checkout_three_ds2_action.go
- model_checkout_three_ds2_challenge_action.go
- model_checkout_three_ds2_finger_print_action.go
- model_checkout_utility_request.go
- model_checkout_utility_response.go
- model_checkout_voucher_action.go
- model_common_field.go
- model_company.go
- model_configuration.go
- model_create_checkout_session_request.go
- model_create_checkout_session_response.go
- model_create_payment_amount_update_request.go
- model_create_payment_cancel_request.go
- model_create_payment_capture_request.go
- model_create_payment_link_request.go
- model_create_payment_link_response.go
- model_create_payment_refund_request.go
- model_create_payment_reversal_request.go
- model_create_standalone_payment_cancel_request.go
- model_details_request.go
- model_device_render_options.go
- model_doku_details.go
- model_donation_response.go
- model_dotpay_details.go
- model_dragonpay_details.go
- model_econtext_voucher_details.go
- model_entercash_details.go
- model_external_platform.go
- model_forex_quote.go
- model_fraud_check_result.go
- model_fraud_result.go
- model_generic_issuer_payment_method_details.go
- model_giropay_details.go
- model_google_pay_details.go
- model_ideal_details.go
- model_input_detail.go
- model_installment_option.go
- model_installments.go
- model_installments2.go
- model_installments_number.go
- model_item.go
- model_klarna_details.go
- model_lian_lian_pay_details.go
- model_line_item.go
- model_mandate.go
- model_masterpass_details.go
- model_mbway_details.go
- model_merchant_device.go
- model_merchant_risk_indicator.go
- model_mobile_pay_details.go
- model_mol_pay_details.go
- model_name.go
- model_open_invoice_details.go
- model_pay_pal_details.go
- model_pay_u_upi_details.go
- model_pay_with_google_details.go
- model_payment_amount_update_resource.go
- model_payment_cancel_resource.go
- model_payment_capture_resource.go
- model_payment_completion_details.go
- model_payment_details.go
- model_payment_details_response.go
- model_payment_donation_request.go
- model_payment_link_response.go
- model_payment_method.go
- model_payment_method_ach.go
- model_payment_method_amazon_pay.go
- model_payment_method_android_pay.go
- model_payment_method_apple_pay.go
- model_payment_method_card.go
- model_payment_method_dotpay.go
- model_payment_method_dragonpay_e_banking.go
- model_payment_method_dragonpay_otc_banking.go
- model_payment_method_dragonpay_otc_non_banking.go
- model_payment_method_dragonpay_otc_philippines.go
- model_payment_method_giropay.go
- model_payment_method_group.go
- model_payment_method_i_deal.go
- model_payment_method_issuer.go
- model_payment_method_lian_lian_pay_ebanking_credit.go
- model_payment_method_lian_lian_pay_ebanking_debit.go
- model_payment_method_lian_lian_pay_ebanking_enterprise.go
- model_payment_method_mo_lpay_e_banking_malaysia.go
- model_payment_method_mo_lpay_e_banking_thailand.go
- model_payment_method_mo_lpay_e_banking_vietnam.go
- model_payment_method_pay_with_google.go
- model_payment_method_qiwi_wallet.go
- model_payment_method_samsungpay.go
- model_payment_method_scheme_gift_card.go
- model_payment_method_sepa_direct_debit.go
- model_payment_method_vipps.go
- model_payment_methods_group.go
- model_payment_methods_request.go
- model_payment_methods_response.go
- model_payment_refund_resource.go
- model_payment_request.go
- model_payment_request_helper.go
- model_payment_response.go
- model_payment_response_helper.go
- model_payment_reversal_resource.go
- model_payment_setup_request.go
- model_payment_setup_response.go
- model_payment_verification_request.go
- model_payment_verification_response.go
- model_phone.go
- model_qiwi_wallet_details.go
- model_ratepay_details.go
- model_recurring.go
- model_recurring_detail.go
- model_redirect.go
- model_response_additional_data3_d_secure.go
- model_response_additional_data_billing_address.go
- model_response_additional_data_card.go
- model_response_additional_data_common.go
- model_response_additional_data_delivery_address.go
- model_response_additional_data_installments.go
- model_response_additional_data_network_tokens.go
- model_response_additional_data_opi.go
- model_response_additional_data_pay_pal.go
- model_response_additional_data_sepa.go
- model_response_payment_method.go
- model_risk_data.go
- model_samsung_pay_details.go
- model_sdk_ephem_pub_key.go
- model_sdkdata.go
- model_sepa_direct_debit_details.go
- model_service_error.go
- model_service_error2.go
- model_shopper_input.go
- model_shopper_interaction_device.go
- model_split.go
- model_split_amount.go
- model_standalone_payment_cancel_resource.go
- model_stored_details.go
- model_stored_payment_method.go
- model_stored_payment_method_details.go
- model_sub_input_detail.go
- model_subscription_details.go
- model_three_d_secure_data.go
- model_three_ds2_request_data.go
- model_three_ds2_response_data.go
- model_three_ds2_result.go
- model_three_ds_request_data.go
- model_three_ds_requestor_authentication_info.go
- model_three_ds_requestor_prior_authentication_info.go
- model_update_payment_link_request.go
- model_upi_collect_details.go
- model_upi_details.go
- model_upi_intent_details.go
- model_vipps_details.go
- model_visa_checkout_details.go
- model_we_chat_pay_details.go
- model_we_chat_pay_mini_program_details.go
- model_zip_details.go