platformsaccount

package
v8.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2023 License: MIT Imports: 4 Imported by: 0

README

Go API client for platformsaccount

The Account API provides endpoints for managing account-related entities on your platform. These related entities include account holders, accounts, bank accounts, shareholders, and KYC-related documents. The management operations include actions such as creation, retrieval, updating, and deletion of them.

For more information, refer to our documentation.

Authentication

To connect to the Account API, you must use basic authentication credentials of your web service user. If you don't have one, please contact the Adyen Support Team. Then use its credentials to authenticate your request, for example:

curl
-U \"[email protected]\":\"YourWsPassword\" \\
-H \"Content-Type: application/json\" \\
...

Note that when going live, you need to generate new web service user credentials to access the live endpoints.

Versioning

The Account API supports versioning of its endpoints through a version suffix in the endpoint URL. This suffix has the following format: "vXX", where XX is the version number.

For example:

https://cal-test.adyen.com/cal/services/Account/v6/createAccountHolder

Overview

This API client was generated by the OpenAPI Generator project. By using the OpenAPI-spec from a remote server, you can easily generate an API client.

  • API version: 6
  • Package version: 1.0.0
  • Build package: org.openapitools.codegen.languages.GoClientExperimentalCodegen For more information, please visit https://support.adyen.com/

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Account

type Account struct {
	// The code of the account.
	AccountCode string `json:"accountCode,omitempty"`
	// The bankAccountUUID of the bank account held by the account holder to couple the account with. Scheduled payouts in currencies matching the currency of this bank account will be sent to this bank account. Payouts in different currencies will be sent to a matching bank account of the account holder.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// The beneficiary of the account.
	BeneficiaryAccount string `json:"beneficiaryAccount,omitempty"`
	// The reason that a beneficiary has been set up for this account. This may have been supplied during the setup of a beneficiary at the discretion of the executing user.
	BeneficiaryMerchantReference string `json:"beneficiaryMerchantReference,omitempty"`
	// A description of the account.
	Description string `json:"description,omitempty"`
	// A set of key and value pairs for general use by the merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. > Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.
	Metadata map[string]string `json:"metadata,omitempty"`
	// The payout method code held by the account holder to couple the account with. Scheduled card payouts will be sent using this payout method code.
	PayoutMethodCode string                  `json:"payoutMethodCode,omitempty"`
	PayoutSchedule   *PayoutScheduleResponse `json:"payoutSchedule,omitempty"`
	// Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.
	PayoutSpeed string `json:"payoutSpeed,omitempty"`
	// The status of the account. Possible values: `Active`, `Inactive`, `Suspended`, `Closed`.
	Status string `json:"status,omitempty"`
}

Account struct for Account

type AccountEvent

type AccountEvent struct {
	// The event. >Permitted values: `InactivateAccount`, `RefundNotPaidOutTransfers`. For more information, refer to [Verification checks](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks).
	Event string `json:"event"`
	// The date on which the event will take place.
	ExecutionDate time.Time `json:"executionDate"`
	// The reason why this event has been created.
	Reason string `json:"reason"`
}

AccountEvent struct for AccountEvent

type AccountHolderDetails

type AccountHolderDetails struct {
	Address *ViasAddress `json:"address,omitempty"`
	// Each of the bank accounts associated with the account holder. > Each array entry should represent one bank account. > For comprehensive detail regarding the required `BankAccountDetail` fields, please refer to the [KYC Verification documentation](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks).
	BankAccountDetails *[]BankAccountDetail `json:"bankAccountDetails,omitempty"`
	// The opaque reference value returned by the Adyen API during bank account login.
	BankAggregatorDataReference string           `json:"bankAggregatorDataReference,omitempty"`
	BusinessDetails             *BusinessDetails `json:"businessDetails,omitempty"`
	// The email address of the account holder.
	Email string `json:"email"`
	// The phone number of the account holder provided as a single string. It will be handled as a landline phone. **Examples:** \"0031 6 11 22 33 44\", \"+316/1122-3344\", \"(0031) 611223344\"
	FullPhoneNumber   string             `json:"fullPhoneNumber"`
	IndividualDetails *IndividualDetails `json:"individualDetails,omitempty"`
	// The Merchant Category Code of the account holder. > If not specified in the request, this will be derived from the platform account (which is configured by Adyen).
	MerchantCategoryCode string `json:"merchantCategoryCode,omitempty"`
	// A set of key and value pairs for general use by the account holder or merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. > The values being stored have a maximum length of eighty (80) characters and will be truncated if necessary. > Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.
	Metadata map[string]string `json:"metadata,omitempty"`
	// Each of the card tokens associated with the account holder. > Each array entry should represent one card token. > For comprehensive detail regarding the required `CardToken` fields, please refer to the [KYC Verification documentation](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks).
	PayoutMethods *[]PayoutMethod `json:"payoutMethods,omitempty"`
	// The URL of the website of the account holder.
	WebAddress string `json:"webAddress"`
}

AccountHolderDetails struct for AccountHolderDetails

type AccountHolderStatus

type AccountHolderStatus struct {
	// A list of events scheduled for the account holder.
	Events          *[]AccountEvent         `json:"events,omitempty"`
	PayoutState     *AccountPayoutState     `json:"payoutState,omitempty"`
	ProcessingState *AccountProcessingState `json:"processingState,omitempty"`
	// The status of the account holder. >Permitted values: `Active`, `Inactive`, `Suspended`, `Closed`.
	Status string `json:"status"`
	// The reason why the status was assigned to the account holder.
	StatusReason string `json:"statusReason,omitempty"`
}

AccountHolderStatus struct for AccountHolderStatus

type AccountPayoutState

type AccountPayoutState struct {
	// Indicates whether payouts are allowed. This field is the overarching payout status, and is the aggregate of multiple conditions (e.g., KYC status, disabled flag, etc). If this field is false, no payouts will be permitted for any of the account holder's accounts. If this field is true, payouts will be permitted for any of the account holder's accounts.
	AllowPayout bool `json:"allowPayout,omitempty"`
	// The reason why payouts (to all of the account holder's accounts) have been disabled (by the platform). If the `disabled` field is true, this field can be used to explain why.
	DisableReason string `json:"disableReason,omitempty"`
	// Indicates whether payouts have been disabled (by the platform) for all of the account holder's accounts. A platform may enable and disable this field at their discretion. If this field is true, `allowPayout` will be false and no payouts will be permitted for any of the account holder's accounts. If this field is false, `allowPayout` may or may not be enabled, depending on other factors.
	Disabled bool `json:"disabled,omitempty"`
	// The reason why payouts (to all of the account holder's accounts) have been disabled (by Adyen). If payouts have been disabled by Adyen, this field will explain why. If this field is blank, payouts have not been disabled by Adyen.
	NotAllowedReason string  `json:"notAllowedReason,omitempty"`
	PayoutLimit      *Amount `json:"payoutLimit,omitempty"`
	// The payout tier that the account holder occupies.
	TierNumber int32 `json:"tierNumber,omitempty"`
}

AccountPayoutState struct for AccountPayoutState

type AccountProcessingState

type AccountProcessingState struct {
	// The reason why processing has been disabled.
	DisableReason string `json:"disableReason,omitempty"`
	// Indicates whether the processing of payments is allowed.
	Disabled      bool    `json:"disabled,omitempty"`
	ProcessedFrom *Amount `json:"processedFrom,omitempty"`
	ProcessedTo   *Amount `json:"processedTo,omitempty"`
	// The processing tier that the account holder occupies.
	TierNumber int32 `json:"tierNumber,omitempty"`
}

AccountProcessingState struct for AccountProcessingState

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 BankAccountDetail

type BankAccountDetail struct {
	// The bank account number (without separators). >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	AccountNumber string `json:"accountNumber,omitempty"`
	// The type of bank account. Only applicable to bank accounts held in the USA. The permitted values are: `checking`, `savings`.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	AccountType string `json:"accountType,omitempty"`
	// The name of the bank account.
	BankAccountName string `json:"bankAccountName,omitempty"`
	// Merchant reference to the bank account.
	BankAccountReference string `json:"bankAccountReference,omitempty"`
	// The unique identifier (UUID) of the Bank Account. >If, during an account holder create or update request, this field is left blank (but other fields provided), a new Bank Account will be created with a procedurally-generated UUID.  >If, during an account holder create request, a UUID is provided, the creation of the Bank Account will fail while the creation of the account holder will continue.  >If, during an account holder update request, a UUID that is not correlated with an existing Bank Account is provided, the update of the account holder will fail.  >If, during an account holder update request, a UUID that is correlated with an existing Bank Account is provided, the existing Bank Account will be updated.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// The bank identifier code. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	BankBicSwift string `json:"bankBicSwift,omitempty"`
	// The city in which the bank branch is located.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	BankCity string `json:"bankCity,omitempty"`
	// The bank code of the banking institution with which the bank account is registered.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	BankCode string `json:"bankCode,omitempty"`
	// The name of the banking institution with which the bank account is held.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	BankName string `json:"bankName,omitempty"`
	// The branch code of the branch under which the bank account is registered. The value to be specified in this parameter depends on the country of the bank account: * United States - Routing number * United Kingdom - Sort code * Germany - Bankleitzahl >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	BranchCode string `json:"branchCode,omitempty"`
	// The check code of the bank account.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	CheckCode string `json:"checkCode,omitempty"`
	// The two-letter country code in which the bank account is registered. >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	CountryCode string `json:"countryCode,omitempty"`
	// The currency in which the bank account deals. >The permitted currency codes are defined in ISO-4217 (e.g. 'EUR').  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	CurrencyCode string `json:"currencyCode,omitempty"`
	// The international bank account number. >The IBAN standard is defined in ISO-13616.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	Iban string `json:"iban,omitempty"`
	// The city of residence of the bank account owner. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerCity string `json:"ownerCity,omitempty"`
	// The country code of the country of residence of the bank account owner. >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerCountryCode string `json:"ownerCountryCode,omitempty"`
	// The date of birth of the bank account owner.
	OwnerDateOfBirth string `json:"ownerDateOfBirth,omitempty"`
	// The house name or number of the residence of the bank account owner. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerHouseNumberOrName string `json:"ownerHouseNumberOrName,omitempty"`
	// The name of the bank account owner. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerName string `json:"ownerName,omitempty"`
	// The country code of the country of nationality of the bank account owner. >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerNationality string `json:"ownerNationality,omitempty"`
	// The postal code of the residence of the bank account owner. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerPostalCode string `json:"ownerPostalCode,omitempty"`
	// The state of residence of the bank account owner. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerState string `json:"ownerState,omitempty"`
	// The street name of the residence of the bank account owner. >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	OwnerStreet string `json:"ownerStreet,omitempty"`
	// If set to true, the bank account is a primary account.
	PrimaryAccount bool `json:"primaryAccount,omitempty"`
	// The tax ID number.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	TaxId string `json:"taxId,omitempty"`
	// The URL to be used for bank account verification. This may be generated on bank account creation.  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on field requirements.
	UrlForVerification string `json:"urlForVerification,omitempty"`
}

BankAccountDetail struct for BankAccountDetail

type BusinessDetails

type BusinessDetails struct {
	// The registered name of the company (if it differs from the legal name of the company).
	DoingBusinessAs string `json:"doingBusinessAs,omitempty"`
	// The legal name of the company.
	LegalBusinessName string `json:"legalBusinessName,omitempty"`
	// The registration number of the company.
	RegistrationNumber string `json:"registrationNumber,omitempty"`
	// Each of the shareholders associated with the company. Each array entry should represent one shareholder.
	Shareholders *[]ShareholderContact `json:"shareholders,omitempty"`
	// Market Identifier Code (MIC).
	StockExchange string `json:"stockExchange,omitempty"`
	// International Securities Identification Number (ISIN).
	StockNumber string `json:"stockNumber,omitempty"`
	// Stock Ticker symbol.
	StockTicker string `json:"stockTicker,omitempty"`
	// The tax ID of the company.
	TaxId string `json:"taxId,omitempty"`
}

BusinessDetails struct for BusinessDetails

type CloseAccountHolderRequest

type CloseAccountHolderRequest struct {
	// The code of the Account Holder to be closed.
	AccountHolderCode string `json:"accountHolderCode"`
}

CloseAccountHolderRequest struct for CloseAccountHolderRequest

type CloseAccountHolderResponse

type CloseAccountHolderResponse struct {
	AccountHolderStatus AccountHolderStatus `json:"accountHolderStatus"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

CloseAccountHolderResponse struct for CloseAccountHolderResponse

type CloseAccountRequest

type CloseAccountRequest struct {
	// The code of account to be closed.
	AccountCode string `json:"accountCode"`
}

CloseAccountRequest struct for CloseAccountRequest

type CloseAccountResponse

type CloseAccountResponse struct {
	// The account code of the account that is closed.
	AccountCode string `json:"accountCode,omitempty"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
	// The new status of the account. >Permitted values: `Active`, `Inactive`, `Suspended`, `Closed`.
	Status string `json:"status"`
}

CloseAccountResponse struct for CloseAccountResponse

type CreateAccountHolderRequest

type CreateAccountHolderRequest struct {
	// The desired code of the prospective account holder. > Must be between three (3) and fifty (50) characters long. Only letters, digits, and hyphens (-) are permitted.
	AccountHolderCode    string               `json:"accountHolderCode"`
	AccountHolderDetails AccountHolderDetails `json:"accountHolderDetails"`
	// If set to true, an account with the default options is created for this account holder. **Default Value:** true
	CreateDefaultAccount bool `json:"createDefaultAccount,omitempty"`
	// A description of the prospective account holder, maximum 256 characters. You can use alphanumeric characters (A-Z, a-z, 0-9), white spaces, and underscores `_`.
	Description string `json:"description,omitempty"`
	// The entity type. Permitted values: `Business`, `Individual`  If an account holder is 'Business', then `accountHolderDetails.businessDetails` must be provided, as well as at least one entry in the `accountHolderDetails.businessDetails.shareholders` list.  If an account holder is 'Individual', then `accountHolderDetails.individualDetails` must be provided.
	LegalEntity string `json:"legalEntity"`
	// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.
	PrimaryCurrency string `json:"primaryCurrency,omitempty"`
	// The starting [processing tier](https://docs.adyen.com/platforms/onboarding-and-verification/precheck-kyc-information) for the prospective account holder.
	ProcessingTier int32 `json:"processingTier,omitempty"`
	// The identifier of the profile that applies to this entity.
	VerificationProfile string `json:"verificationProfile,omitempty"`
}

CreateAccountHolderRequest struct for CreateAccountHolderRequest

type CreateAccountHolderResponse

type CreateAccountHolderResponse struct {
	// The code of a new account created for the account holder.
	AccountCode string `json:"accountCode,omitempty"`
	// The code of the new account holder.
	AccountHolderCode    string               `json:"accountHolderCode"`
	AccountHolderDetails AccountHolderDetails `json:"accountHolderDetails"`
	AccountHolderStatus  AccountHolderStatus  `json:"accountHolderStatus"`
	// The description of the new account holder.
	Description string `json:"description,omitempty"`
	// A list of fields that caused the `/createAccountHolder` request to fail.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The type of legal entity of the new account holder.
	LegalEntity string `json:"legalEntity"`
	// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.
	PrimaryCurrency string `json:"primaryCurrency,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode   string                `json:"resultCode,omitempty"`
	Verification KYCVerificationResult `json:"verification"`
	// The identifier of the profile that applies to this entity.
	VerificationProfile string `json:"verificationProfile,omitempty"`
}

CreateAccountHolderResponse struct for CreateAccountHolderResponse

type CreateAccountRequest

type CreateAccountRequest struct {
	// The code of Account Holder under which to create the account.
	AccountHolderCode string `json:"accountHolderCode"`
	// The bankAccountUUID of the bank account held by the account holder to couple the account with. Scheduled payouts in currencies matching the currency of this bank account will be sent to this bank account. Payouts in different currencies will be sent to a matching bank account of the account holder.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// A description of the account, maximum 256 characters. You can use alphanumeric characters (A-Z, a-z, 0-9), white spaces, and underscores `_`.
	Description string `json:"description,omitempty"`
	// A set of key and value pairs for general use by the merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. > Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.
	Metadata map[string]string `json:"metadata,omitempty"`
	// The payout method code held by the account holder to couple the account with. Scheduled card payouts will be sent using this payout method code.
	PayoutMethodCode string `json:"payoutMethodCode,omitempty"`
	// The payout schedule of the prospective account. >Permitted values: `DEFAULT`, `HOLD`, `DAILY`, `WEEKLY`, `MONTHLY`.
	PayoutSchedule string `json:"payoutSchedule,omitempty"`
	// The reason for the payout schedule choice. >Required if the payoutSchedule is `HOLD`.
	PayoutScheduleReason string `json:"payoutScheduleReason,omitempty"`
	// Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.
	PayoutSpeed string `json:"payoutSpeed,omitempty"`
}

CreateAccountRequest struct for CreateAccountRequest

type CreateAccountResponse

type CreateAccountResponse struct {
	// The code of the new account.
	AccountCode string `json:"accountCode"`
	// The code of the account holder.
	AccountHolderCode string `json:"accountHolderCode"`
	// The bankAccountUUID of the bank account held by the account holder to couple the account with. Scheduled payouts in currencies matching the currency of this bank account will be sent to this bank account. Payouts in different currencies will be sent to a matching bank account of the account holder.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// The description of the account.
	Description string `json:"description,omitempty"`
	// A list of fields that caused the `/createAccount` request to fail.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	Metadata      map[string]string `json:"metadata,omitempty"`
	// The payout method code held by the account holder to couple the account with. Scheduled card payouts will be sent using this payout method code.
	PayoutMethodCode string                  `json:"payoutMethodCode,omitempty"`
	PayoutSchedule   *PayoutScheduleResponse `json:"payoutSchedule,omitempty"`
	// Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.
	PayoutSpeed string `json:"payoutSpeed,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
	// The status of the account. >Permitted values: `Active`.
	Status string `json:"status"`
}

CreateAccountResponse struct for CreateAccountResponse

type DeleteBankAccountRequest

type DeleteBankAccountRequest struct {
	// The code of the Account Holder from which to delete the Bank Account(s).
	AccountHolderCode string `json:"accountHolderCode"`
	// The code(s) of the Bank Accounts to be deleted.
	BankAccountUUIDs []string `json:"bankAccountUUIDs"`
}

DeleteBankAccountRequest struct for DeleteBankAccountRequest

type DeletePayoutMethodRequest

type DeletePayoutMethodRequest struct {
	// The code of the account holder, from which to delete the payout methods.
	AccountHolderCode string `json:"accountHolderCode"`
	// The codes of the payout methods to be deleted.
	PayoutMethodCodes []string `json:"payoutMethodCodes"`
}

DeletePayoutMethodRequest struct for DeletePayoutMethodRequest

type DeleteShareholderRequest

type DeleteShareholderRequest struct {
	// The code of the Account Holder from which to delete the Shareholders.
	AccountHolderCode string `json:"accountHolderCode"`
	// The code(s) of the Shareholders to be deleted.
	ShareholderCodes []string `json:"shareholderCodes"`
}

DeleteShareholderRequest struct for DeleteShareholderRequest

type DocumentDetail

type DocumentDetail struct {
	// The code of account holder, to which the document applies.
	AccountHolderCode string `json:"accountHolderCode"`
	// The unique ID of the Bank Account to which the document applies. >Required if the documentType is `BANK_STATEMENT` (i.e., a document is being submitted in order to verify a bank account).  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on when a document should be submitted in order to verify a bank account.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// Description of the document.
	Description string `json:"description,omitempty"`
	// The type of a document. Permitted values: * `BANK_STATEMENT` denotes an image containing a bank statement or other document proving ownership of a specific bank account. * `PASSPORT` denotes an image containing the identity page(s) of a passport. * `ID_CARD_FRONT` denotes an image containing only the front of the ID card. In order for a document to be usable, both the `ID_CARD_FRONT` and `ID_CARD_BACK` must be submitted. * `ID_CARD_BACK` denotes an image containing only the back of the ID card. In order for a document to be usable, both the `ID_CARD_FRONT` and `ID_CARD_BACK` must be submitted. * `DRIVING_LICENCE_FRONT` denotes an image containing only the front of the driving licence. In order for a document to be usable, both the `DRIVING_LICENCE_FRONT` and `DRIVING_LICENCE_BACK` must be submitted. * `DRIVING_LICENCE_BACK` denotes an image containing only the back of the driving licence. In order for a document to be usable, both the `DRIVING_LICENCE_FRONT` and `DRIVING_LICENCE_FRONT` must be submitted.  >Please refer to [Verification checks](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks) for details on when each document type should be submitted.
	DocumentType string `json:"documentType"`
	// Filename of the document.
	Filename string `json:"filename"`
	// The code of the shareholder, to which the document applies. >Required if the account holder referred to by the `accountHolderCode` has a `legalEntity` of type `Business` and the `documentType` is either `PASSPORT`, `ID_CARD_FRONT`, `ID_CARD_BACK`, `DRIVING_LICENCE_FRONT`, `DRIVING_LICENCE_BACK` (i.e. a document is being submitted in order to verify a shareholder).  >Refer to the [Onboarding and verification](https://docs.adyen.com/platforms/onboarding-and-verification) section for details on when a document should be submitted in order to verify a shareholder.
	ShareholderCode string `json:"shareholderCode,omitempty"`
}

DocumentDetail struct for DocumentDetail

type ErrorFieldType

type ErrorFieldType struct {
	// The validation error code.
	ErrorCode int32 `json:"errorCode,omitempty"`
	// A description of the validation error.
	ErrorDescription string     `json:"errorDescription,omitempty"`
	FieldType        *FieldType `json:"fieldType,omitempty"`
}

ErrorFieldType struct for ErrorFieldType

type FieldType

type FieldType struct {
	// The full name of the property.
	Field string `json:"field,omitempty"`
	// The type of the field.
	FieldName string `json:"fieldName,omitempty"`
	// The code of the shareholder that the field belongs to. If empty, the field belongs to an account holder.
	ShareholderCode string `json:"shareholderCode,omitempty"`
}

FieldType struct for FieldType

type GenericResponse

type GenericResponse struct {
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

GenericResponse struct for GenericResponse

type GetAccountHolderRequest

type GetAccountHolderRequest struct {
	// The code of the account of which to retrieve the details. > Required if no `accountHolderCode` is provided.
	AccountCode string `json:"accountCode,omitempty"`
	// The code of the account holder of which to retrieve the details. > Required if no `accountCode` is provided.
	AccountHolderCode string `json:"accountHolderCode,omitempty"`
	// True if the request should return the account holder details
	ShowDetails bool `json:"showDetails,omitempty"`
}

GetAccountHolderRequest struct for GetAccountHolderRequest

type GetAccountHolderResponse

type GetAccountHolderResponse struct {
	// The code of the account holder.
	AccountHolderCode    string               `json:"accountHolderCode"`
	AccountHolderDetails AccountHolderDetails `json:"accountHolderDetails"`
	AccountHolderStatus  AccountHolderStatus  `json:"accountHolderStatus"`
	// A list of the accounts under the account holder.
	Accounts *[]Account `json:"accounts,omitempty"`
	// The description of the account holder.
	Description string `json:"description,omitempty"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The legal entity of the account holder.
	LegalEntity string `json:"legalEntity"`
	// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.
	PrimaryCurrency string `json:"primaryCurrency,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
	// The time that shows how up to date is the information in the response.
	SystemUpToDateTime *time.Time            `json:"systemUpToDateTime,omitempty"`
	Verification       KYCVerificationResult `json:"verification"`
	// The identifier of the profile that applies to this entity.
	VerificationProfile string `json:"verificationProfile,omitempty"`
}

GetAccountHolderResponse struct for GetAccountHolderResponse

type GetAccountHolderStatusResponse

type GetAccountHolderStatusResponse struct {
	// The code of the Account Holder.
	AccountHolderCode   string              `json:"accountHolderCode"`
	AccountHolderStatus AccountHolderStatus `json:"accountHolderStatus"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

GetAccountHolderStatusResponse struct for GetAccountHolderStatusResponse

type GetUploadedDocumentsRequest

type GetUploadedDocumentsRequest struct {
	// The code of the Account Holder for which to retrieve the documents.
	AccountHolderCode string `json:"accountHolderCode"`
	// The code of the Bank Account for which to retrieve the documents.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// The code of the Shareholder for which to retrieve the documents.
	ShareholderCode string `json:"shareholderCode,omitempty"`
}

GetUploadedDocumentsRequest struct for GetUploadedDocumentsRequest

type GetUploadedDocumentsResponse

type GetUploadedDocumentsResponse struct {
	// A list of the documents and their details.
	DocumentDetails *[]DocumentDetail `json:"documentDetails,omitempty"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

GetUploadedDocumentsResponse struct for GetUploadedDocumentsResponse

type IndividualDetails

type IndividualDetails struct {
	Name         *ViasName         `json:"name,omitempty"`
	PersonalData *ViasPersonalData `json:"personalData,omitempty"`
}

IndividualDetails struct for IndividualDetails

type KYCBankAccountCheckResult

type KYCBankAccountCheckResult struct {
	// The unique ID of the bank account to which the check applies.
	BankAccountUUID string `json:"bankAccountUUID"`
	// A list of the checks and their statuses.
	Checks []KYCCheckStatusData `json:"checks"`
}

KYCBankAccountCheckResult struct for KYCBankAccountCheckResult

type KYCCardCheckResult

type KYCCardCheckResult struct {
	// A list of the checks and their statuses.
	Checks []KYCCheckStatusData `json:"checks"`
	// The unique ID of the card to which the check applies.
	PayoutMethodCode string `json:"payoutMethodCode"`
}

KYCCardCheckResult struct for KYCCardCheckResult

type KYCCheckResult

type KYCCheckResult struct {
	// A list of the checks and their statuses.
	Checks *[]KYCCheckStatusData `json:"checks,omitempty"`
}

KYCCheckResult struct for KYCCheckResult

type KYCCheckStatusData

type KYCCheckStatusData struct {
	// A list of the fields required for execution of the check.
	RequiredFields []string `json:"requiredFields,omitempty"`
	// The status of the check. >Permitted Values: `DATA_PROVIDED`, `PASSED`, `PENDING`, `AWAITING_DATA`, `RETRY_LIMIT_REACHED`, `INVALID_DATA`, `FAILED`.
	Status  string           `json:"status"`
	Summary *KYCCheckSummary `json:"summary,omitempty"`
	// The type of check. >Permitted Values: `COMPANY_VERIFICATION`, `IDENTITY_VERIFICATION`, `PASSPORT_VERIFICATION`, `BANK_ACCOUNT_VERIFICATION`, `NONPROFIT_VERIFICATION`, `CARD_VERIFICATION`.
	Type string `json:"type"`
}

KYCCheckStatusData struct for KYCCheckStatusData

type KYCCheckSummary

type KYCCheckSummary struct {
	// The code of the check.
	KycCheckCode int32 `json:"kycCheckCode,omitempty"`
	// A description of the check.
	KycCheckDescription string `json:"kycCheckDescription,omitempty"`
}

KYCCheckSummary struct for KYCCheckSummary

type KYCPayoutMethodCheckResult

type KYCPayoutMethodCheckResult struct {
	// A list of the checks and their statuses.
	Checks *[]KYCCheckStatusData `json:"checks,omitempty"`
	// The unique ID of the payoput method to which the check applies.
	PayoutMethodCode string `json:"payoutMethodCode,omitempty"`
}

KYCPayoutMethodCheckResult struct for KYCPayoutMethodCheckResult

type KYCShareholderCheckResult

type KYCShareholderCheckResult struct {
	// A list of the checks and their statuses.
	Checks *[]KYCCheckStatusData `json:"checks,omitempty"`
	// The code of the shareholder to which the check applies.
	ShareholderCode string `json:"shareholderCode,omitempty"`
}

KYCShareholderCheckResult struct for KYCShareholderCheckResult

type KYCVerificationResult

type KYCVerificationResult struct {
	AccountHolder *KYCCheckResult `json:"accountHolder,omitempty"`
	// The result(s) of the checks on the payout method(s).
	PayoutMethods *[]KYCPayoutMethodCheckResult `json:"payoutMethods,omitempty"`
	// The result(s) of the checks on the shareholder(s).
	Shareholders *[]KYCShareholderCheckResult `json:"shareholders,omitempty"`
}

KYCVerificationResult struct for KYCVerificationResult

type PayoutMethod

type PayoutMethod struct {
	MerchantAccount          string `json:"merchantAccount"`
	PayoutMethodCode         string `json:"payoutMethodCode,omitempty"`
	PayoutMethodType         string `json:"payoutMethodType,omitempty"`
	RecurringDetailReference string `json:"recurringDetailReference"`
	ShopperReference         string `json:"shopperReference"`
}

PayoutMethod struct for PayoutMethod

type PayoutScheduleResponse

type PayoutScheduleResponse struct {
	// The date of the next scheduled payout.
	NextScheduledPayout time.Time `json:"nextScheduledPayout"`
	// The payout schedule of the account. >Permitted values: `DEFAULT`, `HOLD`, `DAILY`, `WEEKLY`, `MONTHLY`.
	Schedule string `json:"schedule"`
}

PayoutScheduleResponse struct for PayoutScheduleResponse

type PerformVerificationRequest

type PerformVerificationRequest struct {
	// The code of the account holder to verify.
	AccountHolderCode string `json:"accountHolderCode"`
	// The state required for the account holder. > Permitted values: `Processing`, `Payout`.
	AccountStateType string `json:"accountStateType"`
	// The tier required for the account holder.
	Tier int32 `json:"tier"`
}

PerformVerificationRequest struct for PerformVerificationRequest

type PersonalDocumentData

type PersonalDocumentData struct {
	// The expiration date of the document. The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).
	ExpirationDate string `json:"expirationDate,omitempty"`
	// The two-character country code of the issuer. >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').
	IssuerCountry string `json:"issuerCountry,omitempty"`
	// The state issued the document (if applicable)
	IssuerState string `json:"issuerState,omitempty"`
	// The number of the document. Delete the given type if the value empty.
	Number string `json:"number,omitempty"`
	// The type of the document. More then one item pert type does not allowed. Valid values: ID, PASSPORT, VISA, DRIVINGLICENSE
	Type string `json:"type"`
}

PersonalDocumentData struct for PersonalDocumentData

type PlatformsAccount

type PlatformsAccount common.Service

PlatformsAccount PlatformsAccount service Deprecated: Please migrate to the new Adyen For Platforms.

func (PlatformsAccount) CheckAccountHolder

PostCheckAccountHolder Request to perform verification for an account holder. This endpoint allows to trigger the verification of the account holder earlier than it's required by the currently processed volume.

  • @param request PerformVerificationRequest - reference of PerformVerificationRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GenericResponse

func (PlatformsAccount) CloseAccount

PostCloseAccount Close an existing account under an account holder. This endpoint is used to close an existing account under an account holder. If an account is closed, it may not process transactions or have its funds paid out,and it may not be reopened. Any payments made to a closed account will be directed to the merchant's liable account.

  • @param request CloseAccountRequest - reference of CloseAccountRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return CloseAccountResponse

func (PlatformsAccount) CloseAccountHolder

PostCloseAccountHolder Close an existing account holder. This endpoint is used to close an existing account holder and its accounts. If an account holder is closed, it may not process transactions or pay out funds, and it may not be reopened. Any payments made to a closed account will be directed to the merchant's liable account.

  • @param request CloseAccountHolderRequest - reference of CloseAccountHolderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return CloseAccountHolderResponse

func (PlatformsAccount) CreateAccount

PostCreateAccount Create a new account under an existing account holder. This endpoint is used to create an account under an existing account holder. An account holder may have multiple accounts.

  • @param request CreateAccountRequest - reference of CreateAccountRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return CreateAccountResponse

func (PlatformsAccount) CreateAccountHolder

PostCreateAccountHolder Create a new account holder. This endpoint is used to create an account holder. Each account holder represents a single sub-merchant, and each sub-merchant must be represented by an account holder. Depending on the legal entity type, different details are required to be provided in the call to this endpoint.

  • @param request CreateAccountHolderRequest - reference of CreateAccountHolderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return CreateAccountHolderResponse

func (PlatformsAccount) DeleteBankAccounts

PostDeleteBankAccounts Delete bank accounts of an existing account holder. This endpoint is used to delete existing bank accounts from an account holder. For this, pass the `accountHolderCode` you got on the account holder creation, and one or more `bankAccountUUIDs` specifying bank accounts to delete.

  • @param request DeleteBankAccountRequest - reference of DeleteBankAccountRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GenericResponse

func (PlatformsAccount) DeletePayoutMethods

PostDeletePayoutMethods Delete payout methods of an existing account holder. This endpoint is used to delete existing payout method from an account holder. For this, pass the `accountHolderCode` you got on the account holder creation, and one or more `payoutMethodCodes` specifying payout methods to delete.

  • @param request DeletePayoutMethodRequest - reference of DeletePayoutMethodRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GenericResponse

func (PlatformsAccount) DeleteShareholders

PostDeleteShareholders Delete shareholders of an existing account holder. This endpoint is used to delete existing shareholders from an account holder.

  • @param request DeleteShareholderRequest - reference of DeleteShareholderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GenericResponse

func (PlatformsAccount) GetAccountHolder

PostGetAccountHolder Retrieve the details of an account holder. This endpoint is used to retrieve the details of an account holder.

  • @param request GetAccountHolderRequest - reference of GetAccountHolderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GetAccountHolderResponse

func (PlatformsAccount) GetUploadedDocuments

PostGetUploadedDocuments Retrieve the uploaded documents of an existing account holder. This endpoint is used to retrieve documents previously uploaded for use in the KYC Verification of an account holder. For further information regarding KYC Verification, please refer to [Verification checks](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks).

  • @param request GetUploadedDocumentsRequest - reference of GetUploadedDocumentsRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GetUploadedDocumentsResponse

func (PlatformsAccount) SuspendAccountHolder

PostSuspendAccountHolder Suspend an existing account holder. This endpoint is used to suspend an existing account holder. If an account holder is suspended, it may not process transactions or pay out funds. Any payments made to a suspended account holder will be directed to the merchant's liable account.

  • @param request SuspendAccountHolderRequest - reference of SuspendAccountHolderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return SuspendAccountHolderResponse

func (PlatformsAccount) UnSuspendAccountHolder

PostUnSuspendAccountHolder Reinstate a disabled account holder. This endpoint is used to reinstate an existing account holder that has been suspended either through the `/suspendAccountHolder` endpoint or because a KYC deadline expired. However, an account holder that has been suspended by Adyen because of KYC verification issues (indicated by a **FAILED** verification [`status`](https://docs.adyen.com/api-explorer/#/Account/latest/post/getAccountHolder__resParam_verification-accountHolder-checks-status)) cannot be reinstated through this endpoint.

  • @param request UnSuspendAccountHolderRequest - reference of UnSuspendAccountHolderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return UnSuspendAccountHolderResponse

func (PlatformsAccount) UpdateAccount

PostUpdateAccount Update an existing account under an account holder. This endpoint is used to update the description or payout schedule of an existing account.

  • @param request UpdateAccountRequest - reference of UpdateAccountRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return UpdateAccountResponse

func (PlatformsAccount) UpdateAccountHolder

PostUpdateAccountHolder Update an existing account holder. This endpoint is used to update the `accountHolderDetails` or `processingTier` of an account holder. If updating the `accountHolderDetails`, only the details which have been provided will be updated. Other details will be left as-is with the exception of the following fields: * `accountHolderDetails.address` * `accountHolderDetails.fullPhoneNumber` * `accountHolderDetails.bankAccountDetails.BankAccountDetail` * `accountHolderDetails.businessDetails.shareholders.ShareholderContact`, which requires all fields necessary for validation (i.e. in order to update only the `accountHolderDetails.address.postalCode`, the fields `accountHolderDetails.address.country`, `.city`, `.street`, `.postalCode`, and possibly `.stateOrProvince` must be provided as well, so that the address can be properly validated). Note that this endpoint can also be used to create new bank accounts. For this, provide details of a bank account without providing a `bankAccountUUID`. Similarly, it can also be used to create new shareholders by providing details of a shareholder without providing a `shareholderCode`. > The updating of the `metadata` field will overwite all of the existing account holder metadata. In order to update an existing metadata key-value pair, all otherkey-value pairs should be provided in order to not delete them.

  • @param request UpdateAccountHolderRequest - reference of UpdateAccountHolderRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return UpdateAccountHolderResponse

func (PlatformsAccount) UpdateAccountHolderState

PostUpdateAccountHolderState Update the state of an existing account holder. This endpoint is used to disable or enable the processing or payout state of an account holder. For more information about processing and payout states of an account holder, refer to [our documentation](https://docs.adyen.com/platforms).

  • @param request UpdateAccountHolderStateRequest - reference of UpdateAccountHolderStateRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return GetAccountHolderStatusResponse

func (PlatformsAccount) UploadDocument

PostUploadDocument Upload a document for an existing account holder. This endpoint is used to upload a document for use in the KYC verification of an account holder. For further information regarding KYC Verification, please refer to [Verification checks](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks).

  • @param request UploadDocumentRequest - reference of UploadDocumentRequest).
  • @param ctxs ..._context.Context - optional, for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().

@return UpdateAccountHolderResponse

type ShareholderContact

type ShareholderContact struct {
	Address *ViasAddress `json:"address,omitempty"`
	// The e-mail address of the contact.
	Email string `json:"email,omitempty"`
	// The phone number of the contact provided as a single string.  It will be handled as a landline phone. **Examples:** \"0031 6 11 22 33 44\", \"+316/1122-3344\", \"(0031) 611223344\"
	FullPhoneNumber string            `json:"fullPhoneNumber,omitempty"`
	Name            *ViasName         `json:"name,omitempty"`
	PersonalData    *ViasPersonalData `json:"personalData,omitempty"`
	PhoneNumber     *ViasPhoneNumber  `json:"phoneNumber,omitempty"`
	// The unique identifier (UUID) of the Shareholder. >**If, during an Account Holder create or update request, this field is left blank (but other fields provided), a new Shareholder will be created with a procedurally-generated UUID.**  >**If, during an Account Holder create request, a UUID is provided, the creation of the Shareholder will fail while the creation of the Account Holder will continue.**  >**If, during an Account Holder update request, a UUID that is not correlated with an existing Shareholder is provided, the update of the Shareholder will fail.**  >**If, during an Account Holder update request, a UUID that is correlated with an existing Shareholder is provided, the existing Shareholder will be updated.**
	ShareholderCode string `json:"shareholderCode,omitempty"`
	// Merchant reference to the Shareholder.
	ShareholderReference string `json:"shareholderReference,omitempty"`
	// The URL of the website of the contact.
	WebAddress string `json:"webAddress,omitempty"`
}

ShareholderContact struct for ShareholderContact

type SuspendAccountHolderRequest

type SuspendAccountHolderRequest struct {
	// The code of the account holder to be suspended.
	AccountHolderCode string `json:"accountHolderCode"`
}

SuspendAccountHolderRequest struct for SuspendAccountHolderRequest

type SuspendAccountHolderResponse

type SuspendAccountHolderResponse struct {
	AccountHolderStatus AccountHolderStatus `json:"accountHolderStatus"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

SuspendAccountHolderResponse struct for SuspendAccountHolderResponse

type UnSuspendAccountHolderRequest

type UnSuspendAccountHolderRequest struct {
	// The code of the account holder to be reinstated.
	AccountHolderCode string `json:"accountHolderCode"`
}

UnSuspendAccountHolderRequest struct for UnSuspendAccountHolderRequest

type UnSuspendAccountHolderResponse

type UnSuspendAccountHolderResponse struct {
	AccountHolderStatus AccountHolderStatus `json:"accountHolderStatus"`
	// Contains field validation errors that would prevent requests from being processed.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

UnSuspendAccountHolderResponse struct for UnSuspendAccountHolderResponse

type UpdateAccountHolderRequest

type UpdateAccountHolderRequest struct {
	// The code of the Account Holder to be updated.
	AccountHolderCode    string                `json:"accountHolderCode"`
	AccountHolderDetails *AccountHolderDetails `json:"accountHolderDetails,omitempty"`
	// A description of the account holder, maximum 256 characters. You can use alphanumeric characters (A-Z, a-z, 0-9), white spaces, and underscores `_`.
	Description string `json:"description,omitempty"`
	// The entity type. Permitted values: `Business`, `Individual`  If an account holder is 'Business', then `accountHolderDetails.businessDetails` must be provided, as well as at least one entry in the `accountHolderDetails.businessDetails.shareholders` list.  If an account holder is 'Individual', then `accountHolderDetails.individualDetails` must be provided.
	LegalEntity string `json:"legalEntity,omitempty"`
	// The primary three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), to which the account holder should be updated.
	PrimaryCurrency string `json:"primaryCurrency,omitempty"`
	// The processing tier to which the Account Holder should be updated. >The processing tier can not be lowered through this request.  >Required if accountHolderDetails are not provided.
	ProcessingTier int32 `json:"processingTier,omitempty"`
	// The identifier of the profile that applies to this entity.
	VerificationProfile string `json:"verificationProfile,omitempty"`
}

UpdateAccountHolderRequest struct for UpdateAccountHolderRequest

type UpdateAccountHolderResponse

type UpdateAccountHolderResponse struct {
	// The code of the account holder.
	AccountHolderCode    string                `json:"accountHolderCode,omitempty"`
	AccountHolderDetails *AccountHolderDetails `json:"accountHolderDetails,omitempty"`
	AccountHolderStatus  AccountHolderStatus   `json:"accountHolderStatus"`
	// The description of the account holder.
	Description string `json:"description,omitempty"`
	// in case the account holder has not been updated, contains account holder fields, that did not pass the validation.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	// The legal entity of the account holder.
	LegalEntity string `json:"legalEntity"`
	// The three-character [ISO currency code](https://docs.adyen.com/development-resources/currency-codes), with which the prospective account holder primarily deals.
	PrimaryCurrency string `json:"primaryCurrency,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode   string                `json:"resultCode,omitempty"`
	Verification KYCVerificationResult `json:"verification"`
	// The identifier of the profile that applies to this entity.
	VerificationProfile string `json:"verificationProfile,omitempty"`
}

UpdateAccountHolderResponse struct for UpdateAccountHolderResponse

type UpdateAccountHolderStateRequest

type UpdateAccountHolderStateRequest struct {
	// The code of the Account Holder on which to update the state.
	AccountHolderCode string `json:"accountHolderCode"`
	// If true, disable the requested state.  If false, enable the requested state.
	Disable bool `json:"disable"`
	// The reason that the state is being updated. >Required if the state is being disabled.
	Reason string `json:"reason,omitempty"`
	// The state to be updated. >Permitted values are: `Processing`, `Payout`
	StateType string `json:"stateType"`
}

UpdateAccountHolderStateRequest struct for UpdateAccountHolderStateRequest

type UpdateAccountRequest

type UpdateAccountRequest struct {
	// The code of the account to update.
	AccountCode string `json:"accountCode"`
	// The bankAccountUUID of the bank account held by the account holder to couple the account with. Scheduled payouts in currencies matching the currency of this bank account will be sent to this bank account. Payouts in different currencies will be sent to a matching bank account of the account holder.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// A description of the account, maximum 256 characters.You can use alphanumeric characters (A-Z, a-z, 0-9), white spaces, and underscores `_`.
	Description string `json:"description,omitempty"`
	// A set of key and value pairs for general use by the merchant. The keys do not have specific names and may be used for storing miscellaneous data as desired. > Note that during an update of metadata, the omission of existing key-value pairs will result in the deletion of those key-value pairs.
	Metadata map[string]string `json:"metadata,omitempty"`
	// The payout method code held by the account holder to couple the account with. Scheduled card payouts will be sent using this payout method code.
	PayoutMethodCode string                       `json:"payoutMethodCode,omitempty"`
	PayoutSchedule   *UpdatePayoutScheduleRequest `json:"payoutSchedule,omitempty"`
	// Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.
	PayoutSpeed string `json:"payoutSpeed,omitempty"`
}

UpdateAccountRequest struct for UpdateAccountRequest

type UpdateAccountResponse

type UpdateAccountResponse struct {
	// The code of the account.
	AccountCode string `json:"accountCode"`
	// The bankAccountUUID of the bank account held by the account holder to couple the account with. Scheduled payouts in currencies matching the currency of this bank account will be sent to this bank account. Payouts in different currencies will be sent to a matching bank account of the account holder.
	BankAccountUUID string `json:"bankAccountUUID,omitempty"`
	// The description of the account.
	Description string `json:"description,omitempty"`
	// A list of fields that caused the `/updateAccount` request to fail.
	InvalidFields *[]ErrorFieldType `json:"invalidFields,omitempty"`
	Metadata      map[string]string `json:"metadata,omitempty"`
	// The payout method code held by the account holder to couple the account with. Scheduled card payouts will be sent using this payout method code.
	PayoutMethodCode string                  `json:"payoutMethodCode,omitempty"`
	PayoutSchedule   *PayoutScheduleResponse `json:"payoutSchedule,omitempty"`
	// Speed with which payouts for this account are processed. Permitted values: `STANDARD`, `SAME_DAY`.
	PayoutSpeed string `json:"payoutSpeed,omitempty"`
	// The reference of a request. Can be used to uniquely identify the request.
	PspReference string `json:"pspReference,omitempty"`
	// The result code.
	ResultCode string `json:"resultCode,omitempty"`
}

UpdateAccountResponse struct for UpdateAccountResponse

type UpdatePayoutScheduleRequest

type UpdatePayoutScheduleRequest struct {
	// Direction on how to handle any payouts that have already been scheduled. Permitted values: * `CLOSE` will close the existing batch of payouts. * `UPDATE` will reschedule the existing batch to the new schedule. * `NOTHING` (**default**) will allow the payout to proceed.
	Action string `json:"action,omitempty"`
	// The reason for the payout schedule update. > This field is required when the `schedule` parameter is set to `HOLD`.
	Reason string `json:"reason,omitempty"`
	// The payout schedule to which the account is to be updated. Permitted values: `DEFAULT`, `HOLD`, `DAILY`, `WEEKLY`, `MONTHLY`. `HOLD` will prevent scheduled payouts from happening but will still allow manual payouts to occur.
	Schedule string `json:"schedule"`
}

UpdatePayoutScheduleRequest struct for UpdatePayoutScheduleRequest

type UploadDocumentRequest

type UploadDocumentRequest struct {
	// The content of the document as represented by a Base64-encoded string.  To learn about requirements, see [Bank account check](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks/bank-account-check#requirements) and [Photo ID check](https://docs.adyen.com/platforms/onboarding-and-verification/verification-checks/photo-id-check#requirements).
	DocumentContent string         `json:"documentContent"`
	DocumentDetail  DocumentDetail `json:"documentDetail"`
}

UploadDocumentRequest struct for UploadDocumentRequest

type ViasAddress

type ViasAddress struct {
	// The name of the city. >Required if either `houseNumberOrName`, `street`, `postalCode`, or `stateOrProvince` are provided.
	City string `json:"city,omitempty"`
	// The two-character country code of the address. The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL'). > 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.
	HouseNumberOrName string `json:"houseNumberOrName,omitempty"`
	// The postal code. >A maximum of five (5) digits for an address in the USA, or a maximum of ten (10) characters for an address in all other countries. >Required if either `houseNumberOrName`, `street`, `city`, or `stateOrProvince` are provided.
	PostalCode string `json:"postalCode,omitempty"`
	// The abbreviation of the state or province. >Two (2) characters for an address in the USA or Canada, or a maximum of three (3) characters for an address in all other countries. >Required for an address in the USA or Canada if either `houseNumberOrName`, `street`, `city`, or `postalCode` are provided.
	StateOrProvince string `json:"stateOrProvince,omitempty"`
	// The name of the street. >The house number should not be included in this field; it should be separately provided via `houseNumberOrName`. >Required if either `houseNumberOrName`, `city`, `postalCode`, or `stateOrProvince` are provided.
	Street string `json:"street,omitempty"`
}

ViasAddress struct for ViasAddress

type ViasName

type ViasName struct {
	// The first name.
	FirstName string `json:"firstName"`
	// The gender. >The following values are permitted: `MALE`, `FEMALE`, `UNKNOWN`.
	Gender string `json:"gender"`
	// The name's infix, if applicable. >A maximum length of twenty (20) characters is imposed.
	Infix string `json:"infix,omitempty"`
	// The last name.
	LastName string `json:"lastName"`
}

ViasName struct for ViasName

type ViasPersonalData

type ViasPersonalData struct {
	// The date of birth of the person. The date should be in ISO-8601 format yyyy-mm-dd (e.g. 2000-01-31).
	DateOfBirth string `json:"dateOfBirth,omitempty"`
	// Key value pairs of document type and identify numbers
	DocumentData *[]PersonalDocumentData `json:"documentData,omitempty"`
	// The nationality of the person represented by a two-character country code. >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').
	Nationality string `json:"nationality,omitempty"`
}

ViasPersonalData struct for ViasPersonalData

type ViasPhoneNumber

type ViasPhoneNumber struct {
	// The two-character country code of the phone number. >The permitted country codes are defined in ISO-3166-1 alpha-2 (e.g. 'NL').
	PhoneCountryCode string `json:"phoneCountryCode"`
	// The phone number. >The inclusion of the phone number country code is not necessary.
	PhoneNumber string `json:"phoneNumber"`
	// The type of the phone number. >The following values are permitted: `Landline`, `Mobile`, `SIP`, `Fax`.
	PhoneType string `json:"phoneType,omitempty"`
}

ViasPhoneNumber struct for ViasPhoneNumber

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL