Show / Hide Table of Contents

Class Transaction

Represents an abstraction of financial operation performed with pay system

Inheritance
System.Object
Transaction
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: NFX.Web.Pay
Assembly: NFX.Web.dll
Syntax
[Serializable]
public sealed class Transaction

Constructors

Transaction(Object, TransactionType, TransactionStatus, Account, Account, String, Object, DateTime, Amount, Nullable<Decimal>, String, Object)

Framework-only method. Developer shouldn't call it.

Declaration
public Transaction(object id, TransactionType type, TransactionStatus status, Account from, Account to, string processorName, object token, DateTime createDateUTC, Amount amount, decimal ? fee = default (decimal ? ), string description = null, object extraData = null)
Parameters
Type Name Description
System.Object id

Trasaction ID

TransactionType type

Trasaction type

TransactionStatus status

Transaction Status

Account from

Source account

Account to

Destination account

System.String processorName

Payment processor name which this trasaction belongs to

System.Object token

Payment processor trasaction of this trasaction

System.DateTime createDateUTC

Creation date of this trasaction

Amount amount

Amount of this transaction

System.Nullable<System.Decimal> fee

Service fee

System.String description

Description of this transaction (e.g. "Payment for CPU Intel i7 4470 SandyBridge")

System.Object extraData

Some extra data if needed

Properties

Amount

Transaction amount - monetary value and currency code. Depending on the transaction type can indicate charged amount, refunded amount, transfer amount

Declaration
public Amount Amount { get; }
Property Value
Type Description
Amount

AmountCaptured

Charged amount - monetary value and currency code. For charge indicates captured amount in two-step charge scenario. Returns zero for uncaptured charges (created with captured flag set to false). Returns non-zero amount (typically is equal to original charge amount) for captured amount. Returns zero for all other transaction types

Declaration
public Amount AmountCaptured { get; }
Property Value
Type Description
Amount

AmountRefunded

Transaction amount - monetary value and currency code. Indicates refunded amount for charge transaction. Can be reflected in child refund transactions when explicit refund performed or can be just reminder of partial capture. For transactions types other than charge returns zero

Declaration
public Amount AmountRefunded { get; }
Property Value
Type Description
Amount

CanCapture

If this transaction can be captured by value less or equal to its initial amount

Declaration
public bool CanCapture { get; }
Property Value
Type Description
System.Boolean

CanRefund

If this transaction can be refunded by value less or equal to its initial amount

Declaration
public bool CanRefund { get; }
Property Value
Type Description
System.Boolean

CanVoid

Declaration
public bool CanVoid { get; }
Property Value
Type Description
System.Boolean

Date

UTC timestamp of this transaction creation

Declaration
public DateTime Date { get; }
Property Value
Type Description
System.DateTime

Description

Textual transaction description

Declaration
public string Description { get; }
Property Value
Type Description
System.String

ExtraData

Contains additional data

Declaration
public object ExtraData { get; }
Property Value
Type Description
System.Object

Fee

Declaration
public Amount Fee { get; }
Property Value
Type Description
Amount

From

Declaration
public Account From { get; }
Property Value
Type Description
Account

ID

Unique ID for this transaction instance

Declaration
public object ID { get; }
Property Value
Type Description
System.Object

IsVoided

True if transaction was ever voided

Declaration
public bool IsVoided { get; }
Property Value
Type Description
System.Boolean

LeftToCapture

Declaration
public Amount LeftToCapture { get; }
Property Value
Type Description
Amount

LeftToRefund

Declaration
public Amount LeftToRefund { get; }
Property Value
Type Description
Amount

Log

Contains log of operations performed on this transaction

Declaration
public IEnumerable<Transaction.Operation> Log { get; }
Property Value
Type Description
System.Collections.Generic.IEnumerable<Transaction.Operation>

PaySystem

Declaration
public IPaySystem PaySystem { get; }
Property Value
Type Description
IPaySystem

Processor

The name of pay system implementation system that processes this transaction

Declaration
public string Processor { get; }
Property Value
Type Description
System.String

Status

Declaration
public TransactionStatus Status { get; }
Property Value
Type Description
TransactionStatus

To

Declaration
public Account To { get; }
Property Value
Type Description
Account

Token

A value assigned by a particular pay system implementation. This value is parsed and understood by issuing system

Declaration
public object Token { get; }
Property Value
Type Description
System.Object

Type

Declaration
public TransactionType Type { get; }
Property Value
Type Description
TransactionType

Methods

__Apply(Transaction.Operation)

Must be call by PaySystem. Developers do not call internal method

Declaration
public void __Apply(Transaction.Operation operation)
Parameters
Type Name Description
Transaction.Operation operation

Capture(Nullable<Decimal>, String, Object, ConnectionParameters, IPaySessionContext)

Declaration
public bool Capture(decimal ? amount = default (decimal ? ), string description = null, object extraData = null, ConnectionParameters cParams = null, IPaySessionContext context = null)
Parameters
Type Name Description
System.Nullable<System.Decimal> amount
System.String description
System.Object extraData
ConnectionParameters cParams
IPaySessionContext context
Returns
Type Description
System.Boolean

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
System.Int32
Overrides
System.Object.GetHashCode()

Refresh(ConnectionParameters, IPaySessionContext)

Declaration
public bool Refresh(ConnectionParameters cParams = null, IPaySessionContext context = null)
Parameters
Type Name Description
ConnectionParameters cParams
IPaySessionContext context
Returns
Type Description
System.Boolean

Refund(Nullable<Decimal>, String, Object, ConnectionParameters, IPaySessionContext)

Declaration
public bool Refund(decimal ? amount = default (decimal ? ), string description = null, object extraData = null, ConnectionParameters cParams = null, IPaySessionContext context = null)
Parameters
Type Name Description
System.Nullable<System.Decimal> amount
System.String description
System.Object extraData
ConnectionParameters cParams
IPaySessionContext context
Returns
Type Description
System.Boolean

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
System.Object.ToString()

Void(String, Object, ConnectionParameters, IPaySessionContext)

Declaration
public bool Void(string description = null, object extraData = null, ConnectionParameters cParams = null, IPaySessionContext context = null)
Parameters
Type Name Description
System.String description
System.Object extraData
ConnectionParameters cParams
IPaySessionContext context
Returns
Type Description
System.Boolean

Extension Methods

MiscUtils.NonNull<T>(T, Func<Exception>, String)
ObjectValueConversion.AsString(Object, String, ConvertErrorHandling)
ObjectValueConversion.AsNonNullOrEmptyString(Object)
ObjectValueConversion.AsLaconicConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsJSONConfig(Object, ConfigSectionNode, String, ConvertErrorHandling)
ObjectValueConversion.AsXMLConfig(Object, ConfigSectionNode, ConvertErrorHandling)
ObjectValueConversion.AsChar(Object, Char, ConvertErrorHandling)
ObjectValueConversion.AsNullableChar(Object, Nullable<Char>, ConvertErrorHandling)
ObjectValueConversion.AsByte(Object, Byte, ConvertErrorHandling)
ObjectValueConversion.AsNullableByte(Object, Nullable<Byte>, ConvertErrorHandling)
ObjectValueConversion.AsSByte(Object, SByte, ConvertErrorHandling)
ObjectValueConversion.AsNullableSByte(Object, Nullable<SByte>, ConvertErrorHandling)
ObjectValueConversion.AsShort(Object, Int16, ConvertErrorHandling)
ObjectValueConversion.AsNullableShort(Object, Nullable<Int16>, ConvertErrorHandling)
ObjectValueConversion.AsUShort(Object, UInt16, ConvertErrorHandling)
ObjectValueConversion.AsNullableUShort(Object, Nullable<UInt16>, ConvertErrorHandling)
ObjectValueConversion.AsInt(Object, Int32, ConvertErrorHandling)
ObjectValueConversion.AsNullableInt(Object, Nullable<Int32>, ConvertErrorHandling)
ObjectValueConversion.AsUInt(Object, UInt32, ConvertErrorHandling)
ObjectValueConversion.AsNullableUInt(Object, Nullable<UInt32>, ConvertErrorHandling)
ObjectValueConversion.AsLong(Object, Int64, ConvertErrorHandling)
ObjectValueConversion.AsNullableLong(Object, Nullable<Int64>, ConvertErrorHandling)
ObjectValueConversion.AsULong(Object, UInt64, ConvertErrorHandling)
ObjectValueConversion.AsNullableULong(Object, Nullable<UInt64>, ConvertErrorHandling)
ObjectValueConversion.AsDouble(Object, Double, ConvertErrorHandling)
ObjectValueConversion.AsNullableDouble(Object, Nullable<Double>, ConvertErrorHandling)
ObjectValueConversion.AsFloat(Object, Single, ConvertErrorHandling)
ObjectValueConversion.AsNullableFloat(Object, Nullable<Single>, ConvertErrorHandling)
ObjectValueConversion.AsDecimal(Object, Decimal, ConvertErrorHandling)
ObjectValueConversion.AsNullableDecimal(Object, Nullable<Decimal>, ConvertErrorHandling)
ObjectValueConversion.AsBool(Object, Boolean, ConvertErrorHandling)
ObjectValueConversion.AsNullableBool(Object, Nullable<Boolean>, ConvertErrorHandling)
ObjectValueConversion.AsGUID(Object, Guid, ConvertErrorHandling)
ObjectValueConversion.AsNullableGUID(Object, Nullable<Guid>, ConvertErrorHandling)
ObjectValueConversion.AsDateTime(Object)
ObjectValueConversion.AsDateTime(Object, DateTime, ConvertErrorHandling)
ObjectValueConversion.AsNullableDateTime(Object, Nullable<DateTime>, ConvertErrorHandling)
ObjectValueConversion.AsGDID(Object)
ObjectValueConversion.AsGDID(Object, GDID, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDID(Object, Nullable<GDID>, ConvertErrorHandling)
ObjectValueConversion.AsGDIDSymbol(Object)
ObjectValueConversion.AsGDIDSymbol(Object, GDIDSymbol, ConvertErrorHandling)
ObjectValueConversion.AsNullableGDIDSymbol(Object, Nullable<GDIDSymbol>, ConvertErrorHandling)
ObjectValueConversion.AsTimeSpan(Object)
ObjectValueConversion.AsTimeSpan(Object, TimeSpan, ConvertErrorHandling)
ObjectValueConversion.AsNullableTimeSpan(Object, Nullable<TimeSpan>, ConvertErrorHandling)
ObjectValueConversion.AsEnum<TEnum>(Object, TEnum, ConvertErrorHandling)
ObjectValueConversion.AsNullableEnum<TEnum>(Object, Nullable<TEnum>, ConvertErrorHandling)
ObjectValueConversion.AsUri(Object, Uri, ConvertErrorHandling)
JSONExtensions.ToJSON(Object, JSONWritingOptions)
JSONExtensions.ToJSON(Object, TextWriter, JSONWritingOptions)
JSONExtensions.ToJSON(Object, Stream, JSONWritingOptions, Encoding)
ErlObject.ToErlObject(Object)
ErlObject.ToErlObject(Object, ErlTypeOrder, Boolean)
Back to top Copyright © 2006-2018 Agnicore Inc
Generated by DocFX