Screenshot API with Prepaid Credits and UPI Payment for Indian Freelancers
Compare screenshot APIs, prepaid credit rules, and UPI payment evidence so you can choose a service and estimate screenshot costs before buying.
If you are an Indian freelancer looking for a screenshot API with prepaid credits and UPI payment, pixbix is the closest match in the reviewed vendor information: its pricing page describes screenshot API credit top-ups and says its Razorpay checkout accepts UPI, cards, and net banking. That is the vendor’s advertised payment support, not proof that UPI will be offered to every account or UPI app. Check the live checkout before purchasing. pixbix [c001]
For an alternative with clearly documented prepaid-credit terms, ScreenshotAPI.to sells credit packs that it says never expire, but the reviewed pricing page does not name UPI. ScreenshotNeo is the first alternative to try if your priority is a screenshot API with clean captures and clear failure billing: only clean shots are billed, and it offers 1,000 shots per month free without a card. [c002] ScreenshotNeo
1. What to verify before paying
Payment methods, pack terms, and prices are vendor details that can change. Confirm these points on the official pricing page and in your own account’s checkout:
- UPI is actually available to you. A pricing-page claim that Razorpay accepts UPI does not establish that the method appears for every buyer, region, transaction, or account. Check the payment options shown immediately before payment. [c001]
- Credits are prepaid top-ups, not monthly allowance. Find out whether the service spends a recurring plan allowance before prepaid credits, and what happens when both are empty. ScreenshotAPI.to says its plan allowance is used first. [c002]
- Credits expire or not. ScreenshotAPI.to says its separate credit packs never expire; verify current terms before buying. [c002]
- Know what one credit buys. ScreenshotAPI.to documents one credit per screenshot. Do not assume another provider counts captures the same way, especially for PDF, retries, or multiple output formats. [c002][c003]
- Check failure billing. ScreenshotAPI.to says failed captures do not consume the plan allowance or a credit. The research does not establish the same billing policy for every provider. [c003]
- Check the currency and tax display. pixbix’s pricing result says prices are in INR and include GST, but the captured result did not provide pack sizes or exact prices. Confirm the current amount in the vendor’s own checkout. [c001]
2. Services and payment evidence
| Service | Prepaid model in reviewed information | What the reviewed source says about payment | Useful distinction |
|---|---|---|---|
| ScreenshotNeo | Plans include monthly shot allowances; pricing information supplied for this article does not describe prepaid top-up credits. | Payment methods were not established in the supplied product facts. | Clean shots are billed; failed loads, bot checks, blank pages, and cache hits are not. Free plan: 1,000 shots/month without a card. |
| pixbix | Pricing result describes paid top-up credits that can be used on any plan, including Free. | Its pricing page says Razorpay checkout accepts UPI, cards, and net banking. Verify the live checkout for your account. [c001] | Closest researched match for prepaid screenshot credits with an explicit UPI claim. Exact pack sizes and prices were not captured. |
| ScreenshotAPI.to | Separate packs never expire; monthly allowance is spent first. One credit equals one screenshot, according to its pricing and docs. [c002][c003] | Major credit/debit cards and select local payment methods are listed. UPI is not explicitly named in the reviewed page. [c002] | Detailed published credit pack and failure-billing terms. |
| ScreenshotAPI.com | Pricing describes advance-purchased credits and metered billing. | Payment method was not established by the reviewed pricing page. [c004] | Its pricing page lists PNG, JPG, and GIF renders. [c004] |
This is a comparison of the specific information reviewed, not a guarantee of current checkout availability or a universal cheapest-provider ranking. Recheck vendor terms before purchasing.
3. Estimate the credits you need
Estimate usage from the number of pages you capture and how often you capture each page. A useful starting formula is:
monthly captures = pages per run × runs per month × captures per page
For example, monitoring 40 URLs once each weekday for roughly 22 weekdays is about 880 captures a month if you make one screenshot per URL per run. Add expected retries or extra viewport captures separately, and check whether the provider bills them. This is arithmetic for planning, not a provider price estimate.
For ScreenshotAPI.to, the reviewed official pricing page showed these USD prices: Free, 200 screenshots/month; Starter, $19/month for 5,000; Growth, $49/month for 25,000; Scale, $149/month for 100,000. It listed top-ups of $9 for 1,000 credits, $29 for 5,000, $99 for 25,000, and $299 for 100,000. Its page says plan allowance resets each billing period, is consumed before pack credits, and packs do not expire. Verify current prices and terms on the ScreenshotAPI.to pricing page. [c002]
ScreenshotAPI.to’s API docs say a failed capture does not consume allowance or credit, and describe HTTP 402 when the monthly plan limit is reached and no credits remain. Read the current API documentation for the exact response and billing behavior. [c003]
ScreenshotAPI.com’s reviewed pricing page stated the first 100 shots are free, then $0.001 per shot, and described advance credit pricing tiers. These are vendor-stated terms and do not directly compare with a monthly subscription or another provider’s capture features. Confirm current details at ScreenshotAPI.com pricing. [c004]
4. Make a screenshot request
ScreenshotAPI.to documents an API-key-authenticated request that returns binary image data. Save the response body as an image file rather than printing it as text. The exact parameter names and authentication format can vary across providers, so consult the selected service’s current API reference. [c003]
cURL
curl --fail --show-error --silent \
--get 'https://shot.screenshotapi.to/screenshot' \
--data-urlencode 'token=YOUR_API_KEY' \
--data-urlencode 'url=https://example.com' \
--output page.png
Use the endpoint and parameter names shown in your provider’s current documentation. The command above illustrates the request pattern; check ScreenshotAPI.to’s docs for the exact endpoint and required parameters before running it. [c003]
Python
import requests
endpoint = "https://shot.screenshotapi.to/screenshot"
params = {
"token": "YOUR_API_KEY",
"url": "https://example.com",
}
response = requests.get(endpoint, params=params, timeout=90)
response.raise_for_status()
with open("page.png", "wb") as image_file:
image_file.write(response.content)
Install the dependency with python -m pip install requests. Confirm the endpoint and parameter names against your provider’s API reference. Keep the key in an environment variable or secret store in deployed applications.
Node.js
const endpoint = new URL("https://shot.screenshotapi.to/screenshot");
endpoint.search = new URLSearchParams({
token: process.env.SCREENSHOT_API_KEY,
url: "https://example.com",
}).toString();
const response = await fetch(endpoint);
if (!response.ok) {
throw new Error(`Screenshot request failed: HTTP ${response.status}`);
}
const image = Buffer.from(await response.arrayBuffer());
await import("node:fs/promises").then(({ writeFile }) =>
writeFile("page.png", image)
);
Run with SCREENSHOT_API_KEY=YOUR_API_KEY node capture.mjs. As with the other examples, use the endpoint and parameter names documented by your chosen provider. [c003]
5. Handle binary responses and billing safely
- Send the API key using the authentication method the provider documents. Avoid committing keys to source control or placing them in browser-side code.
- URL-encode the page URL and any query parameters. This prevents characters such as
&from being interpreted as parameters to the screenshot API itself. - Check the HTTP status before saving a response as an image. Authentication errors, quota exhaustion, or invalid parameters may return an error body rather than image bytes.
- Write the body in binary mode. Text decoding can corrupt PNG, JPEG, WebP, or PDF output.
- Inspect response headers when available. ScreenshotAPI.to’s reference describes a remaining-credit header; retain this signal in logs if you need to monitor balances. [c003]
- Make retries deliberate. A timeout does not tell your client whether the provider completed the capture. Before retrying, check whether the API offers an idempotency mechanism or job status, and understand its retry billing rules.
6. Troubleshooting
| Symptom | Likely cause | What to do |
|---|---|---|
| UPI does not appear in checkout | The payment claim may not apply to the account, transaction, or current checkout configuration. | Recheck the provider’s current pricing and checkout options. Do not complete payment assuming UPI will be available. pixbix advertises UPI through Razorpay, but availability should be confirmed in your own checkout. [c001] |
| HTTP 401 or 403 | Missing, invalid, or insufficiently authorized API key. | Check the key, account status, authentication parameter/header, and endpoint in the current docs. Never paste a live key into a public issue. |
| HTTP 402 or quota error | Allowance or credits may be exhausted. ScreenshotAPI.to documents 402 when the plan limit is reached and no credits remain. [c003] | Inspect account usage and response headers; confirm that the allowance and top-up balance are applied in the expected order. |
| Saved file is unreadable | An error response was saved as an image, or the binary body was decoded as text. | Check status and content type before writing; save raw bytes in binary mode. |
| Capture is blank or incomplete | The target may require time to render, block automated access, or load content after initial navigation. | Check provider options for wait conditions and supported rendering behavior. A screenshot API cannot guarantee access to every protected or dynamic page. |
| Request times out | The destination or rendering task took longer than the client timeout. | Use a sensible timeout, record the request outcome, and retry with backoff only after considering duplicate-capture billing and idempotency. |
| Credits disappear faster than expected | The provider may count each URL, viewport, retry, or output operation differently than expected. | Compare usage records with your actual request volume and read the billing definition for the specific product. For ScreenshotAPI.to, the stated unit is one credit per screenshot. [c002] |
7. Reliability, performance, and cost considerations
- Measure your own workload. The reviewed sources do not establish real-world latency or reliability. Test representative pages and regions using a small volume before relying on scheduled production captures.
- Bound concurrency. Large bursts can stress your own queue and may hit provider limits. Use a queue, cap concurrent requests, and retry transient failures with exponential backoff and jitter.
- Separate failures from successful output. Log status, request ID if provided, duration, content type, and usage headers. This helps reconcile bills and diagnose empty files.
- Control repeated work. If a page does not need a new image on every poll, schedule less often or use caching if your provider supports it. Confirm whether cache hits are billed before depending on savings.
- Compare cost at your actual volume. Monthly allowances, prepaid credit packs, per-shot pricing, expiration, and included features differ. Avoid comparing headline prices without accounting for successful captures, retries, required output, and unused balance.
- Plan for currency and tax. Check whether the displayed price is INR or USD, whether GST is included, and how your payment provider converts or reports the charge.
8. Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server. A single GET request can return a PNG, JPEG, WebP, or PDF. Its capture flow accepts cookie and consent banners like a visitor, removes 60+ known consent platforms, newsletter popups, and chat widgets, and lets you turn each step off. Bot checks/CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed; responses identify page verdict and billing status in headers. Its MCP server provides take_screenshot, get_page_info, and capture_pdf for AI agents using Claude, Cursor, or another MCP client. Every feature is on every plan: 1,000 screenshots/month free with no card, then paid plans start at $5 for 3,000 shots. Read the ScreenshotNeo API docs.
curl -G "https://api.screenshotneo.com/v1/shot" \
-d access_key=YOUR_API_KEY \
--data-urlencode url=https://stripe.com \
-o shot.webp
import requests
r = requests.get(
"https://api.screenshotneo.com/v1/shot",
params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"},
timeout=90,
)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Cookie banners, popups, and chat widgets are removed before the shot. Bot checks, blank pages, and failed loads are never billed. An MCP server lets AI agents take screenshots. 1,000 screenshots a month are free with no card, and paid plans start at $5 for 3,000. Sign up for ScreenshotNeo free.
9. Frequently asked questions
Does “accepts UPI” mean every Indian freelancer can pay by UPI?
No. It is a vendor’s stated payment option. Confirm that UPI appears in your account’s live checkout before buying. [c001]
Do ScreenshotAPI.to credit packs expire?
The reviewed pricing page says its prepaid packs never expire. Recheck the live terms before purchase. [c002]
Does the research identify a universally cheapest option?
No. The products use different currencies, allowances, credit rules, and billing models, so the reviewed figures are not a like-for-like cost ranking.
Were checkout success, latency, or reliability independently tested?
No. The payment and pricing details here are vendor-published information; the research did not include hands-on checkout or performance testing.
