Documentation
¶
Index ¶
- Constants
- type AccountCreatedPayload
- type AccountDisabledPayload
- type AccountType
- type AdditionalProperty
- type DebitCreditCode
- type DisabledReason
- type FxTradeCancelledPayload
- type FxTradeExecutedPayload
- type FxTradeSettledPayload
- type FxTradeSettlementFailedPayload
- type IdentifierKind
- type MCCYAccountCreatedPayload
- type MCCYAccountStatementPayload
- type MCCYAccountUpdatedPayload
- type MCCYIdentifier
- type MCCYInstitutionStatementPayload
- type MCCYInternalTransfersCancelledPayload
- type MCCYInternalTransfersSettledPayload
- type MCCYPayloadAssessmentFailedPayload
- type MCCYPayloadValidationFailedPayload
- type MCCYTransactionCancelledPayload
- func (w MCCYTransactionCancelledPayload) GetAccountIdentifier() string
- func (w MCCYTransactionCancelledPayload) GetAccountOwner() string
- func (w MCCYTransactionCancelledPayload) GetAmount() float64
- func (w MCCYTransactionCancelledPayload) GetCounterpartAccountIdentifier() string
- func (w MCCYTransactionCancelledPayload) GetCounterpartAccountOwner() string
- func (w MCCYTransactionCancelledPayload) GetCurrency() string
- func (w MCCYTransactionCancelledPayload) GetEndToEndID() string
- func (w MCCYTransactionCancelledPayload) GetID() uuid.UUID
- func (w MCCYTransactionCancelledPayload) GetReference() string
- func (w MCCYTransactionCancelledPayload) IsReturn() bool
- type MCCYTransactionCreatedPayload
- type MCCYTransactionSettledPayload
- func (w MCCYTransactionSettledPayload) GetAccountIdentifier() string
- func (w MCCYTransactionSettledPayload) GetAccountOwner() string
- func (w MCCYTransactionSettledPayload) GetAmount() float64
- func (w MCCYTransactionSettledPayload) GetCounterpartAccountIdentifier() string
- func (w MCCYTransactionSettledPayload) GetCounterpartAccountOwner() string
- func (w MCCYTransactionSettledPayload) GetCurrency() string
- func (w MCCYTransactionSettledPayload) GetEndToEndID() string
- func (w MCCYTransactionSettledPayload) GetID() uuid.UUID
- func (w MCCYTransactionSettledPayload) GetReference() string
- func (w MCCYTransactionSettledPayload) IsReturn() bool
- type MCCYVirtualAccountCreatedPayload
- type MCCYVirtualAccountUpdatedPayload
- type PaymentMessageAssesmentFailedPayload
- type PaymentMessageValidationFailedPayload
- type Request
- type Response
- type Transaction
- type TransactionAccount
- type TransactionRejectedPayload
- func (w TransactionRejectedPayload) GetAccountIdentifier() string
- func (w TransactionRejectedPayload) GetAccountOwner() string
- func (w TransactionRejectedPayload) GetAmount() float64
- func (w TransactionRejectedPayload) GetCounterpartAccountIdentifier() string
- func (w TransactionRejectedPayload) GetCounterpartAccountOwner() string
- func (w TransactionRejectedPayload) GetCurrency() string
- func (w TransactionRejectedPayload) GetEndToEndID() string
- func (w TransactionRejectedPayload) GetID() uuid.UUID
- func (w TransactionRejectedPayload) GetReference() string
- func (w TransactionRejectedPayload) IsReturn() bool
- type TransactionScheme
- type TransactionSettledPayload
- func (w TransactionSettledPayload) GetAccountIdentifier() string
- func (w TransactionSettledPayload) GetAccountOwner() string
- func (w TransactionSettledPayload) GetAmount() float64
- func (w TransactionSettledPayload) GetCounterpartAccountIdentifier() string
- func (w TransactionSettledPayload) GetCounterpartAccountOwner() string
- func (w TransactionSettledPayload) GetCurrency() string
- func (w TransactionSettledPayload) GetEndToEndID() string
- func (w TransactionSettledPayload) GetID() uuid.UUID
- func (w TransactionSettledPayload) GetReference() string
- func (w TransactionSettledPayload) IsReturn() bool
- type TransactionStatus
- type VirtualAccountCreatedPayload
- type VirtualAccountCreationFailedPayload
Constants ¶
const ( TransactionSchemeTransfer = "Transfer" TransactionSchemeFasterPayments = "FasterPayments" TransactionSchemeBacs = "Bacs" TransactionSchemeChaps = "Chaps" )
const ( Test = "FITestEvent" AccountCreated = "AccountCreated" AccountDisabled = "AccountDisabled" VirtualAccountCreated = "VirtualAccountCreated" VirtualAccountCreationFailed = "VirtualAccountCreationFailed" TransactionSettled = "TransactionSettled" PaymentMessageAssesmentFailed = "PaymentMessageAssesmentFailed" PaymentMessageValidationFailed = "PaymentMessageValidationFailed" TransactionRejected = "TransactionRejected" MCCYAccountCreated = "Accounts.AccountCreated" MCCYAccountUpdated = "Accounts.AccountUpdated" MCCYVirtualAccountCreated = "Accounts.VirtualAccountCreated" MCCYVirtualAccountUpdated = "Accounts.VirtualAccountUpdated" MCCYInstitutionStatement = "MCCY.Statements.InstitutionStatement" MCCYAccountStatement = "MCCY.Statements.AccountStatement" MCCYTransactionCreated = "Payments.Mccy.TransactionCreated" MCCYTransactionSettled = "Payments.Mccy.TransactionSettled" MCCYTransactionCancelled = "Payments.Mccy.TransactionCancelled" MCCYPayloadAssessmentFailed = "Payments.Mccy.PaymentAssessmentFailed" MCCYPayloadValidationFailed = "Payments.Mccy.PaymentValidationFailed" MCCYInternalTransfersSettled = "Mccy.InternalTransfers.Settled" MCCYInternalTransfersCancelled = "Mccy.InternalTransfers.Cancelled" FxTradeExecuted = "Fx.Trade.Executed" FxTradeSettled = "Fx.Trade.Settled" FxTradeCancelled = "Fx.Trade.Cancelled" FxTradeSettlementFailed = "Fx.Trade.Settlement.Failed" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountCreatedPayload ¶ added in v0.5.0
type AccountCreatedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` AccountName string `json:"AccountName" validate:"required"` AccountHolderLabel string `json:"AccountHolderLabel" validate:"required"` AccountIdentifiers struct { IBAN string `json:"IBAN" validate:"required"` BBAN string `json:"BBAN" validate:"required"` } `json:"AccountIdentifiers" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` AccountType AccountType `json:"AccountType" validate:"required"` }
AccountCreatedPayload This webhook confirms the account has been created
type AccountDisabledPayload ¶ added in v0.5.0
type AccountDisabledPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` DisabledReason DisabledReason `json:"DisabledReason" validate:"required"` DisabledTimestamp clearbank.Time `json:"DisabledTimestamp" validate:"required"` }
AccountDisabledPayload
type AccountType ¶ added in v0.3.0
type AccountType string
const ( AccountTypeCurrent AccountType = "CurrentAccount" AccountTypeDeposit AccountType = "DepositAccount" AccountTypeControl AccountType = "ControlAccount" AccountTypeSegregatedClient AccountType = "SegregatedClientAccount" AccountTypeInstitution AccountType = "InstitutionAccount" )
type AdditionalProperty ¶ added in v0.3.0
type DebitCreditCode ¶ added in v0.3.0
type DebitCreditCode string
const ( DebitCreditCodeDebit DebitCreditCode = "Debit" DebitCreditCodeCredit DebitCreditCode = "Credit" )
type DisabledReason ¶ added in v0.3.0
type DisabledReason string
const ( DisabledReasonAccountClosed DisabledReason = "AccountClosed" DisabledReasonAccountSuspended DisabledReason = "AccountSuspended" )
type FxTradeCancelledPayload ¶ added in v0.5.0
type FxTradeCancelledPayload struct { SellAccountOwner string `json:"SellAccountOwner" validate:"required"` SellAccountIBAN string `json:"SellAccountIban" validate:"required"` BuyAccountOwner string `json:"BuyAccountOwner" validate:"required"` BuyAccountIBAN string `json:"BuyAccountIban" validate:"required"` Attestation string `json:"Attestation" validate:"required"` ValueDate clearbank.Time `json:"ValueDate" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` FixedSide string `json:"FixedSide" validate:"required"` BuyCurrency string `json:"BuyCurrency" validate:"required"` SellCurrency string `json:"SellCurrency" validate:"required"` Margin float64 `json:"Margin"` MarginAccountIBAN string `json:"MarginAccountIban"` EndToEndID string `json:"EndToEndId" validate:"required"` UnstructuredInformation string `json:"UnstructuredInformation"` CancellationCode string `json:"CancellationCode" validate:"required"` CancellationReason string `json:"CancellationReason" validate:"required"` }
FxTradeCancelledPayload This webhook confirms that the FX trade has been canceled
type FxTradeExecutedPayload ¶ added in v0.5.0
type FxTradeExecutedPayload struct { SellAccountOwner string `json:"SellAccountOwner" validate:"required"` SellAccountIBAN string `json:"SellAccountIban" validate:"required"` BuyAccountOwner string `json:"BuyAccountOwner" validate:"required"` BuyAccountIBAN string `json:"BuyAccountIban" validate:"required"` Attestation string `json:"Attestation" validate:"required"` ValueDate clearbank.Time `json:"ValueDate" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` FixedSide clearbank.FixedSide `json:"FixedSide" validate:"required"` BuyCurrency string `json:"BuyCurrency" validate:"required"` SellCurrency string `json:"SellCurrency" validate:"required"` Margin float64 `json:"Margin"` MarginAccountIBAN string `json:"MarginAccountIban"` EndToEndID string `json:"EndToEndId" validate:"required"` UnstructuredInformation string `json:"UnstructuredInformation"` Symbol string `json:"Symbol" validate:"required"` FIReceivedMarginAmount float64 `json:"FIReceivedMarginAmount"` BuyAmount float64 `json:"BuyAmount" validate:"required"` SellAmount float64 `json:"SellAmount" validate:"required"` ClearbankRate float64 `json:"ClearBankRate" validate:"required"` FIRate float64 `json:"FIRate" validate:"required"` RequestedTime clearbank.Time `json:"RequestedTime" validate:"required"` ExecutedTime clearbank.Time `json:"ExecutedTime" validate:"required"` }
FxTradeExecutedPayload This webhook confirms that the FX trade has been executed
type FxTradeSettledPayload ¶ added in v0.5.0
type FxTradeSettledPayload struct { SellAccountOwner string `json:"SellAccountOwner" validate:"required"` SellAccountIBAN string `json:"SellAccountIban" validate:"required"` BuyAccountOwner string `json:"BuyAccountOwner" validate:"required"` BuyAccountIBAN string `json:"BuyAccountIban" validate:"required"` Attestation string `json:"Attestation" validate:"required"` ValueDate clearbank.Time `json:"ValueDate" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` FixedSide clearbank.FixedSide `json:"FixedSide" validate:"required"` BuyCurrency string `json:"BuyCurrency" validate:"required"` SellCurrency string `json:"SellCurrency" validate:"required"` Margin float64 `json:"Margin"` MarginAccountIBAN string `json:"MarginAccountIban"` EndToEndID string `json:"EndToEndId" validate:"required"` UnstructuredInformation string `json:"UnstructuredInformation"` DebitTransactionID uuid.UUID `json:"DebitTransactionId" validate:"required"` DebitAmount float64 `json:"DebitAmount" validate:"required"` DebitCurrency string `json:"DebitCurrency" validate:"required"` DebitCreatedAt clearbank.Time `json:"DebitCreatedAt" validate:"required"` DebitSettledAt clearbank.Time `json:"DebitSettledAt" validate:"required"` CreditTransactionID uuid.UUID `json:"CreditTransactionId" validate:"required"` CreditAmount float64 `json:"CreditAmount" validate:"required"` CreditCurrency string `json:"CreditCurrency" validate:"required"` CreditCreatedAt clearbank.Time `json:"CreditCreatedAt" validate:"required"` CreditSettledAt clearbank.Time `json:"CreditSettledAt" validate:"required"` MarginTransactionID *uuid.UUID `json:"MarginTransactionId"` MarginAmount float64 `json:"MarginAmount"` MarginCurrency string `json:"MarginCurrency"` MarginCreatedAt string `json:"MarginCreatedAt"` MarginSettledAt string `json:"MarginSettledAt"` }
FxTradeSettledPayload This webhook confirms that the FX trade has been settled
type FxTradeSettlementFailedPayload ¶ added in v0.9.0
type FxTradeSettlementFailedPayload struct { SellAccountOwner string `json:"SellAccountOwner" validate:"required"` SellAccountIBAN string `json:"SellAccountIban" validate:"required"` BuyAccountOwner string `json:"BuyAccountOwner" validate:"required"` BuyAccountIBAN string `json:"BuyAccountIban" validate:"required"` Attestation string `json:"Attestation" validate:"required"` ValueDate clearbank.Time `json:"ValueDate" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` FixedSide string `json:"FixedSide" validate:"required"` BuyCurrency string `json:"BuyCurrency" validate:"required"` SellCurrency string `json:"SellCurrency" validate:"required"` Margin float64 `json:"Margin"` MarginAccountIBAN string `json:"MarginAccountIban"` EndToEndID string `json:"EndToEndId" validate:"required"` UnstructuredInformation string `json:"UnstructuredInformation"` CancellationCode string `json:"CancellationCode" validate:"required"` CancellationReason string `json:"CancellationReason" validate:"required"` WillBeRetried bool `json:"WillBeRetried" validate:"required"` ReversalFee float64 `json:"ReversalFee" validate:"required"` ReversalFeeCurrency string `json:"ReversalFeeCurrency" validate:"required"` }
FxTradeSettlementFailedPayload This webhook notifies that the settlement of an FX trade has failed.
type IdentifierKind ¶ added in v0.3.0
type IdentifierKind string
const ( IdentifierKindIBAN IdentifierKind = "IBAN" IdentifierKindBBAN IdentifierKind = "IBAN" IdentifierKindAccountID IdentifierKind = "AccountId" IdentifierKindDescriptor IdentifierKind = "Descriptor" )
type MCCYAccountCreatedPayload ¶ added in v0.5.0
type MCCYAccountCreatedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` Name string `json:"Name" validate:"required"` Label string `json:"Label" validate:"required"` Owner string `json:"Owner" validate:"required"` Kind clearbank.MCCYAccountKind `json:"Kind" validate:"required"` Currencies []string `json:"Currencies" validate:"required"` Status clearbank.MCCYAccountStatus `json:"Status" validate:"required"` ProductID string `json:"ProductId"` CustomerID string `json:"CustomerId"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` Identifiers []MCCYIdentifier `json:"Identifiers" validate:"required"` Type string `json:"Type" validate:"required"` }
MCCYAccountCreatedPayload This webhook confirms that the multicurrency account has been created
func (MCCYAccountCreatedPayload) GetIdentifier ¶ added in v0.6.0
func (w MCCYAccountCreatedPayload) GetIdentifier() string
GetIdentifier returns first identifier. If no identifiers are found, an empty string is returned.
type MCCYAccountStatementPayload ¶ added in v0.5.0
type MCCYAccountStatementPayload struct { URI string `json:"Uri" validate:"required"` ValidUntilDate string `json:"ValidUntilDate" validate:"required"` Year int `json:"Year" validate:"required"` Month int `json:"Month" validate:"required"` Currency string `json:"Currency" validate:"required"` Format string `json:"Format" validate:"required"` AccountIBAN string `json:"AccountIban" validate:"required"` }
MCCYAccountStatementPayload This webhook allows you to download a statement for a specific account associated with your institution
type MCCYAccountUpdatedPayload ¶ added in v0.5.0
type MCCYAccountUpdatedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` Name string `json:"Name" validate:"required"` Label string `json:"Label" validate:"required"` Owner string `json:"Owner" validate:"required"` Kind clearbank.MCCYAccountKind `json:"Kind" validate:"required"` Currencies []string `json:"Currencies" validate:"required"` Status clearbank.MCCYAccountStatus `json:"Status" validate:"required"` ProductID string `json:"ProductId"` CustomerID string `json:"CustomerId"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` TimestampModified clearbank.Time `json:"TimestampModified" validate:"required"` StatusReason string `json:"StatusReason"` StatusInformation string `json:"StatusInformation"` Identifiers []MCCYIdentifier `json:"Identifiers" validate:"required"` Type string `json:"Type" validate:"required"` }
MCCYAccountUpdatedPayload This webhook confirms that the multicurrency account has been updated
func (MCCYAccountUpdatedPayload) GetIdentifier ¶ added in v0.6.0
func (w MCCYAccountUpdatedPayload) GetIdentifier() string
GetIdentifier returns first identifier. If no identifiers are found, an empty string is returned.
type MCCYIdentifier ¶ added in v0.3.0
type MCCYIdentifier struct { Identifier string `json:"Identifier" validate:"required"` Kind IdentifierKind `json:"Kind" validate:"required"` }
type MCCYInstitutionStatementPayload ¶ added in v0.5.0
type MCCYInstitutionStatementPayload struct { URI string `json:"Uri" validate:"required"` ValidUntilDate string `json:"ValidUntilDate" validate:"required"` Year int `json:"Year" validate:"required"` Month int `json:"Month" validate:"required"` Currency string `json:"Currency" validate:"required"` Format string `json:"Format" validate:"required"` }
MCCYInstitutionStatementPayload This webhook allows you to download a statement for all accounts associated with your institution
type MCCYInternalTransfersCancelledPayload ¶ added in v0.5.0
type MCCYInternalTransfersCancelledPayload struct { CancellationCode string `json:"CancellationCode" validate:"required"` FailureReasons []string `json:"FailureReasons" validate:"required"` EndToEndID string `json:"EndToEndId" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` DebitAccountIBAN string `json:"DebitAccountIban"` CreditAccountIBAN string `json:"CreditAccountIban"` Reference string `json:"Reference"` }
MCCYInternalTransfersCancelledPayload This webhook confirms that a multicurrency internal transfer request has been canceled
type MCCYInternalTransfersSettledPayload ¶ added in v0.5.0
type MCCYInternalTransfersSettledPayload struct { EndToEndID string `json:"EndToEndId" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` DebitAccountIBAN string `json:"DebitAccountIban"` CreditAccountIBAN string `json:"CreditAccountIban"` Reference string `json:"Reference"` }
MCCYInternalTransfersSettledPayload This webhook confirms that a multicurrency internal transfer request has been settled
type MCCYPayloadAssessmentFailedPayload ¶ added in v0.5.0
type MCCYPayloadAssessmentFailedPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` BatchID uuid.UUID `json:"BatchId" validate:"required"` EndToEndID string `json:"EndToEndId" validate:"required"` SchemeEndToEndID string `json:"SchemeEndToEndId"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` Error string `json:"Error" validate:"required"` UltimateDebtorName string `json:"UltimateDebtorName"` UltimateDebtorAccount string `json:"UltimateDebtorAccount" validate:"required"` UltimateDebtorAccountIdentifier string `json:"UltimateDebtorAccountIdentifier" validate:"required"` UltimateDebtorAddressLine1 string `json:"UltimateDebtorAddressLine1" validate:"required"` UltimateDebtorAddressLine2 string `json:"UltimateDebtorAddressLine2"` UltimateDebtorAddressLine3 string `json:"UltimateDebtorAddressLine3"` UltimateDebtorPostCode string `json:"UltimateDebtorPostCode" validate:"required"` UltimateDebtorCountryCode string `json:"UltimateDebtorCountryCode" validate:"required"` UltimateCreditorIBAN string `json:"UltimateCreditorIBAN"` UltimateCreditorAccountNumber string `json:"UltimateCreditorAccountNumber"` UltimateCreditorBic string `json:"UltimateCreditorBic"` UltimateCreditorName string `json:"UltimateCreditorName" validate:"required"` UltimateCreditorAddressLine1 string `json:"UltimateCreditorAddressLine1" validate:"required"` UltimateCreditorAddressLine2 string `json:"UltimateCreditorAddressLine2" ` UltimateCreditorAddressLine3 string `json:"UltimateCreditorAddressLine3"` UltimateCreditorPostCode string `json:"UltimateCreditorPostCode" validate:"required"` UltimateCreditorCountryCode string `json:"UltimateCreditorCountryCode" validate:"required"` }
MCCYPayloadAssessmentFailedPayload This webhook confirms that a multicurrency payment has failed assessment
type MCCYPayloadValidationFailedPayload ¶ added in v0.5.0
type MCCYPayloadValidationFailedPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` BatchID uuid.UUID `json:"BatchId" validate:"required"` EndToEndID string `json:"EndToEndId" validate:"required"` SchemeEndToEndID string `json:"SchemeEndToEndId"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` Errors []string `json:"Errors" validate:"required"` UltimateDebtorName string `json:"UltimateDebtorName"` UltimateDebtorAccount string `json:"UltimateDebtorAccount" validate:"required"` UltimateDebtorAccountIdentifier string `json:"UltimateDebtorAccountIdentifier" validate:"required"` UltimateDebtorAddressLine1 string `json:"UltimateDebtorAddressLine1" validate:"required"` UltimateDebtorAddressLine2 string `json:"UltimateDebtorAddressLine2"` UltimateDebtorAddressLine3 string `json:"UltimateDebtorAddressLine3"` UltimateDebtorPostCode string `json:"UltimateDebtorPostCode" validate:"required"` UltimateDebtorCountryCode string `json:"UltimateDebtorCountryCode" validate:"required"` UltimateCreditorIBAN string `json:"UltimateCreditorIBAN"` UltimateCreditorAccountNumber string `json:"UltimateCreditorAccountNumber"` UltimateCreditorBic string `json:"UltimateCreditorBic"` UltimateCreditorName string `json:"UltimateCreditorName" validate:"required"` UltimateCreditorAddressLine1 string `json:"UltimateCreditorAddressLine1" validate:"required"` UltimateCreditorAddressLine2 string `json:"UltimateCreditorAddressLine2" ` UltimateCreditorAddressLine3 string `json:"UltimateCreditorAddressLine3"` UltimateCreditorPostCode string `json:"UltimateCreditorPostCode" validate:"required"` UltimateCreditorCountryCode string `json:"UltimateCreditorCountryCode" validate:"required"` }
MCCYPayloadValidationFailedPayload This webhook confirms that a multicurrency payment has failed validation
type MCCYTransactionCancelledPayload ¶ added in v0.5.0
type MCCYTransactionCancelledPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` BatchID uuid.UUID `json:"BatchId" validate:"required"` EndToEndID string `json:"EndToEndId" validate:"required"` SchemeEndToEndID string `json:"SchemeEndToEndId"` AccountID uuid.UUID `json:"AccountId" validate:"required"` Reference string `json:"Reference" validate:"required"` UltimateCreditorName string `json:"UltimateCreditorName" validate:"required"` UltimateCreditorAccountIdentifiers []MCCYIdentifier `json:"UltimateCreditorAccountIdentifiers" validate:"required"` UltimateDebtorName string `json:"UltimateDebtorName" validate:"required"` UltimateDebtorAccountIdentifiers []MCCYIdentifier `json:"UltimateDebtorAccountIdentifiers" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` SchemePaymentMethod string `json:"SchemePaymentMethod" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` TimestampCancelled clearbank.Time `json:"TimestampCancelled" validate:"required"` CancellationCode string `json:"CancellationCode" validate:"required"` CancellationReason string `json:"CancellationReason" validate:"required"` }
MCCYTransactionCancelledPayload This webhook confirms that a multicurrency transaction has been canceled
func (MCCYTransactionCancelledPayload) GetAccountIdentifier ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetAccountIdentifier() string
func (MCCYTransactionCancelledPayload) GetAccountOwner ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetAccountOwner() string
func (MCCYTransactionCancelledPayload) GetAmount ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetAmount() float64
func (MCCYTransactionCancelledPayload) GetCounterpartAccountIdentifier ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetCounterpartAccountIdentifier() string
func (MCCYTransactionCancelledPayload) GetCounterpartAccountOwner ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetCounterpartAccountOwner() string
func (MCCYTransactionCancelledPayload) GetCurrency ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetCurrency() string
func (MCCYTransactionCancelledPayload) GetEndToEndID ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetEndToEndID() string
func (MCCYTransactionCancelledPayload) GetID ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetID() uuid.UUID
func (MCCYTransactionCancelledPayload) GetReference ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) GetReference() string
func (MCCYTransactionCancelledPayload) IsReturn ¶ added in v0.5.0
func (w MCCYTransactionCancelledPayload) IsReturn() bool
type MCCYTransactionCreatedPayload ¶ added in v0.5.0
type MCCYTransactionCreatedPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` BatchID uuid.UUID `json:"BatchId" validate:"required"` EndToEndID string `json:"EndToEndId" validate:"required"` SchemeEndToEndID string `json:"SchemeEndToEndId"` AccountID uuid.UUID `json:"AccountId" validate:"required"` Reference string `json:"Reference" validate:"required"` UltimateCreditorName string `json:"UltimateCreditorName" validate:"required"` UltimateCreditorAccountIdentifiers []MCCYIdentifier `json:"UltimateCreditorAccountIdentifiers" validate:"required"` UltimateDebtorName string `json:"UltimateDebtorName" validate:"required"` UltimateDebtorAccountIdentifiers []MCCYIdentifier `json:"UltimateDebtorAccountIdentifiers" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` SchemePaymentMethod string `json:"SchemePaymentMethod" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` AdditionalProperties []AdditionalProperty `json:"AdditionalProperties" validate:"required"` }
MCCYTransactionCreatedPayload This webhook confirms that a multicurrency transaction has been created
type MCCYTransactionSettledPayload ¶ added in v0.5.0
type MCCYTransactionSettledPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` BatchID uuid.UUID `json:"BatchId" validate:"required"` EndToEndID string `json:"EndToEndId" validate:"required"` SchemeEndToEndID string `json:"SchemeEndToEndId"` AccountID uuid.UUID `json:"AccountId" validate:"required"` Reference string `json:"Reference" validate:"required"` UltimateCreditorName string `json:"UltimateCreditorName" validate:"required"` UltimateCreditorAccountIdentifiers []MCCYIdentifier `json:"UltimateCreditorAccountIdentifiers" validate:"required"` UltimateDebtorName string `json:"UltimateDebtorName" validate:"required"` UltimateDebtorAccountIdentifiers []MCCYIdentifier `json:"UltimateDebtorAccountIdentifiers" validate:"required"` InstructedAmount float64 `json:"InstructedAmount" validate:"required"` InstructedCurrency string `json:"InstructedCurrency" validate:"required"` SchemePaymentMethod string `json:"SchemePaymentMethod" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` TimestampSettled clearbank.Time `json:"TimestampSettled" validate:"required"` TimestampSubmitted clearbank.Time `json:"TimestampSubmitted" validate:"required"` AdditionalProperties []AdditionalProperty `json:"AdditionalProperties" validate:"required"` }
MCCYTransactionSettledPayload This webhook confirms that a multicurrency transaction has been settled
func (MCCYTransactionSettledPayload) GetAccountIdentifier ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetAccountIdentifier() string
func (MCCYTransactionSettledPayload) GetAccountOwner ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetAccountOwner() string
func (MCCYTransactionSettledPayload) GetAmount ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetAmount() float64
func (MCCYTransactionSettledPayload) GetCounterpartAccountIdentifier ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetCounterpartAccountIdentifier() string
func (MCCYTransactionSettledPayload) GetCounterpartAccountOwner ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetCounterpartAccountOwner() string
func (MCCYTransactionSettledPayload) GetCurrency ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetCurrency() string
func (MCCYTransactionSettledPayload) GetEndToEndID ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetEndToEndID() string
func (MCCYTransactionSettledPayload) GetID ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetID() uuid.UUID
func (MCCYTransactionSettledPayload) GetReference ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) GetReference() string
func (MCCYTransactionSettledPayload) IsReturn ¶ added in v0.5.0
func (w MCCYTransactionSettledPayload) IsReturn() bool
type MCCYVirtualAccountCreatedPayload ¶ added in v0.5.0
type MCCYVirtualAccountCreatedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` VirtualAccountID uuid.UUID `json:"VirtualAccountId" validate:"required"` BatchID uuid.UUID `json:"BatchId" validate:"required"` Owner string `json:"Owner" validate:"required"` Status clearbank.MCCYAccountStatus `json:"Status" validate:"required"` Identifiers []MCCYIdentifier `json:"Identifiers" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` }
MCCYVirtualAccountCreatedPayload This webhook confirms that the multicurrency virtual account has been created
func (MCCYVirtualAccountCreatedPayload) GetIdentifier ¶ added in v0.6.0
func (w MCCYVirtualAccountCreatedPayload) GetIdentifier() string
GetIdentifier returns first identifier. If no identifiers are found, an empty string is returned.
type MCCYVirtualAccountUpdatedPayload ¶ added in v0.5.0
type MCCYVirtualAccountUpdatedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` VirtualAccountID uuid.UUID `json:"VirtualAccountId" validate:"required"` Owner string `json:"Owner" validate:"required"` Status clearbank.MCCYAccountStatus `json:"Status" validate:"required"` Identifiers []MCCYIdentifier `json:"Identifiers" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` TimestampModified clearbank.Time `json:"TimestampModified" validate:"required"` StatusReason string `json:"StatusReason"` StatusInformation string `json:"StatusInformation"` }
MCCYVirtualAccountUpdatedPayload This webhook confirms that the multicurrency virtual account has been updated
func (MCCYVirtualAccountUpdatedPayload) GetIdentifier ¶ added in v0.6.0
func (w MCCYVirtualAccountUpdatedPayload) GetIdentifier() string
GetIdentifier returns first identifier. If no identifiers are found, an empty string is returned.
type PaymentMessageAssesmentFailedPayload ¶ added in v0.5.0
type PaymentMessageAssesmentFailedPayload struct { MessageID uuid.UUID `json:"MessageId" validate:"required"` PaymentMethodType TransactionScheme `json:"PaymentMethodType" validate:"required"` AssesmentFailures []struct { EndToEndID string `json:"EndToEndId"` Reasons []string `json:"Reasons"` } `json:"AssesmentFailure" validate:"required"` AccountIdentification struct { Debtor struct { IBAN string `json:"IBAN" validate:"required"` BBAN string `json:"BBAN" validate:"required"` } Creditors []struct { Reference string `json:"Reference"` Amount float64 `json:"Amount"` CurrencyCode string `json:"CurrencyCode"` IBAN string `json:"IBAN" validate:"required"` BBAN string `json:"BBAN" validate:"required"` } `json:"Creditors" validate:"required"` } `json:"AccountIdentification" validate:"required"` }
PaymentMessageAssesmentFailedPayload This webhook confirms the payment assessment has failed
type PaymentMessageValidationFailedPayload ¶ added in v0.5.0
type PaymentMessageValidationFailedPayload struct { MessageID uuid.UUID `json:"MessageId" validate:"required"` PaymentMethodType TransactionScheme `json:"PaymentMethodType" validate:"required"` ValidationFailures []struct { EndToEndID string `json:"EndToEndId"` Reasons []string `json:"Reasons"` } `json:"ValidationFailure" validate:"required"` AccountIdentification struct { Debtor struct { IBAN string `json:"IBAN" validate:"required"` BBAN string `json:"BBAN" validate:"required"` AccountName string `json:"AccountName"` AccountHolderLabel string `json:"AccountHolderLabel"` InstitutionName string `json:"InstitutionName"` } Creditors []struct { Reference string `json:"Reference" validate:"required"` Amount float64 `json:"Amount" validate:"required"` CurrencyCode string `json:"CurrencyCode" validate:"required"` IBAN string `json:"IBAN" validate:"required"` BBAN string `json:"BBAN" validate:"required"` AccountName string `json:"AccountName"` AccountHolderLabel string `json:"AccountHolderLabel"` InstitutionName string `json:"InstitutionName"` } `json:"Creditors" validate:"required"` } `json:"AccountIdentification" validate:"required"` }
PaymentMessageValidationFailedPayload This webhook confirms the payment validation has failed
type Request ¶ added in v0.5.0
type Request struct { Type string `json:"Type"` Version int `json:"Version"` Nonce int `json:"Nonce"` Payload json.RawMessage `json:"Payload"` }
type Response ¶ added in v0.5.0
type Response struct { // The value that you receive in the webhook request. Nonce int `json:"Nonce"` }
type Transaction ¶ added in v0.4.0
type Transaction interface { GetID() uuid.UUID GetEndToEndID() string GetCurrency() string GetAmount() float64 IsReturn() bool GetReference() string GetAccountIdentifier() string GetAccountOwner() string GetCounterpartAccountIdentifier() string GetCounterpartAccountOwner() string }
Transaction is a common interface for the transaction related webhooks.
type TransactionAccount ¶ added in v0.3.0
type TransactionRejectedPayload ¶ added in v0.5.0
type TransactionRejectedPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` Status TransactionStatus `json:"Status" validate:"required"` Scheme TransactionScheme `json:"Scheme" validate:"required"` EndToEndTransactionID string `json:"EndToEndTransactionId" validate:"required"` Amount float64 `json:"Amount" validate:"required"` TimestampModified clearbank.Time `json:"TimestampModified" validate:"required"` CurrencyCode string `json:"CurrencyCode"` DebitCreditCode DebitCreditCode `json:"DebitCreditCode" validate:"required"` Reference string `json:"Reference"` Return bool `json:"IsReturn" validate:"boolean"` CancellationReason string `json:"CancellationReason"` CancellationCode string `json:"CancellationCode"` Account TransactionAccount `json:"Account" validate:"required"` CounterpartAccount TransactionAccount `json:"CounterpartAccount" validate:"required"` }
TransactionRejectedPayload This webhook confirms the payment has been rejected
func (TransactionRejectedPayload) GetAccountIdentifier ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetAccountIdentifier() string
func (TransactionRejectedPayload) GetAccountOwner ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetAccountOwner() string
func (TransactionRejectedPayload) GetAmount ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetAmount() float64
func (TransactionRejectedPayload) GetCounterpartAccountIdentifier ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetCounterpartAccountIdentifier() string
func (TransactionRejectedPayload) GetCounterpartAccountOwner ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetCounterpartAccountOwner() string
func (TransactionRejectedPayload) GetCurrency ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetCurrency() string
func (TransactionRejectedPayload) GetEndToEndID ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetEndToEndID() string
func (TransactionRejectedPayload) GetID ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetID() uuid.UUID
func (TransactionRejectedPayload) GetReference ¶ added in v0.5.0
func (w TransactionRejectedPayload) GetReference() string
func (TransactionRejectedPayload) IsReturn ¶ added in v0.5.0
func (w TransactionRejectedPayload) IsReturn() bool
type TransactionScheme ¶ added in v0.3.0
type TransactionScheme string
type TransactionSettledPayload ¶ added in v0.5.0
type TransactionSettledPayload struct { TransactionID uuid.UUID `json:"TransactionId" validate:"required"` Status TransactionStatus `json:"Status" validate:"required"` Scheme TransactionScheme `json:"Scheme" validate:"required"` EndToEndTransactionID string `json:"EndToEndTransactionId" validate:"required"` Amount float64 `json:"Amount" validate:"required"` TimestampSettled clearbank.Time `json:"TimestampSettled" validate:"required"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` CurrencyCode string `json:"CurrencyCode" validate:"required"` DebitCreditCode DebitCreditCode `json:"DebitCreditCode" validate:"required"` Reference string `json:"Reference"` Return bool `json:"IsReturn" validate:"boolean"` Account TransactionAccount `json:"Account" validate:"required"` CounterpartAccount TransactionAccount `json:"CounterpartAccount" validate:"required"` ActualEndToEndTransactionID string `json:"ActualEndToEndTransactionId" validate:"required"` DirectDebitMandateID string `json:"DirectDebitMandateId"` TransactionCode string `json:"TransactionCode"` ServiceUserNumber string `json:"ServiceUserNumber"` BacsTransactionID string `json:"BacsTransactionId"` BacsTransactionDescription string `json:"BacsTransactionDescription"` TransactionType string `json:"TransactionType"` TransactionSource string `json:"TransactionSource"` SupplementaryData []struct { Name string `json:"Name"` Value string `json:"Value"` } `json:"SupplementaryData"` }
TransactionSettledPayload This sends a webhook notification confirming the transaction has settled
func (TransactionSettledPayload) GetAccountIdentifier ¶ added in v0.5.0
func (w TransactionSettledPayload) GetAccountIdentifier() string
func (TransactionSettledPayload) GetAccountOwner ¶ added in v0.5.0
func (w TransactionSettledPayload) GetAccountOwner() string
func (TransactionSettledPayload) GetAmount ¶ added in v0.5.0
func (w TransactionSettledPayload) GetAmount() float64
func (TransactionSettledPayload) GetCounterpartAccountIdentifier ¶ added in v0.5.0
func (w TransactionSettledPayload) GetCounterpartAccountIdentifier() string
func (TransactionSettledPayload) GetCounterpartAccountOwner ¶ added in v0.5.0
func (w TransactionSettledPayload) GetCounterpartAccountOwner() string
func (TransactionSettledPayload) GetCurrency ¶ added in v0.5.0
func (w TransactionSettledPayload) GetCurrency() string
func (TransactionSettledPayload) GetEndToEndID ¶ added in v0.5.0
func (w TransactionSettledPayload) GetEndToEndID() string
func (TransactionSettledPayload) GetID ¶ added in v0.5.0
func (w TransactionSettledPayload) GetID() uuid.UUID
func (TransactionSettledPayload) GetReference ¶ added in v0.5.0
func (w TransactionSettledPayload) GetReference() string
func (TransactionSettledPayload) IsReturn ¶ added in v0.5.0
func (w TransactionSettledPayload) IsReturn() bool
type TransactionStatus ¶ added in v0.3.0
type TransactionStatus string
const ( TransactionStatusSettled TransactionStatus = "Settled" TransactionStatusRejected TransactionStatus = "Rejected" )
type VirtualAccountCreatedPayload ¶ added in v0.9.0
type VirtualAccountCreatedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` VirtualAccountID uuid.UUID `json:"VirtualAccountId" validate:"required"` AccountIdentifier struct { IBAN string `json:"Iban" validate:"required"` BBAN string `json:"Bban" validate:"required"` ExternalIdentifier string `json:"ExternalIdentifier"` } `json:"AccountIdentifier" validate:"required"` OwnerName string `json:"OwnerName"` TimestampCreated clearbank.Time `json:"TimestampCreated" validate:"required"` }
VirtualAccountCreatedPayload This webhook confirms creation of a virtual account.
type VirtualAccountCreationFailedPayload ¶ added in v0.5.0
type VirtualAccountCreationFailedPayload struct { AccountID uuid.UUID `json:"AccountId" validate:"required"` VirtualAccountID uuid.UUID `json:"VirtualAccountId" validate:"required"` AccountIdentifier struct { IBAN string `json:"Iban" validate:"required"` BBAN string `json:"Bban" validate:"required"` ExternalIdentifier string `json:"ExternalIdentifier"` } `json:"AccountIdentifier" validate:"required"` Errors map[string]string `json:"Errors" validate:"required"` OwnerName string `json:"OwnerName"` Timestamp clearbank.Time `json:"Timestamp" validate:"required"` }
VirtualAccountCreationFailedPayload This webhook confirms a virtual account creation failure