Class: Lithic::Resources::Payments

Inherits:
Object
  • Object
show all
Defined in:
lib/lithic/resources/payments.rb,
sig/lithic/resources/payments.rbs

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Payments

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Payments.

Parameters:



296
297
298
# File 'lib/lithic/resources/payments.rb', line 296

def initialize(client:)
  @client = client
end

Instance Method Details

#create(amount:, external_bank_account_token:, financial_account_token:, method_:, method_attributes:, type:, token: nil, hold: nil, memo: nil, user_defined_id: nil, request_options: {}) ⇒ Lithic::Models::PaymentCreateResponse

Some parameter documentations has been truncated, see Models::PaymentCreateParams for more details.

Initiates a payment between a financial account and an external bank account.

Parameters:

Returns:

See Also:



38
39
40
41
42
43
44
45
46
47
# File 'lib/lithic/resources/payments.rb', line 38

def create(params)
  parsed, options = Lithic::PaymentCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "v1/payments",
    body: parsed,
    model: Lithic::Models::PaymentCreateResponse,
    options: options
  )
end

#list(account_token: nil, begin_: nil, business_account_token: nil, category: nil, end_: nil, ending_before: nil, financial_account_token: nil, page_size: nil, result: nil, starting_after: nil, status: nil, request_options: {}) ⇒ Lithic::Internal::CursorPage<Lithic::Models::Payment>

Some parameter documentations has been truncated, see Models::PaymentListParams for more details.

List all the payments for the provided search criteria.

Parameters:

  • account_token (String)
  • begin_ (Time)

    Date string in RFC 3339 format. Only entries created after the specified time wi

  • business_account_token (String)
  • category (Symbol, Lithic::Models::PaymentListParams::Category)
  • end_ (Time)

    Date string in RFC 3339 format. Only entries created before the specified time w

  • ending_before (String)

    A cursor representing an item's token before which a page of results should end.

  • financial_account_token (String)
  • page_size (Integer)

    Page size (for pagination).

  • result (Symbol, Lithic::Models::PaymentListParams::Result)
  • starting_after (String)

    A cursor representing an item's token after which a page of results should begin

  • status (Symbol, Lithic::Models::PaymentListParams::Status)
  • request_options (Lithic::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



102
103
104
105
106
107
108
109
110
111
112
113
# File 'lib/lithic/resources/payments.rb', line 102

def list(params = {})
  parsed, options = Lithic::PaymentListParams.dump_request(params)
  query = Lithic::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: "v1/payments",
    query: query.transform_keys(begin_: "begin", end_: "end"),
    page: Lithic::Internal::CursorPage,
    model: Lithic::Payment,
    options: options
  )
end

#retrieve(payment_token, request_options: {}) ⇒ Lithic::Models::Payment

Get the payment by token.

Parameters:

Returns:

See Also:



59
60
61
62
63
64
65
66
# File 'lib/lithic/resources/payments.rb', line 59

def retrieve(payment_token, params = {})
  @client.request(
    method: :get,
    path: ["v1/payments/%1$s", payment_token],
    model: Lithic::Payment,
    options: params[:request_options]
  )
end

#retry_(payment_token, request_options: {}) ⇒ Lithic::Models::PaymentRetryResponse

Retry an origination which has been returned.

Parameters:

Returns:

See Also:



125
126
127
128
129
130
131
132
# File 'lib/lithic/resources/payments.rb', line 125

def retry_(payment_token, params = {})
  @client.request(
    method: :post,
    path: ["v1/payments/%1$s/retry", payment_token],
    model: Lithic::Models::PaymentRetryResponse,
    options: params[:request_options]
  )
end

#return_(payment_token, financial_account_token:, return_reason_code:, addenda: nil, date_of_death: nil, memo: nil, request_options: {}) ⇒ Lithic::Models::Payment

Some parameter documentations has been truncated, see Models::PaymentReturnParams for more details.

Return an ACH payment with a specified return reason code. Returns must be initiated within the time window specified by NACHA rules for each return code (typically 2 banking days for most codes, 60 calendar days for unauthorized debits). For a complete list of return codes and their meanings, see the ACH Return Reasons documentation.

Note:

  • This endpoint does not modify the state of the financial account associated with the payment. If you would like to change the account state, use the Update financial account status endpoint.
  • By default this endpoint is not enabled for your account. Please contact your implementations manager to enable this feature.

Parameters:

  • payment_token (String)
  • financial_account_token (String)

    Globally unique identifier for the financial account

  • return_reason_code (String)

    ACH return reason code indicating the reason for returning the payment. Supporte

  • addenda (String, nil)

    Optional additional information about the return. Limited to 44 characters

  • date_of_death (Date, nil)

    Date of death in YYYY-MM-DD format. Required when using return codes R14 (re

  • memo (String, nil)

    Optional memo for the return. Limited to 10 characters

  • request_options (Lithic::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



171
172
173
174
175
176
177
178
179
180
# File 'lib/lithic/resources/payments.rb', line 171

def return_(payment_token, params)
  parsed, options = Lithic::PaymentReturnParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["v1/payments/%1$s/return", payment_token],
    body: parsed,
    model: Lithic::Payment,
    options: options
  )
end

#simulate_action(payment_token, event_type:, date_of_death: nil, decline_reason: nil, return_addenda: nil, return_reason_code: nil, request_options: {}) ⇒ Lithic::Models::PaymentSimulateActionResponse

Simulate payment lifecycle event

Parameters:

Returns:

See Also:



203
204
205
206
207
208
209
210
211
212
# File 'lib/lithic/resources/payments.rb', line 203

def simulate_action(payment_token, params)
  parsed, options = Lithic::PaymentSimulateActionParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["v1/simulate/payments/%1$s/action", payment_token],
    body: parsed,
    model: Lithic::Models::PaymentSimulateActionResponse,
    options: options
  )
end

#simulate_receipt(token:, amount:, financial_account_token:, receipt_type:, memo: nil, request_options: {}) ⇒ Lithic::Models::PaymentSimulateReceiptResponse

Some parameter documentations has been truncated, see Models::PaymentSimulateReceiptParams for more details.

Simulates a receipt of a Payment.

Parameters:

Returns:

See Also:



236
237
238
239
240
241
242
243
244
245
# File 'lib/lithic/resources/payments.rb', line 236

def simulate_receipt(params)
  parsed, options = Lithic::PaymentSimulateReceiptParams.dump_request(params)
  @client.request(
    method: :post,
    path: "v1/simulate/payments/receipt",
    body: parsed,
    model: Lithic::Models::PaymentSimulateReceiptResponse,
    options: options
  )
end

#simulate_release(payment_token:, request_options: {}) ⇒ Lithic::Models::PaymentSimulateReleaseResponse

Simulates a release of a Payment.

Parameters:

  • payment_token (String)

    Payment Token

  • request_options (Lithic::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



258
259
260
261
262
263
264
265
266
267
# File 'lib/lithic/resources/payments.rb', line 258

def simulate_release(params)
  parsed, options = Lithic::PaymentSimulateReleaseParams.dump_request(params)
  @client.request(
    method: :post,
    path: "v1/simulate/payments/release",
    body: parsed,
    model: Lithic::Models::PaymentSimulateReleaseResponse,
    options: options
  )
end

#simulate_return(payment_token:, return_reason_code: nil, request_options: {}) ⇒ Lithic::Models::PaymentSimulateReturnResponse

Simulates a return of a Payment.

Parameters:

  • payment_token (String)

    Payment Token

  • return_reason_code (String)

    Return Reason Code

  • request_options (Lithic::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



282
283
284
285
286
287
288
289
290
291
# File 'lib/lithic/resources/payments.rb', line 282

def simulate_return(params)
  parsed, options = Lithic::PaymentSimulateReturnParams.dump_request(params)
  @client.request(
    method: :post,
    path: "v1/simulate/payments/return",
    body: parsed,
    model: Lithic::Models::PaymentSimulateReturnResponse,
    options: options
  )
end