Skip to content

Documentation / @tenancy-node/core / BillingApi

Interface: BillingApi ​

Defined in: core/src/billing/billing-service.ts:69

Properties ​

providers ​

readonly providers: readonly string[]

Defined in: core/src/billing/billing-service.ts:71

Pasarelas configuradas (manual siempre está).

Methods ​

cancel() ​

cancel(tenant): Promise<Subscription>

Defined in: core/src/billing/billing-service.ts:76

Cancela: deja de facturar. El tenant sigue con lo ya pagado.

Parameters ​

tenant ​

string

Returns ​

Promise<Subscription>


checkout() ​

checkout(invoiceId, options?): Promise<CheckoutSession>

Defined in: core/src/billing/billing-service.ts:90

Inicia el cobro en línea con una pasarela (enlace de pago o QR).

Parameters ​

invoiceId ​

string

options? ​
provider? ​

string

returnUrl? ​

string

Returns ​

Promise<CheckoutSession>


getInvoice() ​

getInvoice(id): Promise<Invoice | undefined>

Defined in: core/src/billing/billing-service.ts:79

Parameters ​

id ​

string

Returns ​

Promise<Invoice | undefined>


invoice() ​

invoice(tenant, input?): Promise<Invoice>

Defined in: core/src/billing/billing-service.ts:78

Emite una factura (cobro suelto o el próximo período). Idempotente por período.

Parameters ​

tenant ​

string

input? ​

InvoiceInput

Returns ​

Promise<Invoice>


invoices() ​

invoices(query?): Promise<Page<Invoice>>

Defined in: core/src/billing/billing-service.ts:80

Parameters ​

query? ​
dueBefore? ​

Date

page? ​

number

periodStart? ​

Date

perPage? ​

number

status? ​

readonly ("open" | "paid" | "void")[]

tenantId? ​

string

Returns ​

Promise<Page<Invoice>>


pay() ​

pay(invoiceId, input?): Promise<{ invoice: Invoice; payment: Payment; }>

Defined in: core/src/billing/billing-service.ts:86

Registra un pago (manual o de la pasarela). Al completarse, la factura queda pagada y la suscripción se extiende.

Parameters ​

invoiceId ​

string

input? ​

PayInput

Returns ​

Promise<{ invoice: Invoice; payment: Payment; }>


payments() ​

payments(query): Promise<Payment[]>

Defined in: core/src/billing/billing-service.ts:84

Parameters ​

query ​
invoiceId? ​

string

limit? ​

number

tenantId? ​

string

Returns ​

Promise<Payment[]>


run() ​

run(options?): Promise<BillingRunResult>

Defined in: core/src/billing/billing-service.ts:104

Ciclo de cobro (córrelo una vez al día: tenancy billing:run): factura los períodos que vienen, marca past_due las suscripciones con facturas vencidas y, con suspendAfterDays, suspende a quien no pagó.

Parameters ​

options? ​
now? ​

Date

Returns ​

Promise<BillingRunResult>


subscribe() ​

subscribe(tenant, input?): Promise<Subscription>

Defined in: core/src/billing/billing-service.ts:73

Crea o cambia la suscripción de un tenant. Sin prueba, emite la factura del primer período.

Parameters ​

tenant ​

string

input? ​

SubscribeInput

Returns ​

Promise<Subscription>


subscription() ​

subscription(tenant): Promise<Subscription | undefined>

Defined in: core/src/billing/billing-service.ts:74

Parameters ​

tenant ​

string

Returns ​

Promise<Subscription | undefined>


subscriptions() ​

subscriptions(query?): Promise<Page<Subscription>>

Defined in: core/src/billing/billing-service.ts:81

Parameters ​

query? ​
endsBefore? ​

Date

page? ​

number

perPage? ​

number

status? ​

readonly ("active" | "trialing" | "past_due" | "canceled")[]

Returns ​

Promise<Page<Subscription>>


void() ​

void(invoiceId): Promise<Invoice>

Defined in: core/src/billing/billing-service.ts:88

Anula una factura sin pagos.

Parameters ​

invoiceId ​

string

Returns ​

Promise<Invoice>


webhook() ​

webhook(provider, request): Promise<{ handled: boolean; invoice?: Invoice; }>

Defined in: core/src/billing/billing-service.ts:95

Procesa el webhook de una pasarela: si confirma un pago, lo registra (idempotente).

Parameters ​

provider ​

string

request ​
body ​

string

headers ​

Readonly<Record<string, string | readonly string[] | undefined>>

Returns ​

Promise<{ handled: boolean; invoice?: Invoice; }>

Publicado bajo la licencia MIT.