Add subscription support + license extension on renewal

This commit is contained in:
Krystie committed 2026-08-19 12:45:06 -07:00
1 parent 14d0eaa2b3
commit ff722aa4d8
2075 files changed
+357707 -63

No files matched your search

File diff suppressed because it is too large. Load diff
+573
View File
@@ -0,0 +1,573 @@
"use strict";
// File generated from our OpenAPI spec
Object.defineProperty(exports, "__esModule", { value: true });
exports.SessionResource = void 0;
const StripeResource_js_1 = require("../../StripeResource.js");
class SessionResource extends StripeResource_js_1.StripeResource {
/**
* Returns a list of Checkout Sessions.
*/
list(params, options) {
return this._makeRequest('GET', '/v1/checkout/sessions', params, options, {
methodType: 'list',
responseSchema: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
currency_conversion: {
kind: 'nullable',
inner: {
kind: 'object',
fields: { fx_rate: { kind: 'decimal_string' } },
},
},
line_items: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
price: {
kind: 'nullable',
inner: {
kind: 'object',
fields: {
currency_options: {
kind: 'array',
element: {
kind: 'object',
fields: {
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
},
},
},
},
},
},
},
},
},
},
});
}
/**
* Creates a Checkout Session object.
*/
create(params, options) {
return this._makeRequest('POST', '/v1/checkout/sessions', params, options, {
requestSchema: {
kind: 'object',
fields: {
line_items: {
kind: 'array',
element: {
kind: 'object',
fields: {
price_data: {
kind: 'object',
fields: { unit_amount_decimal: { kind: 'decimal_string' } },
},
},
},
},
},
},
responseSchema: {
kind: 'object',
fields: {
currency_conversion: {
kind: 'nullable',
inner: {
kind: 'object',
fields: { fx_rate: { kind: 'decimal_string' } },
},
},
line_items: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
price: {
kind: 'nullable',
inner: {
kind: 'object',
fields: {
currency_options: {
kind: 'array',
element: {
kind: 'object',
fields: {
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
},
},
},
},
},
},
},
});
}
/**
* Retrieves a Checkout Session object.
*/
retrieve(id, params, options) {
return this._makeRequest('GET', `/v1/checkout/sessions/${encodeURIComponent(id)}`, params, options, {
responseSchema: {
kind: 'object',
fields: {
currency_conversion: {
kind: 'nullable',
inner: {
kind: 'object',
fields: { fx_rate: { kind: 'decimal_string' } },
},
},
line_items: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
price: {
kind: 'nullable',
inner: {
kind: 'object',
fields: {
currency_options: {
kind: 'array',
element: {
kind: 'object',
fields: {
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
},
},
},
},
},
},
},
});
}
/**
* Updates a Checkout Session object.
*
* Related guide: [Dynamically update a Checkout Session](https://docs.stripe.com/payments/advanced/dynamic-updates)
*/
update(id, params, options) {
return this._makeRequest('POST', `/v1/checkout/sessions/${encodeURIComponent(id)}`, params, options, {
requestSchema: {
kind: 'object',
fields: {
line_items: {
kind: 'array',
element: {
kind: 'object',
fields: {
price_data: {
kind: 'object',
fields: { unit_amount_decimal: { kind: 'decimal_string' } },
},
},
},
},
},
},
responseSchema: {
kind: 'object',
fields: {
currency_conversion: {
kind: 'nullable',
inner: {
kind: 'object',
fields: { fx_rate: { kind: 'decimal_string' } },
},
},
line_items: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
price: {
kind: 'nullable',
inner: {
kind: 'object',
fields: {
currency_options: {
kind: 'array',
element: {
kind: 'object',
fields: {
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
},
},
},
},
},
},
},
});
}
/**
* A Checkout Session can be expired when it is in one of these statuses: open
*
* After it expires, a customer can't complete a Checkout Session and customers loading the Checkout Session see a message saying the Checkout Session is expired.
*/
expire(id, params, options) {
return this._makeRequest('POST', `/v1/checkout/sessions/${encodeURIComponent(id)}/expire`, params, options, {
responseSchema: {
kind: 'object',
fields: {
currency_conversion: {
kind: 'nullable',
inner: {
kind: 'object',
fields: { fx_rate: { kind: 'decimal_string' } },
},
},
line_items: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
price: {
kind: 'nullable',
inner: {
kind: 'object',
fields: {
currency_options: {
kind: 'array',
element: {
kind: 'object',
fields: {
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
},
},
},
},
},
},
},
});
}
/**
* When retrieving a Checkout Session, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
*/
listLineItems(id, params, options) {
return this._makeRequest('GET', `/v1/checkout/sessions/${encodeURIComponent(id)}/line_items`, params, options, {
methodType: 'list',
responseSchema: {
kind: 'object',
fields: {
data: {
kind: 'array',
element: {
kind: 'object',
fields: {
price: {
kind: 'nullable',
inner: {
kind: 'object',
fields: {
currency_options: {
kind: 'array',
element: {
kind: 'object',
fields: {
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
tiers: {
kind: 'array',
element: {
kind: 'object',
fields: {
flat_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
unit_amount_decimal: {
kind: 'nullable',
inner: { kind: 'decimal_string' },
},
},
},
},
},
},
},
},
},
});
}
}
exports.SessionResource = SessionResource;
//# sourceMappingURL=Sessions.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"Sessions.js","sourceRoot":"","sources":["../../../src/resources/Checkout/Sessions.ts"],"names":[],"mappings":";AAAA,uCAAuC;;;AAEvC,+DAAuD;AA4BvD,MAAa,eAAgB,SAAQ,kCAAc;IACjD;;OAEG;IACH,IAAI,CACF,MAAmC,EACnC,OAAwB;QAExB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,OAAO,EAAE;YACxE,UAAU,EAAE,MAAM;YAClB,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,MAAM,EAAE;gCACN,mBAAmB,EAAE;oCACnB,IAAI,EAAE,UAAU;oCAChB,KAAK,EAAE;wCACL,IAAI,EAAE,QAAQ;wCACd,MAAM,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,EAAC;qCAC5C;iCACF;gCACD,UAAU,EAAE;oCACV,IAAI,EAAE,QAAQ;oCACd,MAAM,EAAE;wCACN,IAAI,EAAE;4CACJ,IAAI,EAAE,OAAO;4CACb,OAAO,EAAE;gDACP,IAAI,EAAE,QAAQ;gDACd,MAAM,EAAE;oDACN,KAAK,EAAE;wDACL,IAAI,EAAE,UAAU;wDAChB,KAAK,EAAE;4DACL,IAAI,EAAE,QAAQ;4DACd,MAAM,EAAE;gEACN,gBAAgB,EAAE;oEAChB,IAAI,EAAE,OAAO;oEACb,OAAO,EAAE;wEACP,IAAI,EAAE,QAAQ;wEACd,MAAM,EAAE;4EACN,KAAK,EAAE;gFACL,IAAI,EAAE,OAAO;gFACb,OAAO,EAAE;oFACP,IAAI,EAAE,QAAQ;oFACd,MAAM,EAAE;wFACN,mBAAmB,EAAE;4FACnB,IAAI,EAAE,UAAU;4FAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;yFAChC;wFACD,mBAAmB,EAAE;4FACnB,IAAI,EAAE,UAAU;4FAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;yFAChC;qFACF;iFACF;6EACF;4EACD,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;yEACF;qEACF;iEACF;gEACD,KAAK,EAAE;oEACL,IAAI,EAAE,OAAO;oEACb,OAAO,EAAE;wEACP,IAAI,EAAE,QAAQ;wEACd,MAAM,EAAE;4EACN,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;4EACD,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;yEACF;qEACF;iEACF;gEACD,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;6DACF;yDACF;qDACF;iDACF;6CACF;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF,CAAQ,CAAC;IACZ,CAAC;IACD;;OAEG;IACH,MAAM,CACJ,MAAqC,EACrC,OAAwB;QAExB,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,uBAAuB,EAAE,MAAM,EAAE,OAAO,EAAE;YACzE,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN,UAAU,EAAE;wBACV,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE;4BACP,IAAI,EAAE,QAAQ;4BACd,MAAM,EAAE;gCACN,UAAU,EAAE;oCACV,IAAI,EAAE,QAAQ;oCACd,MAAM,EAAE,EAAC,mBAAmB,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,EAAC;iCACxD;6BACF;yBACF;qBACF;iBACF;aACF;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN,mBAAmB,EAAE;wBACnB,IAAI,EAAE,UAAU;wBAChB,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,MAAM,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,EAAC;yBAC5C;qBACF;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,MAAM,EAAE;4BACN,IAAI,EAAE;gCACJ,IAAI,EAAE,OAAO;gCACb,OAAO,EAAE;oCACP,IAAI,EAAE,QAAQ;oCACd,MAAM,EAAE;wCACN,KAAK,EAAE;4CACL,IAAI,EAAE,UAAU;4CAChB,KAAK,EAAE;gDACL,IAAI,EAAE,QAAQ;gDACd,MAAM,EAAE;oDACN,gBAAgB,EAAE;wDAChB,IAAI,EAAE,OAAO;wDACb,OAAO,EAAE;4DACP,IAAI,EAAE,QAAQ;4DACd,MAAM,EAAE;gEACN,KAAK,EAAE;oEACL,IAAI,EAAE,OAAO;oEACb,OAAO,EAAE;wEACP,IAAI,EAAE,QAAQ;wEACd,MAAM,EAAE;4EACN,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;4EACD,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;yEACF;qEACF;iEACF;gEACD,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;6DACF;yDACF;qDACF;oDACD,KAAK,EAAE;wDACL,IAAI,EAAE,OAAO;wDACb,OAAO,EAAE;4DACP,IAAI,EAAE,QAAQ;4DACd,MAAM,EAAE;gEACN,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;gEACD,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;6DACF;yDACF;qDACF;oDACD,mBAAmB,EAAE;wDACnB,IAAI,EAAE,UAAU;wDAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;qDAChC;iDACF;6CACF;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF,CAAQ,CAAC;IACZ,CAAC;IACD;;OAEG;IACH,QAAQ,CACN,EAAU,EACV,MAAuC,EACvC,OAAwB;QAExB,OAAO,IAAI,CAAC,YAAY,CACtB,KAAK,EACL,yBAAyB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACjD,MAAM,EACN,OAAO,EACP;YACE,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE;oBACN,mBAAmB,EAAE;wBACnB,IAAI,EAAE,UAAU;wBAChB,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,MAAM,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC,EAAC;yBAC5C;qBACF;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,MAAM,EAAE;4BACN,IAAI,EAAE;gCACJ,IAAI,EAAE,OAAO;gCACb,OAAO,EAAE;oCACP,IAAI,EAAE,QAAQ;oCACd,MAAM,EAAE;wCACN,KAAK,EAAE;4CACL,IAAI,EAAE,UAAU;4CAChB,KAAK,EAAE;gDACL,IAAI,EAAE,QAAQ;gDACd,MAAM,EAAE;oDACN,gBAAgB,EAAE;wDAChB,IAAI,EAAE,OAAO;wDACb,OAAO,EAAE;4DACP,IAAI,EAAE,QAAQ;4DACd,MAAM,EAAE;gEACN,KAAK,EAAE;oEACL,IAAI,EAAE,OAAO;oEACb,OAAO,EAAE;wEACP,IAAI,EAAE,QAAQ;wEACd,MAAM,EAAE;4EACN,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;4EACD,mBAAmB,EAAE;gFACnB,IAAI,EAAE,UAAU;gFAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;6EAChC;yEACF;qEACF;iEACF;gEACD,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;6DACF;yDACF;qDACF;oDACD,KAAK,EAAE;wDACL,IAAI,EAAE,OAAO;wDACb,OAAO,EAAE;4DACP,IAAI,EAAE,QAAQ;4DACd,MAAM,EAAE;gEACN,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;gEACD,mBAAmB,EAAE;oEACnB,IAAI,EAAE,UAAU;oEAChB,KAAK,EAAE,EAAC,IAAI,EAAE,gBAAgB,EAAC;iEAChC;6DACF;yDACFLine truncated
+17
View File
@@ -0,0 +1,17 @@
import { Stripe } from '../../stripe.core.js';
import { Checkout as CheckoutNamespace0, Session, SessionResource } from './Sessions.js';
export { Session } from './Sessions.js';
export declare class Checkout {
private readonly stripe;
sessions: SessionResource;
constructor(stripe: Stripe);
}
export declare namespace Checkout {
export import SessionListParams = CheckoutNamespace0.SessionListParams;
export import SessionCreateParams = CheckoutNamespace0.SessionCreateParams;
export import SessionRetrieveParams = CheckoutNamespace0.SessionRetrieveParams;
export import SessionUpdateParams = CheckoutNamespace0.SessionUpdateParams;
export import SessionExpireParams = CheckoutNamespace0.SessionExpireParams;
export import SessionListLineItemsParams = CheckoutNamespace0.SessionListLineItemsParams;
export { Session, SessionResource };
}
+13
View File
@@ -0,0 +1,13 @@
"use strict";
// File generated from our OpenAPI spec
Object.defineProperty(exports, "__esModule", { value: true });
exports.Checkout = void 0;
const Sessions_js_1 = require("./Sessions.js");
class Checkout {
constructor(stripe) {
this.stripe = stripe;
this.sessions = new Sessions_js_1.SessionResource(stripe);
}
}
exports.Checkout = Checkout;
//# sourceMappingURL=index.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/resources/Checkout/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;;;AAGvC,+CAIuB;AAIvB,MAAa,QAAQ;IAGnB,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,6BAAe,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;CACF;AAND,4BAMC"}