MngUpdateCashierCustomerProviderOverride¶
Creates or updates a customer-level Cashier provider override.
CRM can use this method from a customer card to manually allow or deny a payment provider/method for that customer. This is the manual override layer above default provider eligibility rules.
Access¶
SESSION_MANAGER, SESSION_ADMIN, SESSION_DEALER,
SESSION_CRM_MANAGER, SESSION_CRM_ADMIN.
Request Parameters¶
| Name | Type | Required | Description |
|---|---|---|---|
id |
int | No | Existing override id. If omitted or 0, a new override is created |
customer_id |
int | Yes | Target customer id |
brand |
string | Yes | Brand scope |
provider |
string | Yes | Provider code |
provider_config_id |
int | No | Exact provider config id. If omitted, Cashier resolves by provider/method/brand |
method |
string | No | Provider method marker |
mode |
int | No | 0 allow, 1 deny. Default is allow |
min_amount |
double | No | Override minimum amount, 0 keeps provider config value |
max_amount |
double | No | Override maximum amount, 0 keeps provider config value |
enabled |
int | No | 1 enabled, 0 disabled |
reason |
string | No | Internal reason code |
comment |
string | No | Manager comment |
expires_time |
int | No | Optional expiration timestamp, 0 means no expiration |
Request Example¶
{
"command": "MngUpdateCashierCustomerProviderOverride",
"extID": "1",
"data": {
"customer_id": 5,
"brand": "ion4",
"provider_config_id": 1,
"provider": "stripe",
"method": "card",
"mode": 0,
"min_amount": 25.0,
"max_amount": 10000.0,
"enabled": 1,
"reason": "VIP_ALLOW",
"comment": "Manual allow from customer card",
"expires_time": 0
}
}
Response¶
Returns the saved override.
{
"override": {
"id": 3,
"customer_id": 5,
"brand": "ion4",
"provider_config_id": 1,
"provider": "stripe",
"method": "card",
"mode": 0,
"min_amount": 25.0,
"max_amount": 10000.0,
"enabled": 1,
"reason": "VIP_ALLOW",
"comment": "Manual allow from customer card",
"expires_time": 0,
"created_time": 1779270000,
"updated_time": 1779270000
}
}
Notes¶
mode = 0can make a provider visible to a customer even if normal country/currency rules do not match.mode = 1hides the provider/method for that customer.- Overrides are applied from Cashier cache immediately and synchronized to
bases/cashier.dbthrough the Cashier DB queue. - Overrides do not bypass hard runtime checks: provider module loaded, provider config enabled, brand match, account ownership, and account enabled.