[This is preliminary documentation and is subject to change.]
Classes
Class | Description | |
---|---|---|
![]() | ActualAccountData | |
![]() | Address |
Primitive (maybe temporary) implementation of IAddress
|
![]() | ConfigBasedCurrencyMarket |
Provides rate conversion services based on an APP config file
|
![]() | ConnectionParameters | |
![]() | PaymentException |
General NFX payment system specific exception
|
![]() | PaySession |
Represents session of PaySystem.
All PaySystem operation requires session as mandatory parameter
|
![]() | PaySystem |
Base class for IPaySystemImplementation implementation.
Instances of descendants of this class is typically created and configured in PaySystemStarter class.
Then particular pay system can be obtained from PaySystem.Instances[PAY_SYSTEM_NAME] indexer
|
![]() | PaySystemHost | |
![]() | PaySystemStarter |
Represents a starter that launches payment systems on startup
|
![]() | PaySystemWithStaticFees | |
![]() | PayWebTerminal | |
![]() | Transaction |
Represents an abstraction of financial operation performed with pay system
|
![]() | Transaction Operation |
Structures
Structure | Description | |
---|---|---|
![]() | Account |
Represents an account data vector that is -
type of account identity (i.e. 'customer'), identity id (i.e. customer number '125') and
account id within this identity (i.e. ref to customer #125 card '223322.....').
May also represent temporary web terminal token generated by IWebPayTerminal in which case IsWebTerminalToken = true
|
Interfaces
Interface | Description | |
---|---|---|
![]() | IActualAccountData |
Represents actual data for supplied account object.
Data represented by this interface is ALWAYS TRANSITIVE in memory as
some fields are either never stored permanently (i.e. CVC) or ciphered in the store (account number)
|
![]() | IAddress |
Represents address
|
![]() | ICurrencyMarket |
Represents a market that can convert buy/sell currencies
|
![]() | IPaySessionContext |
Denotes a context of transaction execution.
Can be used to provide additional information
|
![]() | IPaySystem |
Describes an entity that can perform pay functions (i.e. charge, transfer)
|
![]() | IPaySystemHost |
Represents a process-global entity that resolves account handle into actual account data
and fetches existing transactions.
This design provides an indirection level between pay systems (like Stripe, PayPal, Bank etc.) and
particular application data store implementation as it decouples system-internal formats of transaction and
account storage from provider-internal data (i.e. PayPal payment token string).
The instance of implementor is a singleton accessible via PaySystem.PaySystemHost
|
![]() | IPaySystemHostImplementation |
Denotes an implementation of IPaySystemHost
|
![]() | IPaySystemImplementation |
Describes an entity that can perform pay functions with several usefull interfaces in NFX style
|
![]() | IPayWebTerminal |
Represents a web terminal for pay systems that tokenize sensitive CC data via a call to provider
so that actual CC numbers never touch our servers in a plain form, instead tokens/nonces are supplied
back by the provider tokenizer. This is needed for PCI compliance.
|
Enumerations
Enumeration | Description | |
---|---|---|
![]() | AccountType |
Represents account type because some pay services (i.e. Stripe) requires this info
|
![]() | ProcessingFeeKind |
Denotes processing fee types, such as: included in amount and surcharged.
|
![]() | Transaction OperationType | |
![]() | TransactionStatus |
Denotes transaction status
|
![]() | TransactionType |
Denotes transaction types, such as: charges, refunds, transfers
|