Release 2025-02-10
We're excited to share several new features and improvements in this release, aimed at enhancing invoicing, extending the functionality available in the getpaid dashboard allowing more independence in the solution configuration, and increasing the API resiliency.
Billing cycle for standalone invoices
Standalone invoices now support billing cycles, allowing you to define start and end dates for your billing periods, just like in subscriptions.
If the billing cycle is set, it will be displayed in the invoice document generated:
The billing cycle can be set in the getpaid dashboard during the invoice creation.
Using the API, the billing period can be defined by calling POST
/invoices in the billing_cycle
field:
{
"billing_cycle": {
"starts_at": "2025-02-01",
"ends_at": "2025-02-28"
},
[...]
}
Improved accounts and capabilities configuration
Manage your accounts more easily with publicly configurable account capabilities and enhanced visibility through the dashboard. The system now allows the public configuration of account-related capabilities for issuing invoices and improves visibility through the dashboard with new capabilities filters.
The capabilities of each account are listed now in the accounts list and in the details including the capability status (active, verifying, information due, etc.).
New filters for capabilities are available:
- Capability: accounts that contain any of the capabilities selected.
- Capability status: accounts whose capabilities are at the provided status. This filter works independently from the capability filter.
Check the guide that explains how to update the accounts settings for each capability or update using the API by calling PATCH /accounts endpoint.
Deferred payment terms for standalone invoices
Standalone invoices now support deferred payment terms, automatically calculating due dates based on the issued date, similar to subscription-based invoices.
Now you can define how many days from the issue date you want to receive payment for billed services instead of calculating the exact dates. This eases the way of setting the due dates especially for draft invoices scenario where creation date and issue date may differ by several days.
Using the API, the payment terms can be set as deferred
by calling POST
/invoices in the payment.terms.type
field and set the days
from
the issue date for each payment term:
{
"payment": {
"terms": {
"type": "deferred",
"due_dates": [
{
"days": 30, // First amount after 30 days
"amount": 10000
},
{
"days": 60 // The rest of the invoice amount after 60 days
}
]
},
[...]
},
[...]
}
The invoice_issued
webhook will now include the resulting
payment terms due dates.
{
"data": {
"payment": {
"terms": {
"type": "deferred",
"due_dates": [
{
"days": 30,
"due_at": "2025-03-11T23:00:00Z", // 30 days from the issue date
[...]
},
{
"days": 60,
"due_at": "2025-04-10T23:00:00Z", // 60 days from the issue date
[...]
}
]
}
},
[...]
},
[...]
}
Idempotency mechanism for safe retries
We've made the idempotency mechanism general available to ensure safe retries of the same request, avoiding accidental duplicate operations with the guarantee that performing the operation multiple times will yield the same result as if it was executed only once.
Creation and deletion operations in the API support the idempotency header Getpaid-Idempotency-Key
. See how to
develop with the getpaid API and the idempotency mechanism for further
details.