Parity Groups API
API reference for managing parity groups and country assignments.
Manage parity groups (tiers) and their country assignments via the API.
List Parity Groups
Section titled “List Parity Groups”GET /v1/parity-groupscurl -X GET https://api.gopaylocal.com/v1/parity-groups \ -H "Authorization: Bearer gpl_sk_live_xyz789"const res = await fetch('https://api.gopaylocal.com/v1/parity-groups', { headers: { 'Authorization': 'Bearer gpl_sk_live_xyz789' },});const { data } = await res.json();Response:
{ "data": [ { "id": "pg_tier1", "name": "Tier 1 - Full Price", "discount": 0, "countries": ["US", "GB", "CA", "AU", "DE", "FR", "JP", "SG"], "createdAt": "2025-01-15T10:30:00Z" }, { "id": "pg_tier2", "name": "Tier 2 - Slight Discount", "discount": 15, "countries": ["ES", "PT", "KR", "IL", "IT", "CZ"], "createdAt": "2025-01-15T10:30:00Z" } ]}Get Parity Group
Section titled “Get Parity Group”GET /v1/parity-groups/:idCreate Parity Group
Section titled “Create Parity Group”POST /v1/parity-groupscurl -X POST https://api.gopaylocal.com/v1/parity-groups \ -H "Authorization: Bearer gpl_sk_live_xyz789" \ -H "Content-Type: application/json" \ -d '{ "name": "Tier 3 - Moderate Discount", "discount": 30, "countries": ["BR", "MX", "TR", "TH", "PL", "AR", "ZA"] }'const res = await fetch('https://api.gopaylocal.com/v1/parity-groups', { method: 'POST', headers: { 'Authorization': 'Bearer gpl_sk_live_xyz789', 'Content-Type': 'application/json', }, body: JSON.stringify({ name: 'Tier 3 - Moderate Discount', discount: 30, countries: ['BR', 'MX', 'TR', 'TH', 'PL', 'AR', 'ZA'], }),});Request Body:
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Tier name |
discount | number | Yes | Discount percentage (0-100) |
countries | string[] | Yes | ISO 3166-1 alpha-2 country codes |
Update Parity Group
Section titled “Update Parity Group”PATCH /v1/parity-groups/:idDelete Parity Group
Section titled “Delete Parity Group”DELETE /v1/parity-groups/:idCountries in the deleted group are moved to the default (0% discount) group.
Assign Countries
Section titled “Assign Countries”POST /v1/parity-groups/:id/countriesAdd countries to a parity group. Countries are automatically removed from their previous group.
curl -X POST https://api.gopaylocal.com/v1/parity-groups/pg_tier3/countries \ -H "Authorization: Bearer gpl_sk_live_xyz789" \ -H "Content-Type: application/json" \ -d '{ "countries": ["CO", "EG", "NG"] }'Remove Countries
Section titled “Remove Countries”DELETE /v1/parity-groups/:id/countriescurl -X DELETE https://api.gopaylocal.com/v1/parity-groups/pg_tier3/countries \ -H "Authorization: Bearer gpl_sk_live_xyz789" \ -H "Content-Type: application/json" \ -d '{ "countries": ["CO"] }'Seed Defaults
Section titled “Seed Defaults”POST /v1/parity-groups/seedReset all parity groups to the default 5-tier setup. This deletes all existing groups and creates new ones.
curl -X POST https://api.gopaylocal.com/v1/parity-groups/seed \ -H "Authorization: Bearer gpl_sk_live_xyz789"await fetch('https://api.gopaylocal.com/v1/parity-groups/seed', { method: 'POST', headers: { 'Authorization': 'Bearer gpl_sk_live_xyz789' },});