Move a reseller integration to v3
A practical migration checklist for endpoint, authentication, currency, service IDs and order retries.
1. Connect without ordering
Set the endpoint to https://smm.africa/api/v3. Keep your key on the server. Make a balance request and fetch services. v3 balances, charges and order amounts use USD. Do not reuse another supplier's service IDs; map your products to the current catalog.
2. Map the service type
Use fields required by the selected service type in the API reference. Default orders use a public link and quantity; packages and custom comments have different requirements. Validate minimums, maximums, target format and available balance before submission.
3. Keep one logical order
Persist a unique idempotency key alongside each logical order. Reuse that key only with the identical payload if the response is uncertain. Show a pending state after 20 seconds while your server allows up to 60 seconds for the request. Never create a new key simply because the client timed out.
4. Track the returned ID
Store the SMM Africa order ID. Poll one order per status request, respect Retry-After and distinguish accepted or queued from delivered. Do not copy another provider's status mapping without checking the reference. Refill and cancel requests are conditional, not guaranteed.
5. Cut over deliberately
Reconcile outstanding orders on the old connection before switching. Keep old IDs associated with their original connection. Validate one authorized order and its eventual state before expanding traffic. Do not resubmit an unconfirmed old order to the new connection.