{"success":true,"platform":"StudentPay NZ Developer Platform","platform_code":"nz","country":"NZ","environment":"sandbox","source":"STUDENTPAY_ENV","host":"sandbox-api.studentpay.co.nz","api_base_url":"https://sandbox-api.studentpay.co.nz","v1_base_url":"https://sandbox-api.studentpay.co.nz/v1","dda_setup_base_url":"https://sandbox-api.studentpay.co.nz/api/dd-setup","payment_processor":"gocardless","payment_processor_status":"configured","salesforce_login_url_hint":"https://test.salesforce.com or https://<domain>--<sandbox>.sandbox.my.salesforce.com","salesforce_org_guard":"SF_EXPECTED_ORG_ID","salesforce_org_country_guard":"sf_expected_org_id","separated_credentials":["provider_api_keys","salesforce","dda_jwt_secret","webhook_secret","provider_integration_config","agreement_records","gocardless"],"readiness":{"ready_for_api_calls":true,"missing_required":[],"missing_optional":["DDA_SETUP_BASE_URL","ALLOWED_ORIGINS","GOCARDLESS_API_BASE_URL","PINCH_CLIENT_ID","PINCH_CLIENT_SECRET","PINCH_PUBLISHABLE_KEY","WEBHOOK_SECRET","WEBHOOK_DESTINATION_URL","PROVIDER_API_KEYS"],"configured_provider_api_keys":["SANDBOX_DEMO","BELA_NZ"],"blockers":[],"webhook_destinations_configured":false,"salesforce_configured":true,"payment_processor_configured":true,"gocardless_webhook_configured":true,"dda_token_configured":true,"dda_setup_configured":true,"provider_api_keys_configured":true},"notes":["StudentPay NZ sandbox and production are separate Developer Platform environments.","Prefer STUDENTPAY_ENV; sandbox projects must set STUDENTPAY_ENV=sandbox.","Australian StudentPay API hostnames (.com.au) are rejected by this repository.","Target payment processor is GoCardless. Phase 5 implements NZ mandate setup via Billing Requests (becs_nz) when configured.","Production readiness requires live GoCardless (GOCARDLESS_ACCESS_TOKEN + GOCARDLESS_ENVIRONMENT=live + GOCARDLESS_WEBHOOK_SECRET). Sandbox may omit GoCardless.","Phase 6 GoCardless webhooks: POST /api/webhooks/gocardless (signature-verified). Authorised only when mandate.status is active.","Pinch is not part of the NZ architecture and is not required for readiness.","Salesforce org identity is fail-closed via SF_EXPECTED_ORG_ID after JWT auth.","NZ ledger objects (Charge_Schedule__c, Payment_Attempt__c, Payment_Allocation__c, Account_Transaction__c) are Salesforce-owned — not written by checkout API.","Create-checkout can mint DDA setup tokens; confirmation requires DIRECT_DEBIT_SETUP_COMPLETE (BR fulfilled + mandate pending_submission|submitted|active), not Authorised.","Signed webhooks deliver when WEBHOOK_SECRET and WEBHOOK_DESTINATION_URL are set."],"request_id":"req_89c5c79498bc793327011630"}