NAME
Net::API::Stripe::Customer::BalanceTransaction - A Stripe Customer Balance Tranaction Object
SYNOPSIS
my $bt = $stripe->balance_transaction({
amount => 2000,
currency => 'jpy',
customer => $customer_object,
description => 'Payment for professional service',
invoice => $invoice_object,
metadata => { transaction_id => 123 },
type => 'initial',
});
Crediting the customer:
my $bt = $stripe->balance_transaction({
amount => -2000,
credit_note => $credit_note_object,
currency => 'jpy',
customer => $customer_object,
description => 'Credit note for cancelled invoice',
invoice => $invoice_object,
metadata => { transaction_id => 123 },
type => 'credit_note',
});
See documentation in Net::API::Stripe for example to make api calls to Stripe to create those objects.
VERSION
v0.100.0
DESCRIPTION
Each customer has a balance value, which denotes a debit or credit that's automatically applied to their next invoice upon finalization. You may modify the value directly by using the update customer API (https://stripe.com/docs/api/customers/update), or by creating a Customer Balance Transaction, which increments or decrements the customer's balance by the specified amount.
CONSTRUCTOR
- new( %ARG )
-
Creates a new Net::API::Stripe::Customer::BalanceTransaction object. It may also take an hash like arguments, that also are method of the same name.
METHODS
- id string
-
Unique identifier for the object.
- object string, value is "customer_balance_transaction"
-
String representing the object’s type. Objects of the same type share the same value.
- amount integer
-
The amount of the transaction. A negative value is a credit for the customer’s balance, and a positive value is a debit to the customer’s balance.
- created timestamp
-
Time at which the object was created. Measured in seconds since the Unix epoch.
- credit_note string (expandable)
-
The ID of the credit note (if any) related to the transaction. When expanded this is a Net::API::Stripe::Billing::CreditNote object.
- currency currency
-
Three-letter ISO currency code, in lowercase. Must be a supported currency.
- customer string (expandable)
-
The ID of the customer the transaction belongs to. When expanded, this is a Net::API::Stripe::Customer object.
- description string
-
An arbitrary string attached to the object. Often useful for displaying to users.
- ending_balance integer
-
The customer’s balance after the transaction was applied. A negative value decreases the amount due on the customer’s next invoice. A positive value increases the amount due on the customer’s next invoice.
- invoice string (expandable)
-
The ID of the invoice (if any) related to the transaction. When expanded, this is a Net::API::Stripe::Billing::Invoice object.
- livemode boolean
-
Has the value true if the object exists in live mode or the value false if the object exists in test mode.
- metadata hash
-
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
- type string
-
Transaction type: adjustment, applied_to_invoice, credit_note, initial, invoice_too_large, invoice_too_small, unapplied_from_invoice, or unspent_receiver_credit. See the Customer Balance page to learn more about transaction types.
API SAMPLE
{
"object": "balance",
"available": [
{
"amount": 0,
"currency": "jpy",
"source_types": {
"card": 0
}
}
],
"connect_reserved": [
{
"amount": 0,
"currency": "jpy"
}
],
"livemode": false,
"pending": [
{
"amount": 7712,
"currency": "jpy",
"source_types": {
"card": 7712
}
}
]
}
HISTORY
v0.1
Initial version
AUTHOR
Jacques Deguest <jack@deguest.jp>
SEE ALSO
Stripe API documentation:
https://stripe.com/docs/api/customer_balance_transactions, https://stripe.com/docs/billing/customer/balance
COPYRIGHT & LICENSE
Copyright (c) 2019-2020 DEGUEST Pte. Ltd.
You can use, copy, modify and redistribute this package and associated files under the same terms as Perl itself.