class Simplify::Payment
A Payment
object.
Attributes
Authentication
object used to access the API (See Simplify::Authentication
for details)
Public Class Methods
Creates an Payment
object
- parms
-
a hash of parameters; valid keys are:
-
amount
Amount of the payment (in the smallest unit of your currency). Example: 100 = $1.00USD -
authorization
The ID of the authorization being used to capture the payment. -
card => addressCity
City of the cardholder. [max length: 50, min length: 2] -
card => addressCountry
Country code (ISO-3166-1-alpha-2 code) of residence of the cardholder. [max length: 2, min length: 2] -
card => addressLine1
Address of the cardholder. [max length: 255] -
card => addressLine2
Address of the cardholder if needed. [max length: 255] -
card => addressState
State of residence of the cardholder. For the US, this is a 2-digit USPS code. [max length: 255] -
card => addressZip
Postal code of the cardholder. The postal code size is between 5 and 9 in length and only contain numbers or letters. [max length: 32] -
card => cvc
CVC security code of the card. This is the code on the back of the card. Example: 123 -
card => expMonth
Expiration month of the card. Format is MM. Example: January = 01 [min value: 1, max value: 12] required -
card => expYear
Expiration year of the card. Format is YY. Example: 2013 = 13 [min value: 0, max value: 99] required -
card => name
Name as it appears on the card. [max length: 50, min length: 2] -
card => number
Card number as it appears on the card. [max length: 19, min length: 13] required -
currency
Currency code (ISO-4217) for the transaction. Must match the currency associated with your account. [default: USD] required -
customer
ID of customer. If specified, card on file of customer will be used. -
description
Free form text field to be used as a description of the payment. This field is echoed back with the payment on any find or list operations. [max length: 1024] -
invoice
ID of invoice for which this payment is being made. -
order => commodityCode
Standard classification code for products and services. [max length: 5] -
order => customer
ID of the customer associated with the order. -
order => customerEmail
Customer
email address. -
order => customerName
Customer
name. -
order => customerNote
Additional notes provided by the customer. [max length: 255] -
order => customerReference
A merchant reference for the customer. -
order => items => amount
Cost of the item. -
order => items => description
Description of the item. -
order => items => name
Item name. -
order => items => product
Product information associated with the item. -
order => items => quantity
Quantity of the item contained in the order [min value: 1, max value: 999999, default: 1] required -
order => items => reference
A merchant reference for the item. [max length: 255] -
order => items => tax
Taxes associated with the item. -
order => merchantNote
Additional notes provided by the merchant. [max length: 255] -
order => payment
ID of the payment associated with the order. -
order => reference
A merchant reference for the order. [max length: 255] -
order => shippingAddress => city
City, town, or municipality. [max length: 255, min length: 2] -
order => shippingAddress => country
2-character country code. [max length: 2, min length: 2] -
order => shippingAddress => line1
Street address. [max length: 255] -
order => shippingAddress => line2
(Opt) Street address continued. [max length: 255] -
order => shippingAddress => name
Name of the entity being shipped to. [max length: 255] -
order => shippingAddress => state
State or province. [max length: 255] -
order => shippingAddress => zip
Postal code. [max length: 32] -
order => shippingFromAddress => city
City, town, or municipality. [max length: 255, min length: 2] -
order => shippingFromAddress => country
2-character country code. [max length: 2, min length: 2] -
order => shippingFromAddress => line1
Street address. [max length: 255] -
order => shippingFromAddress => line2
(Opt) Street address continued. [max length: 255] -
order => shippingFromAddress => name
Name of the entity performing the shipping. [max length: 255] -
order => shippingFromAddress => state
State or province. [max length: 255] -
order => shippingFromAddress => zip
Postal code. [max length: 32] -
order => shippingName
Name of the entity being shipped to. -
order => source
Order source. [default: WEB] required -
order => status
Status of the order. [default: INCOMPLETE] required -
reference
Custom reference field to be used with outside systems. -
replayId
An identifier that can be sent to uniquely identify a payment request to facilitate retries due to I/O related issues. This identifier must be unique for your account (sandbox or live) across all of your payments. If supplied, we will check for a payment on your account that matches this identifier. If found will attempt to return an identical response of the original request. [max length: 50, min length: 1] -
statementDescription => name
Merchant name. required -
statementDescription => phoneNumber
Merchant contact phone number. -
taxExempt
Specify true to indicate that the payment is tax-exempt. -
token
If specified, card associated with card token will be used. [max length: 255]
- auth
-
Authentication
information used for the API call. If no value is passed the global keysSimplify::public_key
andSimplify::private_key
are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns a Payment
object.
# File lib/simplify/payment.rb, line 121 def self.create(parms, *auth) auth_obj = Simplify::PaymentsApi.create_auth_object(auth) h = Simplify::PaymentsApi.execute("payment", 'create', parms, auth_obj) obj = Payment.new() obj.authentication = auth_obj obj = obj.merge!(h) obj end
Retrieve a Payment
object from the API
- id
-
ID of object to retrieve
- auth
-
Authentication
information used for the API call. If no value is passed the global keysSimplify::public_key
andSimplify::private_key
are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns a Payment
object.
# File lib/simplify/payment.rb, line 156 def self.find(id, *auth) auth_obj = Simplify::PaymentsApi.create_auth_object(auth) h = Simplify::PaymentsApi.execute("payment", 'show', {"id" => id}, auth_obj) obj = Payment.new() obj.authentication = auth_obj obj = obj.merge!(h) obj end
Retrieve Payment
objects.
- criteria
-
a hash of parameters; valid keys are:
-
filter
<table class=“filter_list”><tr><td>filter.id</td><td>Filter by the payment Id</td></tr><tr><td>filter.replayId</td><td>Filter by the compoundReplayId</td></tr><tr><td>filter.last4</td><td>Filter by the card number (last 4 digits)</td></tr><tr><td>filter.amount</td><td>Filter by the payment amount (in the smallest unit of your currency)</td></tr><tr><td>filter.text</td><td>Filter by the description of the payment</td></tr><tr><td>filter.amountMin & filter.amountMax</td><td>The filter amountMin must be used with amountMax to find payments with payments amounts between the min and max figures</td></tr><tr><td>filter.dateCreatedMin<sup>*</sup></td><td>Filter by the minimum created date you are searching for - Date in UTC millis</td></tr><tr><td>filter.dateCreatedMax<sup>*</sup></td><td>Filter by the maximum created date you are searching for - Date in UTC millis</td></tr><tr><td>filter.deposit</td><td>Filter by the deposit id connected to the payment</td></tr><tr><td>filter.customer</td><td>Filter using the Id of the customer to find the payments for that customer</td></tr><tr><td>filter.status</td><td>Filter by the payment status text</td></tr><tr><td>filter.reference</td><td>Filter by the payment reference text</td></tr><tr><td>filter.authCode</td><td>Filter by the payment authorization code (Not the authorization ID)</td></tr><tr><td>filter.q</td><td>You can use this to filter by the Id, the authCode or the amount of the payment</td></tr></table>
<sup>*</sup>Use dateCreatedMin with dateCreatedMax in the same filter if you want to search between two created dates -
max
Allows up to a max of 50 list items to return. [min value: 0, max value: 50, default: 20] -
offset
Used in paging of the list. This is the start offset of the page. [min value: 0, default: 0] -
sorting
Allows for ascending or descending sorting of the list. The value maps properties to the sort direction (eitherasc
for ascending ordesc
for descending). Sortable properties are:dateCreated createdBy amount id description paymentDate
.
- auth
-
Authentication
information used for the API call. If no value is passed the global keysSimplify::public_key
andSimplify::private_key
are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns an object where the list
property contains the list of Payment
objects and the total
property contains the total number of Payment
objects available for the given criteria.
# File lib/simplify/payment.rb, line 140 def self.list(criteria = nil, *auth) auth_obj = Simplify::PaymentsApi.create_auth_object(auth) h = Simplify::PaymentsApi.execute("payment", 'list', criteria, auth_obj) obj = Payment.new() obj.authentication = auth_obj obj = obj.merge!(h) obj end
Public Instance Methods
Returns the private key used when accessing this object. Deprecated: please use 'authentication' instead.
# File lib/simplify/payment.rb, line 50 def private_key return self.authentication.private_key end
Sets the private key used when accessing this object. Deprecated: please use 'authentication' instead.
# File lib/simplify/payment.rb, line 55 def private_key=(k) return self.authentication.private_key = k end
Returns the public key used when accessing this object. Deprecated: please use 'authentication' instead.
# File lib/simplify/payment.rb, line 40 def public_key return self.authentication.public_key end
Sets the public key used when accessing this object. Deprecated: please use 'authentication' instead.
# File lib/simplify/payment.rb, line 45 def public_key=(k) return self.authentication.public_key = k end
Updates this object
The properties that can be updated:
# File lib/simplify/payment.rb, line 169 def update() h = Simplify::PaymentsApi.execute("payment", 'update', self, self.authentication) self.merge!(h) self end