Class: LockstepSdk::PaymentSyncModel

Inherits:
Object
  • Object
show all
Defined in:
lib/lockstep_sdk/models/payment_sync_model.rb

Overview

The PaymentSyncModel represents information coming into Lockstep from an external financial system or other enterprise resource planning system. To import data from an external system, convert your original data into the PaymentSyncModel format and call the [Upload Sync File API](developer.lockstep.io/reference/post_api-v1-sync-zip). This API retrieves all of the data you uploaded in a compressed ZIP file and imports it into the Lockstep platform.

Once imported, this record will be available in the Lockstep API as a [PaymentModel](developer.lockstep.io/docs/paymentmodel).

For more information on writing your own connector, see [Connector Data](developer.lockstep.io/docs/connector-data).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ PaymentSyncModel

Initialize the PaymentSyncModel using the provided prototype



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 33

def initialize(params = {})
    @erp_key = params.dig(:erp_key)
    @company_erp_key = params.dig(:company_erp_key)
    @payment_type = params.dig(:payment_type)
    @tender_type = params.dig(:tender_type)
    @is_open = params.dig(:is_open)
    @memo_text = params.dig(:memo_text)
    @payment_date = params.dig(:payment_date)
    @post_date = params.dig(:post_date)
    @payment_amount = params.dig(:payment_amount)
    @unapplied_amount = params.dig(:unapplied_amount)
    @currency_code = params.dig(:currency_code)
    @created = params.dig(:created)
    @modified = params.dig(:modified)
    @reference_code = params.dig(:reference_code)
    @is_voided = params.dig(:is_voided)
    @in_dispute = params.dig(:in_dispute)
    @currency_rate = params.dig(:currency_rate)
    @base_currency_payment_amount = params.dig(:base_currency_payment_amount)
    @base_currency_unapplied_amount = params.dig(:base_currency_unapplied_amount)
end

Instance Attribute Details

#base_currency_payment_amountDouble

Returns Total amount of this payment in the erp’s base currency.

Returns:

  • (Double)

    Total amount of this payment in the erp’s base currency.



125
126
127
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 125

def base_currency_payment_amount
  @base_currency_payment_amount
end

#base_currency_unapplied_amountDouble

Returns Unapplied balance of this payment in the erp’s base currency. If this amount is nonzero, the field ‘IsOpen` will be true.

Returns:

  • (Double)

    Unapplied balance of this payment in the erp’s base currency. If this amount is nonzero, the field ‘IsOpen` will be true.



129
130
131
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 129

def base_currency_unapplied_amount
  @base_currency_unapplied_amount
end

#company_erp_keyString

Returns The original primary key or unique ID of the company to which this payment belongs. This value should match the [Company ErpKey](developer.lockstep.io/docs/importing-companies#erpkey) field on the [CompanySyncModel](developer.lockstep.io/docs/importing-companies).

Returns:



61
62
63
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 61

def company_erp_key
  @company_erp_key
end

#createdDate-time

Returns If known, the date when this record was created according to the originating financial system in which this record is maintained. If the originating financial system does not maintain a created-date, leave this field null.

Returns:

  • (Date-time)

    If known, the date when this record was created according to the originating financial system in which this record is maintained. If the originating financial system does not maintain a created-date, leave this field null.



101
102
103
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 101

def created
  @created
end

#currency_codeString

Returns The ISO 4217 currency code for this payment. For a list of ISO 4217 currency codes, see [Query Currencies](developer.lockstep.io/reference/get_api-v1-definitions-currencies).

Returns:



97
98
99
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 97

def currency_code
  @currency_code
end

#currency_rateDouble

Returns The Currency Rate used to get from the account’s base currency to the payment amount.

Returns:

  • (Double)

    The Currency Rate used to get from the account’s base currency to the payment amount.



121
122
123
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 121

def currency_rate
  @currency_rate
end

#erp_keyString

Returns This is the primary key of the Payment record. For this field, you should use whatever the payment’s unique identifying number is in the originating system. Search for a unique, non-changing number within the originating financial system for this record. Example: If you store your payment records in a database, whatever the primary key for the payment table is in the database should be the “ErpKey”. For more information, see [Identity Columns](developer.lockstep.io/docs/identity-columns).

Returns:

  • (String)

    This is the primary key of the Payment record. For this field, you should use whatever the payment’s unique identifying number is in the originating system. Search for a unique, non-changing number within the originating financial system for this record. Example: If you store your payment records in a database, whatever the primary key for the payment table is in the database should be the “ErpKey”. For more information, see [Identity Columns](developer.lockstep.io/docs/identity-columns).



57
58
59
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 57

def erp_key
  @erp_key
end

#in_disputeBoolean

Returns True if this payment is in dispute.

Returns:

  • (Boolean)

    True if this payment is in dispute.



117
118
119
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 117

def in_dispute
  @in_dispute
end

#is_openBoolean

Returns True if this payment includes some unassigned amount that has not yet been applied to an invoice. If this value is true, the field ‘UnappliedAmount` will be nonzero.

Returns:

  • (Boolean)

    True if this payment includes some unassigned amount that has not yet been applied to an invoice. If this value is true, the field ‘UnappliedAmount` will be nonzero.



73
74
75
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 73

def is_open
  @is_open
end

#is_voidedBoolean

Returns True if this payment was voided.

Returns:

  • (Boolean)

    True if this payment was voided.



113
114
115
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 113

def is_voided
  @is_voided
end

#memo_textString

Returns Memo or reference text (ex. memo field on a check).

Returns:

  • (String)

    Memo or reference text (ex. memo field on a check).



77
78
79
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 77

def memo_text
  @memo_text
end

#modifiedDate-time

Returns If known, the date when this record was most recently modified according to the originating financial system in which this record is maintained. If the originating financial system does not maintain a most-recently-modified-date, leave this field null.

Returns:

  • (Date-time)

    If known, the date when this record was most recently modified according to the originating financial system in which this record is maintained. If the originating financial system does not maintain a most-recently-modified-date, leave this field null.



105
106
107
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 105

def modified
  @modified
end

#payment_amountDouble

Returns Total amount of this payment in the payment’s currency.

Returns:

  • (Double)

    Total amount of this payment in the payment’s currency.



89
90
91
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 89

def payment_amount
  @payment_amount
end

#payment_dateDate-time

Returns The date when this payment was received. This typically is the date when an accounting employee recorded that they received notification that the payment had occurred, whether they were notified by email, postal mail, or financial transaction notification.

Returns:

  • (Date-time)

    The date when this payment was received. This typically is the date when an accounting employee recorded that they received notification that the payment had occurred, whether they were notified by email, postal mail, or financial transaction notification.



81
82
83
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 81

def payment_date
  @payment_date
end

#payment_typeString

Returns The type of payment, AR Payment or AP Payment. Recognized PaymentType values are: * ‘AR Payment` - A payment made by a Customer to the Company * `AP Payment` - A payment made by the Company to a Vendor.

Returns:

  • (String)

    The type of payment, AR Payment or AP Payment. Recognized PaymentType values are: * ‘AR Payment` - A payment made by a Customer to the Company * `AP Payment` - A payment made by the Company to a Vendor



65
66
67
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 65

def payment_type
  @payment_type
end

#post_dateDate-time

Returns The date when a payment was posted to a ledger. This date is often determined by a company’s accounting practices and may be different than the date when the payment was received. This date may be affected by issues such as temporary holds on funds transferred, bank holidays, or other actions.

Returns:

  • (Date-time)

    The date when a payment was posted to a ledger. This date is often determined by a company’s accounting practices and may be different than the date when the payment was received. This date may be affected by issues such as temporary holds on funds transferred, bank holidays, or other actions.



85
86
87
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 85

def 
  @post_date
end

#reference_codeString

Returns A reference code for the payment for the given financial or ERP system. This can be any value that the originating system uses to designate the payment, such as a confirmation number or tracking number, that is different from the ‘ErpKey` value.

Returns:

  • (String)

    A reference code for the payment for the given financial or ERP system. This can be any value that the originating system uses to designate the payment, such as a confirmation number or tracking number, that is different from the ‘ErpKey` value.



109
110
111
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 109

def reference_code
  @reference_code
end

#tender_typeString

Returns Cash, check, credit card, wire transfer. Recognized TenderType values are: * ‘Cash` - A cash payment or other direct transfer. * `Check` - A check payment. * `Credit Card` - A payment made via a credit card. * `Wire Transfer` - A payment made via wire transfer from another financial institution. * `Other` - A payment made via another method not listed above.

Returns:

  • (String)

    Cash, check, credit card, wire transfer. Recognized TenderType values are: * ‘Cash` - A cash payment or other direct transfer. * `Check` - A check payment. * `Credit Card` - A payment made via a credit card. * `Wire Transfer` - A payment made via wire transfer from another financial institution. * `Other` - A payment made via another method not listed above.



69
70
71
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 69

def tender_type
  @tender_type
end

#unapplied_amountDouble

Returns Unapplied balance of this payment in the payment’s currency. If this amount is nonzero, the field ‘IsOpen` will be true.

Returns:

  • (Double)

    Unapplied balance of this payment in the payment’s currency. If this amount is nonzero, the field ‘IsOpen` will be true.



93
94
95
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 93

def unapplied_amount
  @unapplied_amount
end

Instance Method Details

#as_json(options = {}) ⇒ object

Returns This object as a JSON key-value structure.

Returns:

  • (object)

    This object as a JSON key-value structure



133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 133

def as_json(options={})
    {
        'erpKey' => @erp_key,
        'companyErpKey' => @company_erp_key,
        'paymentType' => @payment_type,
        'tenderType' => @tender_type,
        'isOpen' => @is_open,
        'memoText' => @memo_text,
        'paymentDate' => @payment_date,
        'postDate' => @post_date,
        'paymentAmount' => @payment_amount,
        'unappliedAmount' => @unapplied_amount,
        'currencyCode' => @currency_code,
        'created' => @created,
        'modified' => @modified,
        'referenceCode' => @reference_code,
        'isVoided' => @is_voided,
        'inDispute' => @in_dispute,
        'currencyRate' => @currency_rate,
        'baseCurrencyPaymentAmount' => @base_currency_payment_amount,
        'baseCurrencyUnappliedAmount' => @base_currency_unapplied_amount,
    }
end

#to_json(*options) ⇒ String

Returns This object converted to a JSON string.

Returns:

  • (String)

    This object converted to a JSON string



159
160
161
# File 'lib/lockstep_sdk/models/payment_sync_model.rb', line 159

def to_json(*options)
    "[#{as_json(*options).to_json(*options)}]"
end