Limits and billing
Plan allowances, shared admission limits and how reading units are counted.
One reading unit covers one new request: an INE front/back pair, or a single side when you explicitly choose that mode. The monthly allowance is shared by the company. GET requests and valid same-job replays do not consume another unit.
Plans
Prices are in MXN before applicable taxes. Contact ecodevcontact@gmail.com to arrange service. Plans, payments and access are provisioned manually; there is no automated checkout or recurring billing in the application.
| Plan | Monthly price | Annual price | Readings per month |
|---|---|---|---|
| Basic | $299 MXN | $2,990 MXN | 500 |
| Pro | $999 MXN | $9,990 MXN | 3,000 |
| Plus | $2,999 MXN | $29,990 MXN | 10,000 |
| Enterprise | Contact us | By agreement | By agreement |
Annual pricing is one payment equal to ten monthly payments for twelve months of service. The monthly allowance stays the same; the full year's units are not granted at once. Usage currently counts by UTC calendar month, not by billing anniversary. The displayed account allowance is the provisioned limit.
All listed plans use the same extraction contract. A larger allowance does not promise higher accuracy, faster inference or reserved capacity.
Current availability: the pilot uses the shared Images Free allowance of 5,000 unique transformations per month. At four new crops per paired INE, that is roughly 1,250 distinct paired readings across all clients before other usage; repeated transformations and single-side requests change the count. This is a shared provider ceiling, not a guaranteed customer allowance. Pro and Plus capacity is not currently provisioned. We must confirm and arrange capacity before activation or payment; a plan request creates no payment commitment.
Shared operating limits
| Limit | Current setting for Basic, Pro and Plus |
|---|---|
| Concurrent active readings | 2 per company |
| New readings | 10 per rolling 60 seconds per company |
| Files | 5 MiB per side; static JPG, PNG or WEBP |
| Result access | 23 hours from reservation |
These limits are shared across users, integrations and API versions. They do not multiply per user. Extra jobs are rejected with 429 rather than placed in a durable queue. Implement a queue in your own backend if your users submit larger bursts, and honor Retry-After.
What counts
| Event | Reading units |
|---|---|
| New job successfully reserved | 1 |
| Reserved job fails because no fields can be read | Still 1 |
| New reserved job fails because of a technical processing error | Automatically credited to 0 |
| Authentication, validation or admission rejection before reservation | 0 |
| GET an existing result | 0 additional |
| Replay the same key and exact image bytes | 0 additional |
| Submit a new key or a new set of photographs | 1 if a new job is reserved |
Technical processing failures are automatically credited in quota; this is not a cash refund. Their attempt and error history remain visible, and they still count toward the rolling-minute limit. Historical failures recorded before this policy was deployed keep their original usage. It does not automatically charge overages, buy top-ups or refill quota. New jobs are blocked when the provisioned monthly allowance is exhausted. Discuss plan changes or any commercial adjustment with support.
The dashboard shows billable usage and credits, alongside all reserved attempts and their outcomes. A processing job already occupies a unit; a successful result with review warnings is still a completed reading. UTC month boundaries can differ from your local date.
Pilot
Request a pilot for 20 billable readings total, valid for 14 days after manual provisioning. It does not renew at a month boundary or convert automatically to a paid plan. Existing results remain retrievable until their normal expiration after the pilot ends. Account access is subject to approval and provisioning; submitting an email does not create a key.
The browser sandbox uses fictional, fixed responses without processing photographs. It is separate from a live pilot.