Class: Plaid::ProcessorApi

Inherits:
BaseApi
  • Object
show all
Defined in:
lib/plaid/apis/processor_api.rb

Overview

ProcessorApi

Constant Summary

Constants inherited from BaseApi

BaseApi::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseApi

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseApi

#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters

Constructor Details

This class inherits a constructor from Plaid::BaseApi

Instance Method Details

#processor_apex_processor_token_create(body) ⇒ ApiResponse

Used to create a token suitable for sending to Apex to enable Plaid-Apex integrations. TODO: type description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
# File 'lib/plaid/apis/processor_api.rb', line 121

def processor_apex_processor_token_create(body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/apex/processor_token/create',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorTokenCreateResponse.method(:from_hash))
                .is_api_response(true))
    .execute
end

#processor_auth_get(body) ⇒ ApiResponse

The ‘/processor/auth/get` endpoint returns the bank account and bank identification number (such as the routing number, for US accounts), for a checking or savings account that’s associated with a given ‘processor_token`. The endpoint also returns high-level account data and balances when available. description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/plaid/apis/processor_api.rb', line 74

def processor_auth_get(body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/auth/get',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorAuthGetResponse.method(:from_hash))
                .is_api_response(true))
    .execute
end

#processor_balance_get(body) ⇒ ApiResponse

The ‘/processor/balance/get` endpoint returns the real-time balance for each of an Item’s accounts. While other endpoints may return a balance object, only ‘/processor/balance/get` forces the available and current balance fields to be refreshed rather than cached. `/processor/balance/get` endpoint returns the real-time balance for the account associated with a given `processor_token`. The current balance is the total amount of funds in the account. The available balance is the current balance less any outstanding holds or debits that have not yet posted to the account. Note that not all institutions calculate the available balance. In the event that available balance is unavailable from the institution, Plaid will return an available balance value of `null`.

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# File 'lib/plaid/apis/processor_api.rb', line 48

def processor_balance_get(body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/balance/get',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorBalanceGetResponse.method(:from_hash))
                .is_api_response(true))
    .execute
end

#processor_bank_transfer_create(body) ⇒ ApiResponse

Use the ‘/processor/bank_transfer/create` endpoint to initiate a new bank transfer as a processor type description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/plaid/apis/processor_api.rb', line 14

def processor_bank_transfer_create(body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/bank_transfer/create',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorBankTransferCreateResponse.method(:from_hash))
                .is_api_response(true)
                .local_error('default',
                             'Error response',
                             ErrorErrorException))
    .execute
end

#processor_identity_get(body) ⇒ ApiResponse

The ‘/processor/identity/get` endpoint allows you to retrieve various account holder information on file with the financial institution, including names, emails, phone numbers, and addresses. description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/plaid/apis/processor_api.rb', line 98

def processor_identity_get(body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/identity/get',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorIdentityGetResponse.method(:from_hash))
                .is_api_response(true))
    .execute
end

#processor_stripe_bank_account_token_create(body) ⇒ ApiResponse

Used to create a token suitable for sending to Stripe to enable Plaid-Stripe integrations. For a detailed guide on integrating Stripe, see [Add Stripe to your app](plaid.com/docs/auth/partnerships/stripe/). parameter: TODO: type description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
# File 'lib/plaid/apis/processor_api.rb', line 171

def (body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/stripe/bank_account_token/create',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorStripeBankAccountTokenCreateResponse.method(:from_hash))
                .is_api_response(true))
    .execute
end

#processor_token_create(body) ⇒ ApiResponse

Used to create a token suitable for sending to one of Plaid’s partners to enable integrations. Note that Stripe partnerships use bank account tokens instead; see ‘/processor/stripe/bank_account_token/create` for creating tokens for use with Stripe integrations. description here

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
# File 'lib/plaid/apis/processor_api.rb', line 146

def processor_token_create(body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/processor/token/create',
                                 Server::DEFAULT)
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('PLAID-CLIENT-ID', 'PLAID-SECRET', 'Plaid-Version')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(ProcessorTokenCreateResponse.method(:from_hash))
                .is_api_response(true))
    .execute
end