NameDescriptionTypeAdditional information
PaymentMethod

Required to tell the system how the user is going to pay for the order.

There are other payment types. It may be specified by type name, or by its corresponing index number.

  • SecureCreditCardPayment = 0
  • ClearCreditCardPayment = 1
  • PayAtSitePayment = 2
  • PrePaid = 3
  • StoredValueCard = 4
  • PreAuthorizedPayment = 5
JSON example:
{ "PaymentMethod": "ClearCreditCardPayment", ... } or with number: { "PaymentMethod": 1, ... }
For ClearCreditCardPayment, field "PaymentMethod" must be specified as "ClearCreditCardPayment", or 1.

PaymentMethodType

None.

AccountNumber

Credit card number, token or braintree nonce.

string

None.

ExpirationDate

The expiration date for the credit card. Required.

string

Required

SecurityCode

The security code for the credit card. This field is required if company setting MobileCvvEnabled is set to true.

string

None.

ZipCode

The billing zip code for the credit card.

string

None.

PaymentMethodType

What kind of card is passed in. Required.

CustomerPaymentMethodType

Required

CardNumberMasked

If the payment has a ProcessingType of Token then this value must be the format preserving masked PAN (e.g. 123456XXXXXX1234).

string

Max length: 200

ProcessingType

Indicates if the AccountNumber should be processed as a credit card or tokenized payment.
If not provided, "CreditCard" processing type is used by default.

ProcessingType

None.

SaveToken

Indicates if the customer wants to save this token.

boolean

None.

P2PECombo

Indicates which P2PE provider is used to apply payments when using tokens.

P2PEComboType

None.

DeviceData

Device data, from which are transaction provided for preventing possible frauds. Used for Braintree provider.

string

None.

Amount

How much is to be paid with this payment.

  • Amount can't exceed order total.
  • Amount on all payments can be up to order Total. You can provide only one paymnent with Amount of 0. Except for stored value card payments. Those are handled differently.
  • If value is not provided, default value 0 will be used.
  • If value is 0, it means to pay remaining balance of the Order.

decimal number

None.

TipAmount

Additional amount for the Tip.
Do NOT include TipAmount in Amount. If you do not wish to pay extra tip, set TipAmount to 0, or do not provide TipAmount field at all. For example order total is $12.00:

  • Amount = $0.00, TipAmount = $2.00, will charge $14.00 for this payment, if there wasn't another payment.
  • Amount = $0.00, TipAmount = $2.00, will charge $10.00 for this payment, if there were previous payments in total amount of $4.00, regardless of their TipAmount.
  • Amount = $3.00, TipAmount = $2.00, will charge $5.00 for this payment, regardless of previous payments, make sure all your payments do not exceed order total.
For payments with specified Amount, split charged amount between Amount and TipAmount, if you wish pay extra tip.
For payments without specified Amount (or Amount set to 0), provide only extra TipAmount, if you wish pay extra tip.

decimal number

None.

OrderOfProcess

Order in which to proccess this payment. If specified value is zero or negative, it is the same as if it was not specified. Order of processing starts at 1.

Value may not be provided in two cases:

  • If this is the only payment.
  • If there are two payments. Other payment must be StoredValueCardPayment also without OrderOfProcess specified
  • Otherwise value must be unique among other payments. StoredValueCardPayment payments must have OrderOfProcess before other payments. StoredValueCardPayment payments must be processed first, if used.

integer

None.

SessionKey

If using FreedomPay, the session key for the transaction

string

None.

PaymentKey

If using FreedomPay, the payment key for the transaction

string

None.

CreateToken

set to True if you want to create a token during payment

boolean

None.

CardHolderName

The cardholder's name, needed for FreedomPay

string

None.

BillingInfo

Billing information, needed for FreedomPay 3DS

BillingInfo

None.