> For the complete documentation index, see [llms.txt](https://developers.bloomcredit.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.bloomcredit.io/reference/krakend-api-gateway/accounts/create-accounts-in-batch.md).

# Create Accounts In Batch

Creates up to 24 furnished accounts in a single request. Each account is validated and persisted independently, so the call returns `201` even when some accounts fail: successfully created accounts are listed under `success` and rejected ones under `fail`, each with the errors that caused the rejection. Accounts are correlated to the request by `external_account_identifier`. Supplying more than 24 accounts rejects the whole request with `422`.

```json
{"openapi":"3.1.0","info":{"title":"KrakenD - API Gateway","version":"2.0"},"tags":[{"name":"Accounts"}],"servers":[{"description":"Furnishment sandbox server, for testing purposes (v2)","url":"https://sandbox.bloom.dev"},{"description":"Furnishment server","url":"https://api.bloomcredit.io"},{"description":"Production Consumer Permissioned Data server","url":"https://api.bloomplus.com"},{"description":"Development Consumer Permissioned Data server","url":"https://api.bloomplus.dev"}],"security":[{"Oauth2ClientCredentials":["furnishment:all"]}],"components":{"securitySchemes":{"Oauth2ClientCredentials":{"flows":{"clientCredentials":{"scopes":{"furnishment:all":"Manage accounts."},"tokenUrl":"https://authn.bloomcredit.dev/oauth2/token"}},"type":"oauth2"}},"schemas":{"Request_AccountCreateBatch_":{"description":"Request envelope for batch account creation.","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/RequestData_AccountCreateBatch_"}],"description":"Primary API resource payload."}},"required":["data"],"title":"Request[AccountCreateBatch]","type":"object"},"RequestData_AccountCreateBatch_":{"description":"Represents request data account create batch.","properties":{"attributes":{"allOf":[{"$ref":"#/components/schemas/AccountCreateBatch"}],"description":"Domain attributes for this resource."},"id":{"title":"Id","type":"string","description":"Stable identifier for this resource."},"relationships":{"additionalProperties":{"allOf":[{"$ref":"#/components/schemas/RequestRelationshipModel"}],"description":"Relationships value associated with this resource."},"title":"Relationships","type":"object","description":"API relationships to associated resources."},"type":{"enum":["AccountCreateBatch"],"title":"Type","type":"string","description":"API resource type. Allowed values: `AccountCreateBatch`."}},"required":["type","attributes"],"title":"RequestData[AccountCreateBatch]","type":"object"},"AccountCreateBatch":{"description":"A batch of accounts to create in a single request. At most 24 accounts may be submitted per request.","properties":{"accounts":{"items":{"$ref":"#/components/schemas/AccountCreate"},"maxItems":24,"title":"Accounts","type":"array","description":"Accounts to create. Each entry is validated independently, so a batch may partially succeed."}},"required":["accounts"],"title":"AccountCreateBatch","type":"object"},"AccountCreate":{"description":"Attributes accepted when creating a furnished account.","properties":{"account_opened_date":{"format":"date","title":"Account Opened Date","type":"string","description":"Date the account was opened. This value is required and cannot be in the future."},"business_address":{"title":"Business Address","type":"string","description":"Street address of the business responsible for a commercial account. Only accepted for business portfolios; the state is normalized on write."},"business_ein":{"title":"Business Ein","type":"string","description":"Employer Identification Number of the business responsible for a commercial account."},"business_name":{"title":"Business Name","type":"string","description":"Legal name of the business responsible for a commercial account."},"business_phone_number":{"title":"Business Phone Number","type":"string","description":"Contact phone number of the business responsible for a commercial account."},"credit_product_id":{"format":"uuid","title":"Credit Product Id","type":"string","description":"Unique identifier of the credit product whose portfolio-specific Metro 2 rules apply to the account."},"date_of_first_delinquency":{"format":"date","title":"Date Of First Delinquency","type":"string","description":"Date when the continuous delinquency leading to the current status began; cannot be in the future."},"external_account_identifier":{"title":"External Account Identifier","type":"string","description":"Partner-supplied account identifier used for correlation; numeric JSON values are normalized to strings."},"merchant_name":{"title":"Merchant Name","type":"string","description":"Name of the merchant associated with the account, reported for retail or private-label products."},"original_creditor_classification":{"allOf":[{"$ref":"#/components/schemas/CreditorClassificationCode"}],"description":"Metro 2 creditor classification of the original creditor. Required together with `original_creditor_name` when reporting a purchased or collection account."},"original_creditor_name":{"title":"Original Creditor Name","type":"string","description":"Name of the original creditor. Required together with `original_creditor_classification` when reporting a purchased or collection account."},"paid_off":{"default":false,"title":"Paid Off","type":"boolean","description":"Whether the account is already paid off at creation time."},"primary_consumer_id":{"format":"uuid","title":"Primary Consumer Id","type":"string","description":"Unique identifier of the consumer primarily responsible for the account."},"primary_designation":{"allOf":[{"$ref":"#/components/schemas/ECOACode"}],"description":"ECOA code describing the primary consumer’s responsibility for the account, such as `INDIVIDUAL`."},"reported_consumer_account_number":{"title":"Reported Consumer Account Number","type":"string","description":"Account number reported to the credit bureaus; the service may mask it in responses."},"secondary_consumers":{"default":[],"items":{"$ref":"#/components/schemas/SecondaryConsumerInfo"},"title":"Secondary Consumers","type":"array","description":"Secondary consumers associated with the account, including each consumer identifier, optional address identifier, and ECOA designation."},"secondary_market_or_mers":{"allOf":[{"$ref":"#/components/schemas/SecondaryMarket"}],"description":"Secondary-market owner or MERS designation for a mortgage account."},"secondary_market_or_mers_number":{"title":"Secondary Market Or Mers Number","type":"string","description":"Identifier assigned by the secondary-market owner or MERS. Only meaningful when `secondary_market_or_mers` is supplied."},"terms_duration":{"title":"Terms Duration","type":"string","description":"Three-character Metro 2 contract term: a zero-padded duration such as `012`, or `REV`/`LOC` for revolving or line-of-credit portfolios."}},"required":["credit_product_id","account_opened_date","terms_duration","external_account_identifier"],"title":"AccountCreate","type":"object"},"CreditorClassificationCode":{"description":"The Metro2 K1 segment field \"Creditor Classification\"","enum":["RETAIL","MEDICAL_HEALTH_CARE","OIL_COMPANY","GOVERNMENT","PERSONAL_SERVICES","INSURANCE","EDUCATIONAL","BANKING","RENTAL_LEASING","UTILITIES","CABLE_CELLULAR","FINANCIAL","CREDIT_UNION","AUTOMOTIVE","CHECK_GUARANTEE"],"title":"CreditorClassificationCode","type":"string"},"ECOACode":{"description":"The ECOA Code defines the relationship of the consumer to the account in compliance\nwith the Equal Credit Opportunity Act.\n\nAttributes:\n- `INDIVIDUAL`: This consumer has contractual responsibility for this account and         is primarily responsible for its payment.\n- `JOINT_CONTRACTUAL_LIABILITY`: This consumer has contractual responsibility for         this joint account.\n- `AUTHORIZED_USER`: This consumer is an authorized user of this account; another         consumer has contractual responsibility.\n- `COMAKER_OR_GUARANTOR`: This consumer is the co-maker or guarantor for this         account, who becomes liable if the maker defaults.\n- `MAKER`: This consumer is the maker who is liable for the account, but a        co-maker or guarantor is liable if the maker defaults.\n- `BUSINESS_COMMERCIAL`: This code is used to identify that the company reported        in the Name field is contractually liable for this account.\n- `DECEASED`: This consumer is deceased.\n- `TERMINATED`: The association with the account has been         terminated by this consumer.\n- `DELETE_CONSUMER`: This code is used to delete this consumer from the account.","enum":["INDIVIDUAL","JOINT_CONTRACTUAL_LIABILITY","AUTHORIZED_USER","COMAKER_OR_GUARANTOR","MAKER","BUSINESS_COMMERCIAL","DECEASED","TERMINATED","DELETE_CONSUMER"],"title":"ECOACode","type":"string"},"SecondaryConsumerInfo":{"properties":{"address_id":{"format":"uuid","title":"Address Id","type":"string","description":"Optional identifier of the consumer address to use for furnishing."},"consumer_id":{"format":"uuid","title":"Consumer Id","type":"string","description":"Unique Consumer Hub identifier of the secondary consumer."},"designation":{"allOf":[{"$ref":"#/components/schemas/ECOACode"}],"description":"ECOA code describing the secondary consumer’s responsibility for the account."}},"required":["consumer_id","designation"],"title":"SecondaryConsumerInfo","type":"object","description":"Represents secondary consumer info."},"SecondaryMarket":{"description":"Secondary-market owner or MERS designation reported for a mortgage account.","enum":["FANNIE_MAE","FREDDIE_MAC","MERS"],"title":"SecondaryMarket","type":"string"},"RequestRelationshipModel":{"properties":{"data":{"anyOf":[{"$ref":"#/components/schemas/ResourceIdentifier"},{"items":{"allOf":[{"$ref":"#/components/schemas/ResourceIdentifier"}],"description":"Primary API resource payload."},"type":"array","description":"Primary API resource payload."}],"title":"Data","description":"Primary API resource payload."}},"title":"RequestRelationshipModel","type":"object","description":"Represents request relationship model."},"ResourceIdentifier":{"description":"https://jsonapi.org/format/#document-resource-identifier-objects","properties":{"id":{"title":"Id","type":"string","description":"Stable identifier for this resource."},"meta":{"title":"Meta","type":"object","description":"Metadata associated with the response."},"type":{"title":"Type","type":"string","description":"API resource type."}},"required":["id","type"],"title":"ResourceIdentifier","type":"object"},"Response_AccountBatch_":{"description":"Response envelope for batch account creation.","properties":{"data":{"allOf":[{"$ref":"#/components/schemas/ResponseData_AccountBatch_"}],"description":"Primary API resource payload."},"included":{"items":{"description":"Included associated with this resource."},"title":"Included","type":"array","description":"Collection of included."},"links":{"additionalProperties":{"anyOf":[{"type":"string","description":"Links value associated with this resource."},{"$ref":"#/components/schemas/LinkHref"}],"description":"Links value associated with this resource."},"title":"Links","type":"object","description":"Links related to this resource or collection."},"meta":{"title":"Meta","type":"object","description":"Metadata associated with the response."}},"required":["data"],"title":"Response[AccountBatch]","type":"object"},"ResponseData_AccountBatch_":{"description":"Represents response data account batch.","properties":{"attributes":{"allOf":[{"$ref":"#/components/schemas/BatchAccount"}],"default":{},"title":"Attributes","description":"Domain attributes for this resource."},"id":{"title":"Id","type":"string","description":"Stable identifier for this resource."},"links":{"additionalProperties":{"anyOf":[{"type":"string","description":"Links value associated with this resource."},{"$ref":"#/components/schemas/LinkHref"}],"description":"Links value associated with this resource."},"title":"Links","type":"object","description":"Links related to this resource or collection."},"relationships":{"additionalProperties":{"allOf":[{"$ref":"#/components/schemas/ResponseRelationshipModel"}],"description":"Relationships value associated with this resource."},"title":"Relationships","type":"object","description":"API relationships to associated resources."},"type":{"enum":["AccountBatch"],"title":"Type","type":"string","description":"API resource type. Allowed values: `AccountBatch`."}},"required":["id","type"],"title":"ResponseData[AccountBatch]","type":"object"},"BatchAccount":{"description":"Per-account outcome of a batch account creation request.","properties":{"fail":{"items":{"$ref":"#/components/schemas/BatchAccountFail"},"title":"Fail","type":"array","description":"Accounts that were rejected, each with the errors that caused the rejection."},"id":{"title":"Id","type":"string","description":"Placeholder API identifier for the batch result; always `0`."},"success":{"items":{"$ref":"#/components/schemas/BatchAccountSucess"},"title":"Success","type":"array","description":"Accounts that were created successfully."}},"required":["success","fail","id"],"title":"BatchAccount","type":"object"},"BatchAccountFail":{"description":"A single account from the batch that could not be created.","properties":{"errors":{"items":{"$ref":"#/components/schemas/JSONAPIError"},"title":"Errors","type":"array","description":"Errors that prevented this account from being created."},"external_account_identifier":{"title":"External Account Identifier","type":"string","description":"Partner-supplied identifier of the account that failed, echoed from the request."}},"required":["external_account_identifier","errors"],"title":"BatchAccountFail","type":"object"},"JSONAPIError":{"properties":{"detail":{"default":"","title":"Detail","type":"string","description":"Human-readable detail explaining the result or error."},"status":{"title":"Status","type":"integer","description":"Bloom internal error code, computed as `error group * 100 + error number`. This is not the HTTP status code."},"title":{"title":"Title","type":"string","description":"Short, human-readable summary of the error."}},"required":["title"],"title":"JSONAPIError","type":"object","description":"Error representation used when a request cannot be completed (jsonapierror)."},"BatchAccountSucess":{"description":"A single account from the batch that was created successfully.","properties":{"account_id":{"format":"uuid","title":"Account Id","type":"string","description":"Identifier assigned to the newly created account."},"external_account_identifier":{"title":"External Account Identifier","type":"string","description":"Partner-supplied identifier of the created account, echoed from the request."}},"required":["external_account_identifier","account_id"],"title":"BatchAccountSucess","type":"object"},"LinkHref":{"properties":{"href":{"title":"Href","type":"string","description":"Href associated with this resource."},"meta":{"title":"Meta","type":"object","description":"Metadata associated with the response."}},"required":["href","meta"],"title":"LinkHref","type":"object","description":"Represents link href."},"ResponseRelationshipModel":{"properties":{"data":{"anyOf":[{"$ref":"#/components/schemas/ResourceIdentifier"},{"items":{"allOf":[{"$ref":"#/components/schemas/ResourceIdentifier"}],"description":"Primary API resource payload."},"type":"array","description":"Primary API resource payload."}],"title":"Data","description":"Primary API resource payload."},"links":{"additionalProperties":{"anyOf":[{"type":"string","description":"Links value associated with this resource."},{"$ref":"#/components/schemas/LinkHref"}],"description":"Links value associated with this resource."},"title":"Links","type":"object","description":"Links related to this resource or collection."},"meta":{"title":"Meta","type":"object","description":"Metadata associated with the response."}},"title":"ResponseRelationshipModel","type":"object","description":"Represents response relationship model."},"JSONAPIErrorResponse":{"properties":{"errors":{"items":{"allOf":[{"$ref":"#/components/schemas/JSONAPIError"}],"description":"Error associated with this resource."},"title":"Errors","type":"array","description":"Errors that prevented the request from completing."}},"required":["errors"],"title":"JSONAPIErrorResponse","type":"object","description":"Error representation used when a request cannot be completed (jsonapierror response)."}}},"paths":{"/v2/furnishment/accounts/batch":{"post":{"operationId":"create_account_batch_api_v1_accounts_batch_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Request_AccountCreateBatch_"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Response_AccountBatch_"}}},"description":"Batch processed. Individual accounts may have failed; inspect `success` and `fail`."},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/JSONAPIErrorResponse"}}},"description":"The batch exceeded the maximum size, or the request body failed schema validation."}},"summary":"Create Accounts In Batch","tags":["Accounts"],"description":"Creates up to 24 furnished accounts in a single request. Each account is validated and persisted independently, so the call returns `201` even when some accounts fail: successfully created accounts are listed under `success` and rejected ones under `fail`, each with the errors that caused the rejection. Accounts are correlated to the request by `external_account_identifier`. Supplying more than 24 accounts rejects the whole request with `422`."}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://developers.bloomcredit.io/reference/krakend-api-gateway/accounts/create-accounts-in-batch.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
