--- title: "Dynamic financing offers" description: "Learn how to get dynamic offers with flexible financing amounts and repayment terms." url: "https://docs.adyen.com/capital/get-grant-offers/dynamic-offers" source_url: "https://docs.adyen.com/capital/get-grant-offers/dynamic-offers.md" canonical: "https://docs.adyen.com/capital/get-grant-offers/dynamic-offers" last_modified: "2026-05-08T17:09:18+02:00" language: "en" --- # Dynamic financing offers Learn how to get dynamic offers with flexible financing amounts and repayment terms. **Limited availability**\ Variable repayment terms (90, 180, and 360 days) for financing offers are currently in a pilot phase. To request access, reach out to your Adyen contact. *** Adyen provides increased flexibility by supporting dynamic financing offers through the [Capital API](https://docs.adyen.com/api-explorer/capital/latest/overview). Rather than presenting a list of fixed amounts, dynamic offers allow users to choose a preferred amount from a specified range. Based on their processing history, users may receive up to three dynamic offers with repayment terms of 90, 180, and 360 days. Higher amounts are typically available with longer terms. You can use data from dynamic offers, for example, to implement a slider in your user interface (UI) that lets users select their financing amount. Additionally, you can offer a dropdown or buttons for repayment term selection. ## Requirements Before you begin, take into account the following requirements, limitations, and preparations. | Requirement | Description | | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | **Integration type** | You must have an Adyen for Platforms integration that supports Capital. | | **API credentials** | You must have a [Balance Platform API key](/capital/manage-access#api-credentials) (for example, **ws\[\_123456]@BalancePlatform.\[YourBalancePlatform]**) to access the [Capital API](https://docs.adyen.com/api-explorer/capital/latest/overview). Your API credential must have the following roles:- **Balance Platform Capital Configuration role** - **Balance Platform Capital Grant Initiation role** | | **Capabilities** | Make sure that your user have the following [capability](/capital/manage-user-capabilities):- **getGrantOffers** | | **Limitations** | * Requests to the following endpoints are subject to rate limits in both Test and Live environments: * [/dynamicOffers/{dynamicOfferId}/calculate](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate): **120 requests per minute** * [/dynamicOffers/{dynamicOfferId}/grantOffer](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer): **30 requests per minute** * The amount a user selects on your UI must be within the range available to this user. However, you can set a custom logic for amount increments within the range. For example, you can specify steps of EUR 100 or EUR 500. * Each financing offer remains valid for seven days. After this period, a new offer is generated for an account holder if they still meet the qualification criteria. The range may differ from one offer to another. | | **Setup steps** | Before you begin, make sure:* You followed our [compliance guidelines for Capital](/capital/compliance-guidelines) when creating user interfaces, marketing materials, and other processes. * You built a user interface that allows users to select their preferred financing amount from a range. | ## How it works The process to get a financing offer through the dynamic offers flow is as follows: 1. Make an API request to [get the range of available financing](#get-financing-range) for a specific account holder. The API may return up to three dynamic offers, each with a different range and repayment term. Use the data from the API response to present offers in your UI. 2. After the user selects an amount and repayment term, make an API request to [calculate a preliminary offer](#preliminary-offer). This returns an initial breakdown of costs and conditions for the selected amount. 3. When the user confirms their selection, make an API request to [create a static offer](#static-offer). This action generates a legally binding offer with a final breakdown of costs and conditions. 4. Get updates when a new offer is created for your account holder. The following sections provide more details about each step of integrating dynamic financing offers. ## 1. Get the range of available financing To get the financing range available for a specific user: 1. Make a GET [/dynamicOffers](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers) request including the following query parameters: | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | | [accountHolderId](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#query-accountHolderId) | String | ![Required](/user/pages/reuse/image-library/01.icons/required/required.svg?decoding=auto\&fetchpriority=auto) | The unique identifier of that the dynamic offer is for. | | [financingType](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#query-financingType) | String | | The type of financing that the offer is for. Currently, only **businessFinancing** is supported. | ![This is the required icon.](/user/pages/reuse/image-library/01.icons/capital-legend/required.svg?decoding=auto\&fetchpriority=auto) Required\ ![This is the conditionally required icon.](/user/pages/reuse/image-library/01.icons/capital-legend/conditionally-required.svg?decoding=auto\&fetchpriority=auto) Conditionally required The following code sample shows how to get the range of available financing for the account holder ID **AH00000000000000000000001**. **Get available financing range** ```bash curl https://balanceplatform-api-test.adyen.com/capital/v1/dynamicOffers?accountHolderId=AH00000000000000000000001 \ -H 'x-api-key: ADYEN_BALANCE_PLATFORM_API_KEY' \ -H 'content-type: application/json' \ -X GET ``` 2. The API can return up to three dynamic offers, each with a different range and repayment term. In the response, review the [dynamicOffers](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers) object, which contains the following parameters for each dynamic offer returned. You can use this data to, for example, implement a slider in your UI, allowing users to choose their financing amount, and provide a dropdown or selector for repayment terms. | Parameter | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | | [accountHolderId](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-accountHolderId)\` | The unique identifier of the account holder that the dynamic offer is for. | | [contractType](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-contractType) | The legal type of the offer. Possible values: **loan**, **cashAdvance**. | | [expiresAt](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-expiresAt) | The expiration date and time of the offer validity period. | | [financingType](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-financingType) | The type of financing that the offer is for. Currently, only **businessFinancing** is supported. | | [id](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-id) | The unique identifier of the dynamic financing offer. | | [maximumAmount](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-maximumAmount) | An object containing the maximum amount of the financing offer, including both the value and the currency. | | [minimumAmount](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-minimumAmount) | An object containing the minimum amount of the financing offer, including both the value and the currency. | | [repayment](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-repayment) | An object containing the details of the repayment configuration. | | [repayment.term.estimatedDays](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-repayment-term-estimatedDays) | The estimated period for repaying the grant, in days. | | [repayment.term.maximumDays](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-repayment-term-maximumDays) | The maximum period for repaying the grant, in days. | | [startsAt](https://docs.adyen.com/api-explorer/capital/latest/get/dynamicOffers#responses-200-dynamicOffers-startsAt) | The starting date and time of the offer validity period. | **Available financing range received** ```json { "dynamicOffers": [ { "id": "0000000000000001", "repayment": { "term": { "estimatedDays": 180, "maximumDays": 270 } }, "accountHolderId": "AH00000000000000000000001", "contractType": "loan", "startsAt": "2026-01-08T23:00:00Z", "expiresAt": "2026-01-15T23:00:00Z", "financingType": "businessFinancing", "maximumAmount": { "value": 2500000, "currency": "EUR" }, "minimumAmount": { "value": 50000, "currency": "EUR" } }, { "id": "0000000000000002", "repayment": { "term": { "estimatedDays": 90, "maximumDays": 120 } }, "accountHolderId": "AH00000000000000000000001", "contractType": "loan", "startsAt": "2026-01-08T23:00:00Z", "expiresAt": "2026-01-15T23:00:00Z", "financingType": "businessFinancing", "maximumAmount": { "value": 1280000, "currency": "EUR" }, "minimumAmount": { "value": 50000, "currency": "EUR" } } ] } ``` ## 2. Calculate a preliminary offer for a selected amount and term When a user selects an amount and repayment term in your UI, you must show preliminary terms and conditions for the offer. This includes a selected amount, a daily repayment in basis points, a threshold amount, applicable fees, an estimated and a maximum repayment term, and an offer validity period. The preliminary offer is for informational purposes only and cannot be used to initiate a grant. To calculate a preliminary offer for selected amount and term: 1. Make a POST [/dynamicOffers/{dynamicOfferId}/calculate](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate) request. In the path, include the [id](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#path-id) of the dynamic offer that the user made a selection from. Requests to this endpoint are subject to rate limits. All requests to the endpoint, including those that result in failure, count toward the specified limit. * Test environment: **120 requests per minute** * Live environment: **120 requests per minute** 2. Additionally, specify the following parameters in your request body: | Parameter | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | [amount.currency](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#request-amount-currency) | String | ![Required](/user/pages/reuse/image-library/01.icons/required/required.svg?decoding=auto\&fetchpriority=auto) | The three-character [ISO currency code](/development-resources/currency-codes). This value must match the currency of the dynamic offer. | | [amount.value](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#request-amount-value) | Integer | ![Required](/user/pages/reuse/image-library/01.icons/required/required.svg?decoding=auto\&fetchpriority=auto) | The financing amount that the user selected, in [minor units](/development-resources/currency-codes). The amount be within the range of the corresponding dynamic offer. | ![This is the required icon.](/user/pages/reuse/image-library/01.icons/capital-legend/required.svg?decoding=auto\&fetchpriority=auto) Required\ ![This is the conditionally required icon.](/user/pages/reuse/image-library/01.icons/capital-legend/conditionally-required.svg?decoding=auto\&fetchpriority=auto) Conditionally required **Calculate a preliminary offer for the selected amount** ```bash curl https://balanceplatform-api-test.adyen.com/capital/v1/dynamicOffers/00000000000000001/calculate \ -H 'x-api-key: ADYEN_BALANCE_PLATFORM_API_KEY' \ -H 'content-type: application/json' \ -X POST \ -d '{ "amount": { "value": 250000, "currency": "EUR" } }' ``` In the response, note the parameters in the following table: | Parameter | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | | [accountHolderId](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-accountHolderId) | The unique identifier of the account holder that the dynamic offer is for. | | [amount](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-amount) | An object containing offer currency and value, in [minor units](/development-resources/currency-codes). | | [contractType](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-contractType) | The contract type of the offer. | | [expiresAt](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-expiresAt) | The expiration date and time of the offer validity period. | | [fee](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-fee) | An object containing the fee currency and value, in [minor units](/development-resources/currency-codes). | | [repayment](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-repayment) | An object containing the details of the repayment configuration. | | [repayment.basisPoints](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-repayment-basisPoints) | The repayment amount, in [basis points](https://www.investopedia.com/terms/b/basispoint.asp), that is deducted daily from your user's incoming net volume. | | [repayment.term.estimatedDays](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-repayment-term-estimatedDays) | The estimated period for repaying the grant, in days. | | [repayment.term.maximumDays](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-repayment-term-maximumDays) | The maximum period for repaying the grant, in days. | | [repayment.threshold.amount](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-repayment-threshold-amount) | An object containing the details of the minimum threshold amount that your user must repay every 30-day period. | | [startsAt](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/calculate#responses-200-startsAt) | The starting date and time of the offer validity period. | **Preliminary offer calculated** ```json { "accountHolderId": "AH00000000000000000000001", "amount": { "currency": "EUR", "value": 250000 }, "contractType": "loan", "expiresAt": "2026-01-15T23:00:00Z", "fee": { "amount": { "currency": "EUR", "value": 95000 } }, "repayment": { "basisPoints": 750, "term": { "estimatedDays": 90, "maximumDays": 120 }, "threshold": { "amount": { "currency": "EUR", "value": 38330 } } }, "startsAt": "2026-01-08T23:00:00Z" } ``` ## 3. Create a static offer for a selected amount and term After the user selects a final amount and repayment term from the dynamic offer, use this data to create a static offer with definitive terms and conditions. This includes a fixed amount, a daily repayment in basis points, a threshold amount, applicable fees, an estimated and a maximum repayment term, and an offer validity period. This is a formal, legally binding offer that must be provided for the user's review in your UI to comply with the [user interface requirements](/capital/user-interface) for Capital. To create a static offer for the selected amount and term: 1. Make a POST [/dynamicOffers/{dynamicOfferId}/grantOffer](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer) request. In the path, include the [id](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#path-id) of the dynamic offer that the user made their final selection from. Requests to this endpoint are subject to rate limits. All requests to the endpoint, including those that result in failure, count toward the specified limit. * Test environment: **30 requests per minute** * Live environment: **30 requests per minute** 2. Additionally, specify the following parameters in your request body: | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | [amount.currency](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#request-amount-currency) | String | ![Required](/user/pages/reuse/image-library/01.icons/required/required.svg?decoding=auto\&fetchpriority=auto) | The three-character [ISO currency code](/development-resources/currency-codes). This value must match the currency of the dynamic offer. | | [amount.value](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#request-amount-valu) | Integer | ![Required](/user/pages/reuse/image-library/01.icons/required/required.svg?decoding=auto\&fetchpriority=auto) | The final financing amount that the user selected, in [minor units](/development-resources/currency-codes). The amount be within the range of the corresponding dynamic offer. | ![This is the required icon.](/user/pages/reuse/image-library/01.icons/capital-legend/required.svg?decoding=auto\&fetchpriority=auto) Required\ ![This is the conditionally required icon.](/user/pages/reuse/image-library/01.icons/capital-legend/conditionally-required.svg?decoding=auto\&fetchpriority=auto) Conditionally required **Create a static offer for the selected amount** ```bash curl https://balanceplatform-api-test.adyen.com/capital/v1/dynamicOffers/00000000000000001/grantOffer \ -H 'x-api-key: ADYEN_BALANCE_PLATFORM_API_KEY' \ -H 'content-type: application/json' \ -X POST \ -d '{ "amount": { "value": 500000, "currency": "EUR" } }' ``` In the response, note the parameters in the following table. The [id](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-id) parameter represents a static offer and is required to [configure a grant](/capital/make-grant-request/). | Parameter | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | | [accountHolderId](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-accountHolderId) | The unique identifier of the account holder that the dynamic offer is for. | | [amount](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-amount) | An object containing offer currency and value, in [minor units](/development-resources/currency-codes). | | [contractType](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-contractType) | The contract type of the offer. | | [expiresAt](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-expiresAt) | The expiration date and time of the offer validity period. | | [fee](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-fee) | An object containing the fee currency and value, in [minor units](/development-resources/currency-codes). | | [id](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-id) | The unique identifier of the static offer. Required to initiate a grant in the next step. | | [repayment](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-repayment) | An object containing the details of the repayment configuration. | | [repayment.basisPoints](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-repayment-basisPoints) | The repayment amount, in [basis points](https://www.investopedia.com/terms/b/basispoint.asp), that is deducted daily from your user's incoming net volume. | | [repayment.term.estimatedDays](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-repayment-term-estimatedDays) | The estimated period for repaying the grant, in days. | | [repayment.term.maximumDays](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-repayment-term-maximumDays) | The maximum period for repaying the grant, in days. | | [repayment.threshold.amount](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-repayment-threshold-amount) | An object containing the details of the minimum threshold amount that your user must repay every 30-day period. | | [startsAt](https://docs.adyen.com/api-explorer/capital/latest/post/dynamicOffers/\(id\)/grantOffer#responses-200-startsAt) | The starting date and time of the offer validity period. | **Static offer created** ```json { "accountHolderId": "AH00000000000000000000001", "amount": { "currency": "EUR", "value": 250000 }, "id": "0000000000000002", "contractType": "loan", "expiresAt": "2026-01-15T23:00:00Z", "fee": { "amount": { "currency": "EUR", "value": 95000 } }, "repayment": { "basisPoints": 750, "term": { "estimatedDays": 90, "maximumDays": 120 }, "threshold": { "amount": { "currency": "EUR", "value": 38330 } } }, "startsAt": "2026-01-08T23:00:00Z" } ``` ## 4. Get notified about an offer created You can get updates every time a new offer is created for an account holder by subscribing to the following webhooks: * [balancePlatform.capital.dynamicOffer.created](https://docs.adyen.com/api-explorer/capital-webhooks/latest/post/balancePlatform.capital.dynamicOffer.created) webhook: Notifies your server when a new dynamic offer is created for an account holder. * [balancePlatform.balanceAccountHolder.capitalOffer.created](https://docs.adyen.com/api-explorer/capital-webhooks/latest/post/balancePlatform.balanceAccountHolder.capitalOffer.created) webhook: Notifies your server when a new static offer is created for an account holder. ### Tab: Dynamic offer created The [balancePlatform.capital.dynamicOffer.created](https://docs.adyen.com/api-explorer/capital-webhooks/latest/post/balancePlatform.capital.dynamicOffer.created) webhook includes information about the offer, such as: * `accountHolderId`: The unique identifier of the account holder that the dynamic offer is for. * `id`: The unique identifier of the dynamic offer. * `contractType`: **loan**. * `maximumAmount`: An object containing currency and value of the maximum offer amount, in [minor units](/development-resources/currency-codes). * `minimumAmount`: An object containing currency and value of the minimum offer amount, in [minor units](/development-resources/currency-codes). * `repayment.term.estimatedDays`: The estimated period for repaying the grant, in days. * `repayment.term.maximumDays`: The maximum period for repaying the grant, in days. * `financingType`: **businessFinancing**. * `startsAt` and `expiresAt`: The dates when the financing offer begins and ends. The offer must be accepted before the expiration date. **Dynamic offer created** ```json { "data": { "balancePlatform": "BalancePlatform", "id": "0000000000000001", "dynamicOffer": { "accountHolderId": "AH00000000000000000000001", "contractType": "loan", "expiresAt": "2026-02-19T20:22:39.489+01:00", "financingType": "businessFinancing", "id": "0000000000000001", "maximumAmount": { "currency": "EUR", "value": 4567 }, "minimumAmount": { "currency": "EUR", "value": 1234 }, "repayment": { "term": { "estimatedDays": 180, "maximumDays": 270 } }, "startsAt": "2026-02-12T20:22:39.489+01:00" } }, "environment": "test", "timestamp": "2026-02-12T19:22:39.699Z", "type": "balancePlatform.capital.dynamicOffer.created" } ``` ### Tab: Static offer created from the dynamic offer The [balancePlatform.balanceAccountHolder.capitalOffer.created](https://docs.adyen.com/api-explorer/capital-webhooks/latest/post/balancePlatform.balanceAccountHolder.capitalOffer.created) webhook includes information about the offer, such as: * `accountHolderId`: The unique identifier of the account holder that the static offer is for. * `id`: The unique identifier of the static offer. * `contractType`: **loan**. * `amount`: An object containing currency and value of the offer, in [minor units](/development-resources/currency-codes). * `repayment.term.estimatedDays`: The estimated period for repaying the grant, in days. * `repayment.term.maximumDays`: The maximum period for repaying the grant, in days. * `repayment.basisPoints`: The repayment amount, in [basis points](https://www.investopedia.com/terms/b/basispoint.asp), that is deducted daily from your user's incoming net volume. * `repayment.threshold`: An object containing the details of the minimum threshold amount that your user must repay every 30-day period. * `fee`: An object containing the fee currency and value, in [minor units](/development-resources/currency-codes). * `startsAt` and `expiresAt`: The dates when the financing offer begins and ends. The offer must be accepted before the expiration date. **Static offer created from the dynamic offer** ```json { "data": { "balancePlatform": "TestBalancePlatform", "creationDate": "2026-01-19T17:17:35+01:00", "id": "0000000000000002", "offer": { "accountHolderId": "AH00000000000000000000001", "amount": { "currency": "EUR", "value": 629375 }, "contractType": "loan", "expiresAt": "2026-01-26T17:17:34.328+01:00", "fee": { "amount": { "currency": "EUR", "value": 94406 } }, "id": "0000000000000002", "repayment": { "basisPoints": 800, "term": { "estimatedDays": 180, "maximumDays": 270 }, "threshold": { "amount": { "currency": "EUR", "value": 80420 } } }, "startsAt": "2026-01-19T17:17:34.328+01:00" } }, "environment": "test", "timestamp": "2026-01-19T16:17:35.558Z", "type": "balancePlatform.balanceAccountHolder.capitalOffer.created" } ``` ## Next steps [required](/capital/terms-of-service) [Show the Terms of Service](/capital/terms-of-service) [Get your users to accept Adyen's Terms of Service.](/capital/terms-of-service) [required](/capital/make-grant-request) [Disburse a grant](/capital/make-grant-request) [Learn how to make a request for a grant and disburse the funds to your user's account.](/capital/make-grant-request)