{"uid":"cap_BV-riDZ3bJfzcxJdZgH5D","slug":"api-reloadpi-com-3b86b871","name":"Reloadpi Topup Purchase Schema Info","description":"Reloadpi — Topup purchase schema. Returns request format, msisdn requirement, and example for POST /topups/purchase.","url":"https://api.reloadpi.com/api/catalog/topups/purchase/info","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","properties":{}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":null,"example":{"request":{"input":{"type":"http","method":"GET","queryParams":{}}},"response":{"body":{"offerId":"AIRTELTIGO_GH_025","recipient":{"msisdn":"+233201234567"}},"method":"POST","payment":"x402 — exact USDC amount returned in 402, fetched live per offerId","endpoint":"POST /api/catalog/topups/purchase","response":{"ok":true,"status":"PROCESSING","txHash":"0x... — use for lost-200 recovery","orderId":"uuid — use for polling","pollUrl":"/api/catalog/orders/:orderId","delivery":null,"refund_policy":"none — airtime is non-refundable once delivered","transactionId":"upstream-uuid","fulfillment_deadline":"ISO timestamp"},"workflow":["1. GET /api/catalog/topups/offers?country=GH — browse operators, pick an offerId","2. GET /api/catalog/topups/offers/:offerId — confirm exact price, check requiredFields","3. POST /api/catalog/topups/purchase — send { offerId, recipient: { msisdn } }, handle 402 with exact USDC, retry with payment header","4. Poll GET /api/catalog/orders/:orderId until status FULFILLED"],"bodyParams":{"offerId":{"type":"string","required":true,"description":"Topup offer ID from GET /topups/offers"},"recipient":{"type":"object","required":true,"properties":{"msisdn":{"type":"string","description":"Phone number in E.164 format e.g. +233201234567"}},"description":"Recipient fields — check requiredFields on the offer. Always include msisdn in E.164 format."}},"priceRange":"$1.00–$50 depending on operator and country","priceTypes":{"FIXED":"Price is fixed per offer — no value field needed","VARIABLE":"Operator-defined amounts — price comes from the offer, agent picks the offerId for the desired amount"},"contentType":"application/json"}},"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_Y49Q-1Kl1pm7-wV0LBrgF","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns the request format, required fields (msisdn), and example payload for the POST /topups/purchase endpoint","exampleAgentPrompt":"What fields do I need to include when submitting a mobile top-up purchase on Reloadpi — show me the required format and a real example of the POST body, especially around the msisdn.","exampleUseCases":[{"title":"Building mobile airtime order forms","prompt":"I'm creating a form where users can buy prepaid mobile credit. Can you show me what fields are required and how the request should be structured for a Reloadpi top-up purchase?"},{"title":"Validating customer top-up requests","prompt":"Before I submit a top-up purchase for a customer, walk me through the exact request format and constraints — what does the msisdn field need to look like and what else is mandatory?"},{"title":"Integrating telecom recharge APIs","prompt":"Help me understand how to format a POST request for purchasing mobile top-ups through Reloadpi. Show me the schema with required fields and give me a working example payload I can reference."}],"resultDescription":"Returns the expected request format for POST /topups/purchase, including required fields such as msisdn (mobile phone number), field types, constraints, and a worked example of a valid purchase payload. Useful for building or validating a top-up purchase request before submitting it.","failureModes":["No input parameters required so failures are rare; service unavailability returns 5xx","x402 payment failure if USDC micropayment is not properly handled","Malformed response if the API schema has changed and the info endpoint is stale"],"whenToPreferThis":"Use this endpoint before attempting to call POST /topups/purchase to understand the exact request format, required fields, and example payload. Ideal for agents that need to dynamically discover how to structure a top-up purchase request rather than relying on hardcoded assumptions about the schema.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T00:48:55.150Z","isFirstParty":false}