{"assessment_id":"ra_1759f1fe4788c3c5b379","schema":"swapeazi.route_assessment.v1","rules_version":"ra-1 (29 Oct 2026)","input":{"from":"ZAR","to":"USD","amount":250000,"priced_at_amount":250000,"amount_assumed":false,"as_of":"2026-11-03T03:59:36.052Z"},"corridor":"ZAR-USD","corridor_status":"priced_only","regional_routes":[],"reference":{"evidence_type":"reference","rate":0.060109683094374325,"pair":"ZAR/USD","date":"2026-11-02","freshness":"fresh","age_business_days":1,"sources":["European Central Bank","Narodowy Bank Polski","Czech National Bank","South African Reserve Bank"],"agreement_bps":null,"limitation":"A benchmark, not a price anyone deals at."},"order":{"sort":null,"set_by":"none","note":"Routes are listed in the order the sources answered. SwapEazi does not rank routes."},"routing_preferences":null,"options":[{"option_id":"opt_1","route":"Route A · your bank (Authorised Dealer)","rail":"ad_wire","evidence_type":"published","cost":{"all_in_bps_vs_reference":97,"complete":false,"landed":{"value":14881.94,"currency":"USD"},"sends":{"value":250000,"currency":"ZAR"}},"fx":{"effective_rate":0.059528,"reference_rate":0.06011},"settlement":{"business_days":[1,3],"basis":"Tue 3 Nov 03:59 UTC is a banking day: moves today if released before the provider's cut-off (not on record), otherwise starts moving Wed 4 Nov","evidence":"inference"},"licence":"licence on record","source":{"note":"published board rate (TT) R16.7989 per USD, read 2026-11-03 03:07 UTC, 98 bps over the official rate; no 2026 tariff for this bank read: the transfer fee is not in this figure, so 97 bps is a floor, not the cost; the sheet states no date; the bank's board rate; corporates often negotiate a tighter rate; receiving and intermediary charges not included (no source states them)","read_at":"2026-11-03T03:07:00.000Z","freshness":"fresh","age_hours":0.9},"rate_receipt":{"figure":"97 bps against the official rate (a floor: a fee was not on record)","kind":"the provider's own published rate or fee","source":"published board rate (TT) R16.7989 per USD, read 2026-11-03 03:07 UTC, 98 bps over the official rate; no 2026 tariff for this bank read: the transfer fee is not in this figure, so 97 bps is a floor, not the cost; the sheet states no date; the bank's board rate; corporates often negotiate a tighter rate; receiving and intermediary charges not included (no source states them)","read_at":"2026-11-03T03:07:00.000Z","freshness":"fresh","against":"ZAR/USD official rate of 2026-11-02","source_type":"bank_sheet"},"route_status":{"status":"priced_only","last_priced_at":"2026-11-03T03:07:00.000Z","last_landed_at":null,"landed_count":0,"reason":null},"limitations":["A published price or rate sheet; what a payer is dealt can differ (negotiated terms, the day's rate).","A cost of this route was not read (the bank's fee): the figure is a floor, not the cost.","Receiving and correspondent bank charges are not included."],"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"banks","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Bank rate sheets are read, but no per-read history is kept yet, so no answer rate."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Bank rate sheets are read, but no per-read history is kept yet, so no answer rate."},"open_incident":null,"excluded":null,"source":"Bank rate sheets are read, but no per-read history is kept yet, so no answer rate."}},{"option_id":"opt_2","route":"Route B · your bank (Authorised Dealer)","rail":"ad_wire","evidence_type":"indicative","cost":{"all_in_bps_vs_reference":131,"complete":true,"landed":{"value":14830.04,"currency":"USD"},"sends":{"value":250000,"currency":"ZAR"}},"fx":{"effective_rate":0.05932,"reference_rate":0.06011},"settlement":{"business_days":[1,3],"basis":"Tue 3 Nov 03:59 UTC is a banking day: moves today if released before the provider's cut-off (not on record), otherwise starts moving Wed 4 Nov","evidence":"inference"},"licence":"licence on record","source":{"note":"published board rate (Standard Bank's opening indication rate, published 2 Nov 16:00 SAST (indicative)) R16.7982 per USD, read 2026-11-03 03:07 UTC, 97 bps over the official rate; fee R882 (the bank's published 2026 guide, page 3, outward foreign payment, electronic channel, figures confirmed in the PDF); the bank's board rate; corporates often negotiate a tighter rate; receiving and intermediary charges not included (no source states them)","read_at":"2026-11-03T03:07:00.000Z","freshness":"fresh","age_hours":0.9},"rate_receipt":{"figure":"131 bps against the official rate","kind":"a public quote for this amount, not locked","source":"published board rate (Standard Bank's opening indication rate, published 2 Nov 16:00 SAST (indicative)) R16.7982 per USD, read 2026-11-03 03:07 UTC, 97 bps over the official rate; fee R882 (the bank's published 2026 guide, page 3, outward foreign payment, electronic channel, figures confirmed in the PDF); the bank's board rate; corporates often negotiate a tighter rate; receiving and intermediary charges not included (no source states them)","read_at":"2026-11-03T03:07:00.000Z","freshness":"fresh","against":"ZAR/USD official rate of 2026-11-02","source_type":"bank_sheet"},"route_status":{"status":"priced_only","last_priced_at":"2026-11-03T03:07:00.000Z","last_landed_at":null,"landed_count":0,"reason":null},"limitations":["Indicative: the price can change until the provider or bank locks it for the payer.","Receiving and correspondent bank charges are not included."],"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"banks","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Bank rate sheets are read, but no per-read history is kept yet, so no answer rate."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Bank rate sheets are read, but no per-read history is kept yet, so no answer rate."},"open_incident":null,"excluded":null,"source":"Bank rate sheets are read, but no per-read history is kept yet, so no answer rate."}}],"routes_without_figures":[{"route":"Route C · FX platform","rail":"fx_platform","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route D · FX platform","rail":"fx_platform","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route E · payout network","rail":"payout_network","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route F · payout network","rail":"payout_network","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route G · FX platform","rail":"fx_platform","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route H · payout network","rail":"payout_network","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route I · payout network","rail":"payout_network","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}},{"route":"Route J · FX platform","rail":"fx_platform","settlement_business_days":[0,2],"why":"Known to serve this pair; no measured payment, firm quote or published price for it is on record, so no figure is given.","route_status":{"status":"no_live_route","last_priced_at":null,"last_landed_at":null,"landed_count":0,"reason":"No live price is on record for this route."},"days_to_land":{"median_hours":null,"p90_hours":null,"n":0,"from":null,"to":null,"reason":"insufficient history (n=0)"},"rail_type":"payment_providers","health":{"basis":"rail_type","type":null,"last_good_read_at":null,"d7":{"window_days":7,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"d30":{"window_days":30,"reads_scheduled":0,"reads_answered":0,"answer_rate_pct":null,"collector_missed_hours":0,"display":"not enough reads (0 of 12 needed): Provider prices come from requests and published fees; no scheduled read history is kept."},"open_incident":null,"excluded":null,"source":"Provider prices come from requests and published fees; no scheduled read history is kept."}}],"excluded_by_preferences":[],"liquidity":{"status":"depth","corridor":"ZAR-USD","ticket":{"value":250000,"currency":"ZAR"},"with_depth":["exchange_books","onchain_dollars"],"landing_cost_bps":29.7,"largest_size_read":{"value":83181273.68,"currency":"ZAR"},"rate_receipt_ids":["rr_57d5079f3afcf7d9915f"],"read_at":"2026-11-03T02:05:13.953Z","not_read":["stablecoin_pools"],"text":"Depth at ZAR 250,000 on exchange order books, on-chain dollars (usdc, usdt); landing cost 29.7 bps (Rate Receipt rr_57d5079f3afcf7d9915f). Affected by an open incident: verified P2P markets left out of depth: a verified exchange confirmed a security incident on 29 Oct 2026 (hot wallets drained across several chains, about USD 6.3 billion per TRM Labs) and suspended withdrawals on multiple networks; its books and P2P adverts are not counted as depth until withdrawals resume.","incidents":[{"id":"a verified exchange-2026-10-29","kind":"withdrawals","venues":["a verified exchange","the P2P market"],"since":"2026-10-29T00:00:00Z","what":"a verified exchange confirmed a security incident on 29 Oct 2026 (hot wallets drained across several chains, about USD 6.3 billion per TRM Labs) and suspended withdrawals on multiple networks; its books and P2P adverts are not counted as depth until withdrawals resume.","source":"","affects":"verified P2P markets left out of depth: a verified exchange confirmed a security incident on 29 Oct 2026 (hot wallets drained across several chains, about USD 6.3 billion per TRM Labs) and suspended withdrawals on multiple networks; its books and P2P adverts are not counted as depth until withdrawals resume."}],"health":{"corridor":{"basis":"corridor","type":null,"last_good_read_at":"2026-11-03T03:07:06.538Z","d7":{"window_days":7,"reads_scheduled":242,"reads_answered":242,"answer_rate_pct":100,"landing_bps":{"median_bps":32.5,"p90_bps":56,"samples":242},"collector_missed_hours":5,"display":"100% of 242 hourly prices in 7 days filled"},"d30":{"window_days":30,"reads_scheduled":973,"reads_answered":973,"answer_rate_pct":100,"landing_bps":{"median_bps":52,"p90_bps":87,"samples":973},"collector_missed_hours":5,"display":"100% of 973 hourly prices in 30 days filled"},"open_incident":null,"excluded":null,"source":"the hourly wholesale panel: exchange books walked at size against the official rate"},"rail_types":[{"type":"exchange_books","answer_rate_pct_7d":90.5,"reads_7d":2206,"display":"90.5% of 2206 scheduled reads across 22 venues in 7 days answered","last_good_read_at":"2026-11-03T03:07:06.538Z","excluded":3},{"type":"stablecoin_pools","answer_rate_pct_7d":0,"reads_7d":432,"display":"0% of 432 scheduled reads across 9 venues in 7 days answered","last_good_read_at":null,"excluded":9},{"type":"onchain_dollars","answer_rate_pct_7d":50,"reads_7d":1129,"display":"50% of 1129 scheduled reads across 12 venues in 7 days answered","last_good_read_at":"2026-11-03T03:25:14.636Z","excluded":0},{"type":"p2p","answer_rate_pct_7d":87.2,"reads_7d":282,"display":"87.2% of 282 scheduled reads across 3 venues in 7 days answered","last_good_read_at":"2026-11-03T03:07:06.538Z","excluded":1},{"type":"ramps","answer_rate_pct_7d":null,"reads_7d":0,"display":"not enough reads (0 of 12 needed): Ramps are read with a partner key per request; no scheduled read history is kept.","last_good_read_at":null,"excluded":0},{"type":"otc_desks","answer_rate_pct_7d":null,"reads_7d":0,"display":"not enough reads (0 of 12 needed): Desk quotes are published by the desks when they choose; there is no schedule to measure against.","last_good_read_at":null,"excluded":0},{"type":"banks","answer_rate_pct_7d":null,"reads_7d":0,"display":"not enough reads (0 of 12 needed): Bank rate sheets are read, but no per-read history is kept yet, so no answer rate.","last_good_read_at":null,"excluded":0}]}},"requirements":[{"id":"za-authorised-dealer","applies_to":"bank","answer":"applies","title":"Exchange control: payments abroad from South Africa go through an Authorised Dealer","source":"Exchange Control Regulations, 1961 (Currency and Exchanges Act 9 of 1933), regulation 2; SARB Financial Surveillance, Currency and Exchanges Manual for Authorised Dealers, section A.2 (the list of Authorised Dealers) and the Manual for ADLAs. https://www.resbank.co.za/en/home/what-we-do/financial-surveillance","checked_on":null,"read":"document"},{"id":"za-bop-category","applies_to":"payment","answer":"applies","title":"The purpose of the payment, so the bank can report it under a balance of payments category code.","why":"South African banks report every cross-border payment to the SARB's Financial Surveillance department with a category code.","source":"https://www.resbank.co.za/content/dam/sarb/what-we-do/financial-surveillance/authorised-dealers/Manual%20Section%20B.3%20-%20CATEGORIES.pdf","checked_on":"2026-10-19","read":"search"},{"id":"za-import-invoice","applies_to":"payment","answer":"applies","title":"The supplier's commercial invoice, and the transport documents where the goods have shipped. The invoice number goes on the payment.","why":"Import payments are made against the invoice; the invoice number given to the bank must match the customs declaration.","source":"https://www.resbank.co.za/content/dam/sarb/what-we-do/financial-surveillance/financial-surveillance-documents/2026/Currency%20and%20Exchanges%20Manual%20for%20Authorised%20Dealers.pdf","checked_on":"2026-10-19","read":"search"},{"id":"za-customs-clearance","applies_to":"payment","answer":"applies","title":"Above R50,000: the customs clearance documents, once the goods have cleared.","why":"The SARB's import verification asks the importer to show customs clearance for payments above R50,000.","source":"https://www.resbank.co.za/en/home/what-we-do/financial-surveillance/FinSurvFAQ","checked_on":"2026-10-19","read":"search"}],"findings":[{"id":"f_routes","statement":"10 routes known for ZAR to USD: 2 with a figure, 8 without one.","evidence":["ev_opt_1","ev_opt_2"],"basis":"count"},{"id":"f_cost_range","statement":"Against the official rate, complete costs on record run from 131 bps (opt_2, indicative) to 131 bps (opt_2, indicative).","evidence":["ev_reference","ev_opt_2","ev_opt_2"],"basis":"indicative"},{"id":"f_no_executable","statement":"No executable quote is on record for this pair and size: every figure here is published, indicative or observed, and must be confirmed by the provider or bank before paying.","evidence":[],"basis":"absence"},{"id":"f_requirements","statement":"4 requirements on record for this payment (each with its source).","evidence":[],"basis":"published"}],"evidence":{"ev_reference":{"type":"reference","what":"ZAR/USD 0.060109683094374325 on 2026-11-02 (European Central Bank, Narodowy Bank Polski, Czech National Bank, South African Reserve Bank)","at":"2026-11-02T00:00:00.000Z"},"ev_opt_1":{"type":"published","what":"Route A · your bank (Authorised Dealer): published board rate (TT) R16.7989 per USD, read 2026-11-03 03:07 UTC, 98 bps over the official rate; no 2026 tariff for this bank read: the transfer fee is not in this figure, so 97 bps is a floor, not the cost; the sheet states no date; the bank's board rate; corporates often negotiate a tighter rate; receiving and intermediary charges not included (no source states them)","at":"2026-11-03T03:07:00.000Z"},"ev_opt_2":{"type":"indicative","what":"Route B · your bank (Authorised Dealer): published board rate (Standard Bank's opening indication rate, published 2 Nov 16:00 SAST (indicative)) R16.7982 per USD, read 2026-11-03 03:07 UTC, 97 bps over the official rate; fee R882 (the bank's published 2026 guide, page 3, outward foreign payment, electronic channel, figures confirmed in the PDF); the bank's board rate; corporates often negotiate a tighter rate; receiving and intermediary charges not included (no source states them)","at":"2026-11-03T03:07:00.000Z"}},"changes":{"previous_assessment_id":"ra_059978001202c77752be","previous_as_of":"2026-11-02T04:18:34.816Z","items":[{"what":"Official rate moved 18 bps (2026-10-30 to 2026-11-02).","field":"reference.rate","from":0.05999899516183399,"to":0.060109683094374325,"material":false},{"what":"Lowest complete cost on the ad_wire rail: 170 to 131 bps.","field":"rails.ad_wire.min_cost_bps","from":170,"to":131,"material":true},{"what":"Source \"public comparison feed at 180,000 ZAR\": empty to not asked.","field":"sources.public comparison feed at 180,000 ZAR","from":"empty","to":null,"material":false},{"what":"Source \"public comparison feed at 250,000 ZAR\": not asked to empty.","field":"sources.public comparison feed at 250,000 ZAR","from":null,"to":"empty","material":false}],"note":"1 material of 4 changes since 2026-11-02T04:18:34.816Z."},"data_quality":{"stale":["A bank sheet used here states no date (the sheet states no date: read 2026-11-03 03:07 UTC (0.9 h ago); that it is today's is not confirmed)."],"contradictions":[],"missing":["a provider's public quote: upstream_rejected.\""],"indicative_only":false,"evidence_types":["indicative","published"]},"unknowns":["a provider's public quote: upstream_rejected.\"","Requirements beyond those on record here: SwapEazi lists the rules it tracks for this corridor, not every rule that may apply (receiving-country rules especially).","The payer's own negotiated terms with its bank or provider.","Receiving and correspondent bank charges, unless a route states them.","An executable price for this payment.","A priced stablecoin off-ramp into USD: No off-ramp to USD and no verified USD stablecoin are on record. Pay USDC to the recipient's wallet, or use a bank route."],"sources":[{"source":"a provider's public quote","kind":"public_quote","status":"failed","reason":"upstream_rejected.\"","rows":0,"read_at":"2026-11-03T03:59:36.052Z","freshness":"fresh","age_hours":0},{"source":"public comparison feed at 250,000 ZAR","kind":"comparison_feed","status":"empty","reason":"the feed lists no provider for this pair at this size","rows":0,"read_at":"2026-11-03T03:59:36.211Z","freshness":"fresh","age_hours":0},{"source":"public comparison feed at 10,000 ZAR","kind":"comparison_feed","status":"empty","reason":"the feed lists no provider for this pair at this size","rows":0,"read_at":"2026-11-03T03:59:36.213Z","freshness":"fresh","age_hours":0},{"source":"collected comparison prices","kind":"collected_feed","status":"empty","reason":"none stored for ZAR to USD: the hourly collector has had no usable reply for this pair","rows":0,"read_at":"2026-11-03T03:59:36.052Z","freshness":"fresh","age_hours":0},{"source":"quotes sent by providers","kind":"provider_quote","status":"empty","reason":"no provider has sent a live quote for this pair","rows":0,"read_at":"2026-11-03T03:59:36.052Z","freshness":"fresh","age_hours":0},{"source":"South African banks' published board rates","kind":"statutory","status":"priced","reason":"2 banks publish a USD selling rate (read 2026-11-03 03:07 UTC); the bank's board rate; corporates often negotiate a tighter rate","rows":2,"read_at":"2026-11-03T03:59:36.052Z","freshness":"fresh","age_hours":0},{"source":"measured payments","kind":"measured_payments","status":"empty","reason":"no payment on this pair has been recorded as landed yet","rows":0,"read_at":"2026-11-03T03:59:36.052Z","freshness":"fresh","age_hours":0}],"limitations":["SwapEazi does not hold or move money; the payer's bank, provider or wallet executes. No route is ranked as advice.","Figures are read at the time shown and can change; only the provider's or bank's confirmation shows what a payment costs.","Route names are masked on the free lookup; a pilot key shows them."],"record":{"content_sha256":"sha256:1759f1fe4788c3c5b3791c051f3882fc473cd0229ee18df34045c397153c2b21","signed":false,"note":"A content hash of every field above (canonical JSON): recompute it to verify the record is unchanged. It is not a signature.","retrieve":"GET /api/v1/route-assessments/ra_1759f1fe4788c3c5b379","stored":true},"snapshot":{"assessment_id":"ra_1759f1fe4788c3c5b379","as_of":"2026-11-03T03:59:36.052Z","reference_rate":0.060109683094374325,"reference_date":"2026-11-02","rails":{"ad_wire":{"priced":2,"min_cost_bps":131,"evidence":["indicative","published"]}},"unpriced_routes":8,"requirements":["za-authorised-dealer","za-bop-category","za-customs-clearance","za-import-invoice"],"sources":{"a provider's public quote":"failed","public comparison feed at 250,000 ZAR":"empty","public comparison feed at 10,000 ZAR":"empty","collected comparison prices":"empty","quotes sent by providers":"empty","South African banks' published board rates":"priced","measured payments":"empty"},"quality":{"stale":1,"contradictions":0,"indicative_only":false}}}