Attempts payment on an invoice out of the normal collection schedule.
curl https://api.stripe.com/v1/invoices/in_1BnETLGswQrCoh0X6M67Qy9c/pay \
-u STRIPE_SECRET_KEY: \
-X POST
import sys
import chilkat
rest = chilkat.CkRest()
# URL: https://api.stripe.com/v1/invoices/in_1BnETLGswQrCoh0X6M67Qy9c/pay
bTls = True
port = 443
bAutoReconnect = True
success = rest.Connect("api.stripe.com",port,bTls,bAutoReconnect)
if (success != True):
print("ConnectFailReason: " + str(rest.get_ConnectFailReason()))
print(rest.lastErrorText())
sys.exit()
rest.SetAuthBasic("STRIPE_SECRET_KEY","")
sbResponseBody = chilkat.CkStringBuilder()
success = rest.FullRequestNoBodySb("POST","/v1/invoices/in_1BnETLGswQrCoh0X6M67Qy9c/pay",sbResponseBody)
if (success != True):
print(rest.lastErrorText())
sys.exit()
jsonResponse = chilkat.CkJsonObject()
jsonResponse.LoadSb(sbResponseBody)
id = jsonResponse.stringOf("id")
object = jsonResponse.stringOf("object")
amount_due = jsonResponse.IntOf("amount_due")
application_fee = jsonResponse.IsNullOf("application_fee")
attempt_count = jsonResponse.IntOf("attempt_count")
attempted = jsonResponse.BoolOf("attempted")
billing = jsonResponse.stringOf("billing")
charge = jsonResponse.stringOf("charge")
closed = jsonResponse.BoolOf("closed")
currency = jsonResponse.stringOf("currency")
customer = jsonResponse.stringOf("customer")
date = jsonResponse.IntOf("date")
description = jsonResponse.IsNullOf("description")
discount = jsonResponse.IsNullOf("discount")
due_date = jsonResponse.IsNullOf("due_date")
ending_balance = jsonResponse.IsNullOf("ending_balance")
forgiven = jsonResponse.BoolOf("forgiven")
linesHas_more = jsonResponse.BoolOf("lines.has_more")
linesObject = jsonResponse.stringOf("lines.object")
linesUrl = jsonResponse.stringOf("lines.url")
livemode = jsonResponse.BoolOf("livemode")
next_payment_attempt = jsonResponse.IntOf("next_payment_attempt")
number = jsonResponse.stringOf("number")
paid = jsonResponse.BoolOf("paid")
period_end = jsonResponse.IntOf("period_end")
period_start = jsonResponse.IntOf("period_start")
receipt_number = jsonResponse.IsNullOf("receipt_number")
starting_balance = jsonResponse.IntOf("starting_balance")
statement_descriptor = jsonResponse.IsNullOf("statement_descriptor")
subscription = jsonResponse.IsNullOf("subscription")
subtotal = jsonResponse.IntOf("subtotal")
tax = jsonResponse.IsNullOf("tax")
tax_percent = jsonResponse.IsNullOf("tax_percent")
total = jsonResponse.IntOf("total")
webhooks_delivered_at = jsonResponse.IsNullOf("webhooks_delivered_at")
last_payment_attempt = jsonResponse.IsNullOf("last_payment_attempt")
i = 0
count_i = jsonResponse.SizeOfArray("lines.data")
while i < count_i :
jsonResponse.put_I(i)
id = jsonResponse.stringOf("lines.data[i].id")
object = jsonResponse.stringOf("lines.data[i].object")
amount = jsonResponse.IntOf("lines.data[i].amount")
currency = jsonResponse.stringOf("lines.data[i].currency")
description_str = jsonResponse.stringOf("lines.data[i].description")
discountable = jsonResponse.BoolOf("lines.data[i].discountable")
livemode = jsonResponse.BoolOf("lines.data[i].livemode")
periodStart = jsonResponse.IntOf("lines.data[i].period.start")
periodEnd = jsonResponse.IntOf("lines.data[i].period.end")
planId = jsonResponse.stringOf("lines.data[i].plan.id")
planObject = jsonResponse.stringOf("lines.data[i].plan.object")
planAmount = jsonResponse.IntOf("lines.data[i].plan.amount")
planCreated = jsonResponse.IntOf("lines.data[i].plan.created")
planCurrency = jsonResponse.stringOf("lines.data[i].plan.currency")
planInterval = jsonResponse.stringOf("lines.data[i].plan.interval")
planInterval_count = jsonResponse.IntOf("lines.data[i].plan.interval_count")
planLivemode = jsonResponse.BoolOf("lines.data[i].plan.livemode")
planName = jsonResponse.stringOf("lines.data[i].plan.name")
planStatement_descriptor = jsonResponse.IsNullOf("lines.data[i].plan.statement_descriptor")
planTrial_period_days = jsonResponse.IsNullOf("lines.data[i].plan.trial_period_days")
proration = jsonResponse.BoolOf("lines.data[i].proration")
quantity = jsonResponse.IntOf("lines.data[i].quantity")
subscription = jsonResponse.IsNullOf("lines.data[i].subscription")
subscription_item = jsonResponse.stringOf("lines.data[i].subscription_item")
type = jsonResponse.stringOf("lines.data[i].type")
i = i + 1
{
"id": "in_1BnETLGswQrCoh0X6M67Qy9c",
"object": "invoice",
"amount_due": 0,
"application_fee": null,
"attempt_count": 0,
"attempted": true,
"billing": "charge_automatically",
"charge": "ch_1BnETLGswQrCoh0XYoMbCKZ3",
"closed": false,
"currency": "usd",
"customer": "cus_CBbggkUyLoz3pe",
"date": 1516662783,
"description": null,
"discount": null,
"due_date": null,
"ending_balance": null,
"forgiven": false,
"lines": {
"data": [
{
"id": "sub_CBbgC3EaFZqN3Q",
"object": "line_item",
"amount": 999,
"currency": "usd",
"description": "1x Silver Express (at $9.99)",
"discountable": true,
"livemode": true,
"metadata": {},
"period": {
"start": 1521760383,
"end": 1524438783
},
"plan": {
"id": "gold",
"object": "plan",
"amount": 2000,
"created": 1516662783,
"currency": "usd",
"interval": "month",
"interval_count": 1,
"livemode": false,
"metadata": {},
"name": "T-shirt",
"statement_descriptor": null,
"trial_period_days": null
},
"proration": false,
"quantity": 1,
"subscription": null,
"subscription_item": "si_CBbgZxCVF3Ha7P",
"type": "subscription"
}
],
"has_more": false,
"object": "list",
"url": "/v1/invoices/in_1BnETLGswQrCoh0X6M67Qy9c/lines"
},
"livemode": false,
"metadata": {},
"next_payment_attempt": 1516666383,
"number": "330a34b8d5-0001",
"paid": true,
"period_end": 1516662783,
"period_start": 1516662783,
"receipt_number": null,
"starting_balance": 0,
"statement_descriptor": null,
"subscription": null,
"subtotal": 0,
"tax": null,
"tax_percent": null,
"total": 0,
"webhooks_delivered_at": null,
"last_payment_attempt": null
}