postCustomersCustomerBalanceTransactions
Create a customer balance transaction
Details
- Method:
POST - Path:
/v1/customers/{customer}/balance_transactions - Operation ID:
PostCustomersCustomerBalanceTransactions
Parameters
{
"customer": {
"description": "",
"required": true,
"location": "path",
"type": "string"
}
}Response Schema
{
"description": "Each customer has a [Balance](https://docs.stripe.com/api/customers/object#customer_object-balance) value,\nwhich denotes a debit or credit that's automatically applied to their next invoice upon finalization.\nYou may modify the value directly by using the [update customer API](https://docs.stripe.com/api/customers/update),\nor by creating a Customer Balance Transaction, which increments or decrements the customer's `balance` by the specified `amount`.\n\nRelated guide: [Customer balance](https://docs.stripe.com/billing/customer/balance)",
"properties": {
"amount": {
"description": "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`.",
"type": "integer"
},
"checkout_session": {
"anyOf": [
{
"maxLength": 5000,
"type": "string"
},
{
"$ref": "#/components/schemas/checkout.session"
}
],
"description": "The ID of the checkout session (if any) that created the transaction.",
"nullable": true,
"x-expansionResources": {
"oneOf": [
{
"$ref": "#/components/schemas/checkout.session"
}
]
}
},
"created": {
"description": "Time at which the object was created. Measured in seconds since the Unix epoch.",
"format": "unix-time",
"type": "integer"
},
"credit_note": {
"anyOf": [
{
"maxLength": 5000,
"type": "string"
},
{
"$ref": "#/components/schemas/credit_note"
}
],
"description": "The ID of the credit note (if any) related to the transaction.",
"nullable": true,
"x-expansionResources": {
"oneOf": [
{
"$ref": "#/components/schemas/credit_note"
}
]
}
},
"currency": {
"description": "Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).",
"format": "currency",
"type": "string"
},
"customer": {
"anyOf": [
{
"maxLength": 5000,
"type": "string"
},
{
"$ref": "#/components/schemas/customer"
}
],
"description": "The ID of the customer the transaction belongs to.",
"x-expansionResources": {
"oneOf": [
{
"$ref": "#/components/schemas/customer"
}
]
}
},
"customer_account": {
"description": "The ID of an Account representing a customer that the transaction belongs to.",
"maxLength": 5000,
"nullable": true,
"type": "string"
},
"description": {
"description": "An arbitrary string attached to the object. Often useful for displaying to users.",
"maxLength": 5000,
"nullable": true,
"type": "string"
},
"ending_balance": {
"description": "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.",
"type": "integer"
},
"id": {
"description": "Unique identifier for the object.",
"maxLength": 5000,
"type": "string"
},
"invoice": {
"anyOf": [
{
"maxLength": 5000,
"type": "string"
},
{
"$ref": "#/components/schemas/invoice"
}
],
"description": "The ID of the invoice (if any) related to the transaction.",
"nullable": true,
"x-expansionResources": {
"oneOf": [
{
"$ref": "#/components/schemas/invoice"
}
]
}
},
"livemode": {
"description": "Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.",
"type": "boolean"
},
"metadata": {
"additionalProperties": {
"maxLength": 500,
"type": "string"
},
"description": "Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.",
"nullable": true,
"type": "object"
},
"object": {
"description": "String representing the object's type. Objects of the same type share the same value.",
"enum": [
"customer_balance_transaction"
],
"type": "string"
},
"type": {
"description": "Transaction type: `adjustment`, `applied_to_invoice`, `credit_note`, `initial`, `invoice_overpaid`, `invoice_too_large`, `invoice_too_small`, `unspent_receiver_credit`, `unapplied_from_invoice`, `checkout_session_subscription_payment`, or `checkout_session_subscription_payment_canceled`. See the [Customer Balance page](https://docs.stripe.com/billing/customer/balance#types) to learn more about transaction types.",
"enum": [
"adjustment",
"applied_to_invoice",
"checkout_session_subscription_payment",
"checkout_session_subscription_payment_canceled",
"credit_note",
"initial",
"invoice_overpaid",
"invoice_too_large",
"invoice_too_small",
"migration",
"unapplied_from_invoice",
"unspent_receiver_credit"
],
"type": "string",
"x-stripeBypassValidation": true
}
},
"required": [
"amount",
"created",
"currency",
"customer",
"ending_balance",
"id",
"livemode",
"object",
"type"
],
"title": "CustomerBalanceTransaction",
"type": "object",
"x-expandableFields": [
"checkout_session",
"credit_note",
"customer",
"invoice"
],
"x-resourceId": "customer_balance_transaction"
}Usage
from ocp_agent import OCPAgent
agent = OCPAgent()
await agent.register_api('stripe')
# Call this tool
result = await agent.call_tool('postCustomersCustomerBalanceTransactions', {
# Add required parameters here
})