import requests
url = "https://api.paywise.de/partner/v2/companies/{id}/"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.paywise.de/partner/v2/companies/{id}/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.patch("https://api.paywise.de/partner/v2/companies/{id}/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{}")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.paywise.de/partner/v2/companies/{id}/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
request.AddJsonBody("{}", false);
var response = await client.PatchAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request PATCH \
--url https://api.paywise.de/partner/v2/companies/{id}/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'{
"address": {
"city": "Berlin",
"country": "DE",
"postal_code": "10115",
"street": "Example Avenue 5"
},
"case_access": "available",
"case_submission_readiness": {
"issues": [],
"ready": true
},
"created_at": "2026-07-18T10:00:00Z",
"customer_number": "5G0123",
"default_claim_type": "H11",
"external_reference": "crm-4711",
"id": "12000000-0000-4000-8000-000000000001",
"legal_form": "gmbh",
"legal_representatives": [
{
"name": "Taylor Example",
"type": "managing_director"
}
],
"name": "Example Manufacturing GmbH",
"notification_channels": [
{
"notifications": [
"requests_to_client",
"status_updates",
"statements"
],
"type": "email",
"value": "[email protected]"
}
],
"onboarding_mode": "api_only",
"onboarding_status": "confirmation_not_required",
"payout_bank_account": {
"account_holder": "Example Manufacturing GmbH",
"iban": "DE89370400440532013000"
},
"phone": "+49301234567",
"sandbox_origin": "unclassified",
"tax_treatment": "input_tax_deductible",
"updated_at": "2026-07-18T10:00:00Z",
"users": [
{
"created_at": "2026-07-18T10:00:00Z",
"email": "[email protected]",
"first_name": "Taylor",
"id": "13000000-0000-4000-8000-000000000001",
"invite_expires_at": "2026-07-28T10:00:00Z",
"last_name": "Example",
"revocation_reason": "",
"revoked_at": null,
"revoked_by_token_id": null,
"role": "admin",
"sandbox_origin": "unclassified",
"status": "pending_setup",
"updated_at": "2026-07-18T10:00:00Z"
}
],
"vat_number": "DE129273398"
}{
"code": "validation_error",
"detail": "The request contains invalid data.",
"errors": [
{
"code": "invalid",
"field": "users[0].email",
"message": "Enter a valid email address."
}
]
}{
"code": "not_authenticated",
"detail": "Authentication credentials were not provided."
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "not_found",
"detail": "The requested resource was not found."
}{
"code": "<string>",
"detail": "<string>",
"company_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}Update a company
Partially update a managed company. A company disconnected by this partner is inaccessible and returns 404 not_found. An empty or unchanged PATCH is a no-op that leaves updated_at and the ETag untouched. Sending onboarding_mode returns 409 onboarding_mode_immutable.
import requests
url = "https://api.paywise.de/partner/v2/companies/{id}/"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.paywise.de/partner/v2/companies/{id}/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));HttpResponse<String> response = Unirest.patch("https://api.paywise.de/partner/v2/companies/{id}/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{}")
.asString();using RestSharp;
var options = new RestClientOptions("https://api.paywise.de/partner/v2/companies/{id}/");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("Authorization", "Bearer <token>");
request.AddJsonBody("{}", false);
var response = await client.PatchAsync(request);
Console.WriteLine("{0}", response.Content);
curl --request PATCH \
--url https://api.paywise.de/partner/v2/companies/{id}/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'{
"address": {
"city": "Berlin",
"country": "DE",
"postal_code": "10115",
"street": "Example Avenue 5"
},
"case_access": "available",
"case_submission_readiness": {
"issues": [],
"ready": true
},
"created_at": "2026-07-18T10:00:00Z",
"customer_number": "5G0123",
"default_claim_type": "H11",
"external_reference": "crm-4711",
"id": "12000000-0000-4000-8000-000000000001",
"legal_form": "gmbh",
"legal_representatives": [
{
"name": "Taylor Example",
"type": "managing_director"
}
],
"name": "Example Manufacturing GmbH",
"notification_channels": [
{
"notifications": [
"requests_to_client",
"status_updates",
"statements"
],
"type": "email",
"value": "[email protected]"
}
],
"onboarding_mode": "api_only",
"onboarding_status": "confirmation_not_required",
"payout_bank_account": {
"account_holder": "Example Manufacturing GmbH",
"iban": "DE89370400440532013000"
},
"phone": "+49301234567",
"sandbox_origin": "unclassified",
"tax_treatment": "input_tax_deductible",
"updated_at": "2026-07-18T10:00:00Z",
"users": [
{
"created_at": "2026-07-18T10:00:00Z",
"email": "[email protected]",
"first_name": "Taylor",
"id": "13000000-0000-4000-8000-000000000001",
"invite_expires_at": "2026-07-28T10:00:00Z",
"last_name": "Example",
"revocation_reason": "",
"revoked_at": null,
"revoked_by_token_id": null,
"role": "admin",
"sandbox_origin": "unclassified",
"status": "pending_setup",
"updated_at": "2026-07-18T10:00:00Z"
}
],
"vat_number": "DE129273398"
}{
"code": "validation_error",
"detail": "The request contains invalid data.",
"errors": [
{
"code": "invalid",
"field": "users[0].email",
"message": "Enter a valid email address."
}
]
}{
"code": "not_authenticated",
"detail": "Authentication credentials were not provided."
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "not_found",
"detail": "The requested resource was not found."
}{
"code": "<string>",
"detail": "<string>",
"company_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"code": "<string>",
"field": "<string>",
"message": "<string>"
}
]
}Authorizations
Partner API Bearer key: Authorization: Bearer <key>. Keys are created only through authorized portal or staff flows.
Headers
Apply the change only while the current ETag matches one of the supplied validators (or *); otherwise the request fails with 412 precondition_failed and nothing is written.
Path Parameters
UUID of the managed company in this request.
Body
Detail and mutation representation of a Partner-managed company.
Postal address of the company. Supplied address fields update the existing address; omitted fields retain their values. When the company has no address, supply all four fields: street, postal_code, city, and country. Omit the address to preserve it or set null to remove it.
Show child attributes
Show child attributes
Legal basis on which the partner may share this company's data. The declaration is optional here; once recorded, repeating the same value is allowed but replacing it returns 409 data_sharing_basis_already_declared.
not_secret_carrier, self_authorized Default contract or transaction type for new principal claims.
H05- DienstleistungsvertragH43- Warenlieferung/-enH22- MitgliedsbeitragH21- MieteH11- KaufvertragH44- Werkvertrag/WerklieferungsvertragH08- HandwerkerleistungH41- Versicherungsprämie/-beitragH16- Lehrgangs-/UnterrichtskostenH10- HotelkostenH02- Ärztliche oder zahnärztliche LeistungH28- Schadenersatz aus VertragH26- ReparaturleistungH24- Rechtsanwalts-/RechtsbeistandshonorarH06- FrachtkostenH18- Miete für KraftfahrzeugH34- SpeditionskostenH19- Miete für Wohnraum einschl. NebenkostenH42- Versorgungsleistung - Strom, Wasser, Gas, Wärme-H17- Miete für Geschäftsraum einschl. NebenkostenH45- Zeitungs-/ZeitschriftenbezugH37- Ungerechtfertigte BereicherungH29- Schadenersatz aus Unfall/VorfallH01- Anzeigen in Zeitungen u.a.H78- Tierärztliche LeistungH14- LagerkostenH77- KrankentransportkostenH40- Vermittlungs-/MaklerprovisionH15- Leasing/MietkaufH23- PachtH04- DarlehensrückzahlungH20- Mietnebenkosten - auch Renovierungskosten-H79- VerpflegungskostenH75- ReisevertragH33- SchuldanerkenntnisH39- Vergleich, außergerichtlicherH70- KindertagesstättenbeitragH90- Wohngeld/Hausgeld für WohnungseigentümergemeinschaftH09- HeimunterbringungH03- BürgschaftH07- Geschäftsbesorgung durch SelbständigeH12- KontokorrentabrechnungH13- Krankenhauskosten-Pflege/BehandlungH36- Überziehung des BankkontosH61- Wahlleistungen bei stationärer BehandlungH76- Telekommunikationsleistungen
H05, H43, H22, H21, H11, H44, H08, H41, H16, H10, H02, H28, H26, H24, H06, H18, H34, H19, H42, H17, H45, H37, H29, H01, H78, H14, H77, H40, H15, H23, H04, H20, H79, H75, H33, H39, H70, H90, H09, H03, H07, H12, H13, H36, H61, H76 Your identifier for this company, unique within your partner organization. A duplicate returns 409 company_exists with the existing company_id. Set null to clear it; omit it to keep the current value.
1 - 120Permanent public code from GET /legal-forms/, or null when not set. A non-null legal_form is required when legal_representatives is nonempty. On PATCH, omission preserves the current form; it cannot be cleared while retaining representatives. Changes follow the paywise UI identity lock: after transfer for processing, or once company data is complete and a case has been submitted.
People or organizations legally representing the company, up to three, with roles matching legal_form. A nonempty array requires a non-null legal_form, using the stored form when legal_form is omitted. Omit to preserve them; a supplied array replaces them. They cannot be changed once company data submission is complete, even before the first case submission. Maximum 3 entries in the replacement list; exceeding this limit returns 400 validation_error.
Show child attributes
Show child attributes
Registered or trading name of the company. Changes follow the paywise UI identity lock: after transfer for processing, or once company data is complete and a case has been submitted.
1 - 255Company-level email recipients for operational notifications, up to 10. Omit to preserve the recipients; a supplied array replaces them, and [] removes them. After the first case submission, required recipients for requests to client and statements must remain. Maximum 10 recipients in the replacement list; exceeding this limit returns 400 validation_error.
Show child attributes
Show child attributes
Account to which collected funds are transferred. Omit to preserve the current account; before the first case submission, provide an account to replace it or null to remove it. After submission, changes must use the secured payout-account change process in the paywise UI. Resubmitting the unchanged account is allowed.
Show child attributes
Show child attributes
Primary telephone number of the company in E.164 format; null clears it.
1 - 50Company VAT treatment, consistent with the address country. reverse_charge requires vat_number. Changes follow the paywise UI identity lock: after transfer for processing, or once company data is complete and a case has been submitted.
input_tax_deductible, not_input_tax_deductible, reverse_charge, third_country_non_taxable Company VAT identification number. Required when tax_treatment is reverse_charge. Changes follow the paywise UI identity lock: after transfer for processing, or once company data is complete and a case has been submitted.
64Response
Detail and mutation representation of a Partner-managed company.
Whether the partner may operate the Case Management API for this company.
available, unavailable Whether company data is complete enough to submit a case.
Show child attributes
Show child attributes
Time at which the managed company was created.
paywise customer number assigned to the managed company.
Stable identifier for this resource.
Registered or trading name of the company.
255Selected mode for this Partner-company relationship. Read-only after creation.
api_only, web_flow Administrator confirmation status: confirmation_not_required for api_only; confirmation_pending for provisional web_flow; confirmed for confirmed web_flow. Poll this field independently of membership setup or email delivery.
confirmation_not_required, confirmation_pending, confirmed Provenance of this record. sandbox_native — created inside the sandbox and therefore a test resource you fully own. production_mirror — a read-only copy of a production record. unclassified — everything else, including every record in production. Determines what may be changed in the sandbox, so it is published rather than left to guesswork.
production_mirror- Production mirrorsandbox_native- Sandbox nativeunclassified- Unclassified
production_mirror, sandbox_native, unclassified Time at which the managed company was last updated.
Postal address of the company.
Show child attributes
Show child attributes
Default contract or transaction type for new principal claims.
H05- DienstleistungsvertragH43- Warenlieferung/-enH22- MitgliedsbeitragH21- MieteH11- KaufvertragH44- Werkvertrag/WerklieferungsvertragH08- HandwerkerleistungH41- Versicherungsprämie/-beitragH16- Lehrgangs-/UnterrichtskostenH10- HotelkostenH02- Ärztliche oder zahnärztliche LeistungH28- Schadenersatz aus VertragH26- ReparaturleistungH24- Rechtsanwalts-/RechtsbeistandshonorarH06- FrachtkostenH18- Miete für KraftfahrzeugH34- SpeditionskostenH19- Miete für Wohnraum einschl. NebenkostenH42- Versorgungsleistung - Strom, Wasser, Gas, Wärme-H17- Miete für Geschäftsraum einschl. NebenkostenH45- Zeitungs-/ZeitschriftenbezugH37- Ungerechtfertigte BereicherungH29- Schadenersatz aus Unfall/VorfallH01- Anzeigen in Zeitungen u.a.H78- Tierärztliche LeistungH14- LagerkostenH77- KrankentransportkostenH40- Vermittlungs-/MaklerprovisionH15- Leasing/MietkaufH23- PachtH04- DarlehensrückzahlungH20- Mietnebenkosten - auch Renovierungskosten-H79- VerpflegungskostenH75- ReisevertragH33- SchuldanerkenntnisH39- Vergleich, außergerichtlicherH70- KindertagesstättenbeitragH90- Wohngeld/Hausgeld für WohnungseigentümergemeinschaftH09- HeimunterbringungH03- BürgschaftH07- Geschäftsbesorgung durch SelbständigeH12- KontokorrentabrechnungH13- Krankenhauskosten-Pflege/BehandlungH36- Überziehung des BankkontosH61- Wahlleistungen bei stationärer BehandlungH76- Telekommunikationsleistungen
H05, H43, H22, H21, H11, H44, H08, H41, H16, H10, H02, H28, H26, H24, H06, H18, H34, H19, H42, H17, H45, H37, H29, H01, H78, H14, H77, H40, H15, H23, H04, H20, H79, H75, H33, H39, H70, H90, H09, H03, H07, H12, H13, H36, H61, H76 Your own identifier for this company (for example a CRM id). Unique per partner, compared byte-exact after trimming surrounding whitespace (case-sensitive): creating a second company with the same value returns 409 company_exists with the existing company_id. Filter with ?external_reference= on the list endpoint.
120Permanent public code from GET /legal-forms/.
People or organizations legally representing the company.
Show child attributes
Show child attributes
Company-level email recipients for operational notifications.
Show child attributes
Show child attributes
Account to which collected funds are transferred.
Show child attributes
Show child attributes
Primary telephone number of the company in E.164 format; null clears it.
50Company's input-VAT or reverse-charge treatment.
input_tax_deductible- input_tax_deductiblenot_input_tax_deductible- not_input_tax_deductiblereverse_charge- reverse_chargethird_country_non_taxable- third_country_non_taxable
input_tax_deductible, not_input_tax_deductible, reverse_charge, third_country_non_taxable User memberships in the managed company. Each entry identifies a membership and its current onboarding or revocation state.
Show child attributes
Show child attributes
VAT identification number of the company.
64