Account Line Items

An AccountLineItem is a single line item in the accounting ledger for a billing account. These include payments and invoices.

List Invoices

SDK Method

invoice.List()

Return Values

Returns a *invoice.Iter and an error. Range over All() to receive files_sdk.AccountLineItem values and errors. Check each loop error before using its resource. Next() and Err() remain supported.

Authorization Requirement

Available to all authenticated keys or sessions.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/invoice"
)

accountLineItemIterator, err := invoice.List(files_sdk.InvoiceListParams{})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}

for accountLineItem, err := range accountLineItemIterator.All() {
    if err != nil {
        var respErr files_sdk.ResponseError
        if errors.As(err, &respErr) {
            fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
        } else {
            fmt.Printf("Request failed: %v\n", err)
        }
        return
    }
    fmt.Println(accountLineItem)
}

List Payments

SDK Method

payment.List()

Return Values

Returns a *payment.Iter and an error. Range over All() to receive files_sdk.AccountLineItem values and errors. Check each loop error before using its resource. Next() and Err() remain supported.

Authorization Requirement

Available to all authenticated keys or sessions.

Additional Arguments

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/payment"
)

accountLineItemIterator, err := payment.List(files_sdk.PaymentListParams{})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}

for accountLineItem, err := range accountLineItemIterator.All() {
    if err != nil {
        var respErr files_sdk.ResponseError
        if errors.As(err, &respErr) {
            fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
        } else {
            fmt.Printf("Request failed: %v\n", err)
        }
        return
    }
    fmt.Println(accountLineItem)
}

Show Invoice

SDK Method

invoice.Find()

Return Values

Returns a files_sdk.AccountLineItem value and an error.

Authorization Requirement

Available to all authenticated keys or sessions.

InvoiceFindParams Fields

FieldDescription
Id
int64
Required
Invoice ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/invoice"
)

accountLineItem, err := invoice.Find(files_sdk.InvoiceFindParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}
fmt.Println(accountLineItem)

Show Payment

SDK Method

payment.Find()

Return Values

Returns a files_sdk.AccountLineItem value and an error.

Authorization Requirement

Available to all authenticated keys or sessions.

PaymentFindParams Fields

FieldDescription
Id
int64
Required
Payment ID.

Example Request

import (
    "fmt"
    "errors"

    files_sdk "github.com/Files-com/files-sdk-go/v3"
    "github.com/Files-com/files-sdk-go/v3/payment"
)

accountLineItem, err := payment.Find(files_sdk.PaymentFindParams{Id: 1})
if err != nil {
    var respErr files_sdk.ResponseError
    if errors.As(err, &respErr) {
        fmt.Printf("API error (%s): %s\n", respErr.Type, respErr.ErrorMessage)
    } else {
        fmt.Printf("Request failed: %v\n", err)
    }
    return
}
fmt.Println(accountLineItem)

The AccountLineItem Object

Some of the methods above return a AccountLineItem object. The attributes of this object are listed below.

AttributeDescription
Id
int64
Line item Id
Amount
decimal
Line item amount
Balance
decimal
Line item balance
CreatedAt
date-time
Line item created at
Currency
string
Line item currency
DownloadUri
string
Line item download uri
InvoiceLineItems
array(object)
Associated invoice line items
Method
string
Line item payment method
PaymentLineItems
array(object)
Associated payment line items
PaymentReversedAt
date-time
Date/time payment was reversed if applicable
PaymentType
string
Type of payment if applicable
SiteName
string
Site name this line item is for
Type
string
Type of line item, either payment or invoice