Class: Simplify::Payment
- Inherits:
-
Hash
- Object
- Hash
- Simplify::Payment
- Defined in:
- lib/simplify/payment.rb
Overview
A Payment object.
Instance Attribute Summary collapse
-
#authentication ⇒ Object
Authentication object used to access the API (See Simplify::Authentication for details).
Class Method Summary collapse
-
.create(parms, *auth) ⇒ Object
Creates an Payment object.
-
.find(id, *auth) ⇒ Object
Retrieve a Payment object from the API.
-
.list(criteria = nil, *auth) ⇒ Object
Retrieve Payment objects.
Instance Method Summary collapse
-
#private_key ⇒ Object
Returns the private key used when accessing this object.
-
#private_key=(k) ⇒ Object
Sets the private key used when accessing this object.
-
#public_key ⇒ Object
Returns the public key used when accessing this object.
-
#public_key=(k) ⇒ Object
Sets the public key used when accessing this object.
-
#update ⇒ Object
Updates this object.
Instance Attribute Details
#authentication ⇒ Object
Authentication object used to access the API (See Simplify::Authentication for details)
37 38 39 |
# File 'lib/simplify/payment.rb', line 37 def authentication @authentication end |
Class Method Details
.create(parms, *auth) ⇒ Object
Creates an Payment object
- parms
-
a hash of parameters; valid keys are:
-
amountAmount of the payment (in the smallest unit of your currency). Example: 100 = $1.00USD -
authorizationThe ID of the authorization being used to capture the payment. -
card => addressCityCity of the cardholder. [max length: 50, min length: 2] -
card => addressCountryCountry code (ISO-3166-1-alpha-2 code) of residence of the cardholder. [max length: 2, min length: 2] -
card => addressLine1Address of the cardholder. [max length: 255] -
card => addressLine2Address of the cardholder if needed. [max length: 255] -
card => addressStateState of residence of the cardholder. For the US, this is a 2-digit USPS code. [max length: 255] -
card => addressZipPostal 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 => cvcCVC security code of the card. This is the code on the back of the card. Example: 123 -
card => expMonthExpiration month of the card. Format is MM. Example: January = 01 [min value: 1, max value: 12] required -
card => expYearExpiration year of the card. Format is YY. Example: 2013 = 13 [min value: 0, max value: 99] required -
card => nameName as it appears on the card. [max length: 50, min length: 2] -
card => numberCard number as it appears on the card. [max length: 19, min length: 13] required -
currencyCurrency code (ISO-4217) for the transaction. Must match the currency associated with your account. [default: USD] required -
customerID of customer. If specified, card on file of customer will be used. -
descriptionFree 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] -
invoiceID of invoice for which this payment is being made. -
order => commodityCodeStandard classification code for products and services. [max length: 5] -
order => customerID of the customer associated with the order. -
order => customerEmailCustomer email address. -
order => customerNameCustomer name. -
order => customerNoteAdditional notes provided by the customer. [max length: 255] -
order => customerReferenceA merchant reference for the customer. -
order => items => amountCost of the item. -
order => items => descriptionDescription of the item. -
order => items => nameItem name. -
order => items => productProduct information associated with the item. -
order => items => quantityQuantity of the item contained in the order [min value: 1, max value: 999999, default: 1] required -
order => items => referenceA merchant reference for the item. [max length: 255] -
order => items => taxTaxes associated with the item. -
order => merchantNoteAdditional notes provided by the merchant. [max length: 255] -
order => paymentID of the payment associated with the order. -
order => referenceA merchant reference for the order. [max length: 255] -
order => shippingAddress => cityCity, town, or municipality. [max length: 255, min length: 2] -
order => shippingAddress => country2-character country code. [max length: 2, min length: 2] -
order => shippingAddress => line1Street address. [max length: 255] -
order => shippingAddress => line2(Opt) Street address continued. [max length: 255] -
order => shippingAddress => nameName of the entity being shipped to. [max length: 255] -
order => shippingAddress => stateState or province. [max length: 255] -
order => shippingAddress => zipPostal code. [max length: 32] -
order => shippingFromAddress => cityCity, town, or municipality. [max length: 255, min length: 2] -
order => shippingFromAddress => country2-character country code. [max length: 2, min length: 2] -
order => shippingFromAddress => line1Street address. [max length: 255] -
order => shippingFromAddress => line2(Opt) Street address continued. [max length: 255] -
order => shippingFromAddress => nameName of the entity performing the shipping. [max length: 255] -
order => shippingFromAddress => stateState or province. [max length: 255] -
order => shippingFromAddress => zipPostal code. [max length: 32] -
order => shippingNameName of the entity being shipped to. -
order => sourceOrder source. [default: WEB] required -
order => statusStatus of the order. [default: INCOMPLETE] required -
referenceCustom reference field to be used with outside systems. -
replayIdAn 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 => nameMerchant name. required -
statementDescription => phoneNumberMerchant contact phone number. -
taxExemptSpecify true to indicate that the payment is tax-exempt. -
tokenIf 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 keys Simplify::public_key and Simplify::private_key are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns a Payment object.
121 122 123 124 125 126 127 128 129 |
# 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 |
.find(id, *auth) ⇒ Object
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 keys Simplify::public_key and Simplify::private_key are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns a Payment object.
156 157 158 159 160 161 162 163 164 |
# 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 |
.list(criteria = nil, *auth) ⇒ Object
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 -
maxAllows up to a max of 50 list items to return. [min value: 0, max value: 50, default: 20] -
offsetUsed in paging of the list. This is the start offset of the page. [min value: 0, default: 0] -
sortingAllows for ascending or descending sorting of the list. The value maps properties to the sort direction (eitherascfor ascending ordescfor 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 keys Simplify::public_key and Simplify::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.
140 141 142 143 144 145 146 147 148 149 |
# 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 |
Instance Method Details
#private_key ⇒ Object
Returns the private key used when accessing this object. Deprecated: please use ‘authentication’ instead.
50 51 52 |
# File 'lib/simplify/payment.rb', line 50 def private_key return self.authentication.private_key end |
#private_key=(k) ⇒ Object
Sets the private key used when accessing this object. Deprecated: please use ‘authentication’ instead.
55 56 57 |
# File 'lib/simplify/payment.rb', line 55 def private_key=(k) return self.authentication.private_key = k end |
#public_key ⇒ Object
Returns the public key used when accessing this object. Deprecated: please use ‘authentication’ instead.
40 41 42 |
# File 'lib/simplify/payment.rb', line 40 def public_key return self.authentication.public_key end |
#public_key=(k) ⇒ Object
Sets the public key used when accessing this object. Deprecated: please use ‘authentication’ instead.
45 46 47 |
# File 'lib/simplify/payment.rb', line 45 def public_key=(k) return self.authentication.public_key = k end |
#update ⇒ Object
Updates this object
The properties that can be updated:
169 170 171 172 173 |
# File 'lib/simplify/payment.rb', line 169 def update() h = Simplify::PaymentsApi.execute("payment", 'update', self, self.authentication) self.merge!(h) self end |