-
API Reference
- AcceptOrder
- AcceptQuote
- ActivateModule
- AddAnnouncement
- AddBannedIp
- AddBillableItem
- AddCancelRequest
- AddClient
- AddClientNote
- AddContact
- AddCredit
- AddInvoicePayment
- AddOrder
- AddPayMethod
- AddProduct
- AddProjectMessage
- AddProjectTask
- AddTicketNote
- AddTicketReply
- AddTransaction
- AddUser
- AffiliateActivate
- ApplyCredit
- BlockTicketSender
- CancelOrder
- CapturePayment
- CloseClient
- CreateClientInvite
- CreateInvoice
- CreateOAuthCredential
- CreateOrUpdateTLD
- CreateProject
- CreateQuote
- CreateSsoToken
- DeactivateModule
- DecryptPassword
- DeleteAnnouncement
- DeleteClient
- DeleteContact
- DeleteOAuthCredential
- DeleteOrder
- DeletePayMethod
- DeleteProjectTask
- DeleteQuote
- DeleteTicket
- DeleteTicketNote
- DeleteTicketReply
- DeleteUserClient
- DomainGetLockingStatus
- DomainGetNameservers
- DomainGetWhoisInfo
- DomainRegister
- DomainRelease
- DomainRenew
- DomainRequestEPP
- DomainToggleIdProtect
- DomainTransfer
- DomainUpdateLockingStatus
- DomainUpdateNameservers
- DomainUpdateWhoisInfo
- DomainWhois
- EncryptPassword
- EndTaskTimer
- FraudOrder
- GenInvoices
- GetActivityLog
- GetAdminDetails
- GetAdminUsers
- GetAffiliates
- GetAnnouncements
- GetAutomationLog
- GetCancelledPackages
- GetClientGroups
- GetClientPassword
- GetClients
- GetClientsAddons
- GetClientsDetails
- GetClientsDomains
- GetClientsProducts
- GetConfigurationValue
- GetContacts
- GetCredits
- GetCurrencies
- GetEmailTemplates
- GetEmails
- GetHealthStatus
- GetInvoice
- GetInvoices
- GetModuleConfigurationParameters
- GetModuleQueue
- GetOrderStatuses
- GetOrders
- GetPayMethods
- GetPaymentMethods
- GetPermissionsList
- GetProducts
- GetProject
- GetProjects
- GetPromotions
- GetQuotes
- GetRegistrars
- GetServers
- GetStaffOnline
- GetStats
- GetSupportDepartments
- GetSupportStatuses
- GetTLDPricing
- GetTicket
- GetTicketAttachment
- GetTicketCounts
- GetTicketNotes
- GetTicketPredefinedCats
- GetTicketPredefinedReplies
- GetTickets
- GetToDoItemStatuses
- GetToDoItems
- GetTransactions
- GetUserPermissions
- GetUsers
- ListOAuthCredentials
- LogActivity
- MergeTicket
- ModuleChangePackage
- ModuleChangePw
- ModuleCreate
- ModuleCustom
- ModuleSuspend
- ModuleTerminate
- ModuleUnsuspend
- OpenTicket
- OrderFraudCheck
- PendingOrder
- ResetPassword
- SendAdminEmail
- SendEmail
- SendQuote
- SetConfigurationValue
- StartTaskTimer
- TriggerNotificationEvent
- UpdateAdminNotes
- UpdateAnnouncement
- UpdateClient
- UpdateClientAddon
- UpdateClientDomain
- UpdateClientProduct
- UpdateContact
- UpdateInvoice
- UpdateModuleConfiguration
- UpdateOAuthCredential
- UpdatePayMethod
- UpdateProject
- UpdateProjectTask
- UpdateQuote
- UpdateTicket
- UpdateTicketReply
- UpdateToDoItem
- UpdateTransaction
- UpdateUser
- UpdateUserPermissions
- UpgradeProduct
- ValidateLogin
- WhmcsDetails
AddCredit
Adds credit to a given client.
Request Parameters
Parameter | Type | Description | Required |
---|---|---|---|
action | string | “AddCredit” | Required |
clientid | int | Required | |
description | string | Admin only notes for credit justification | Required |
amount | float | The amount of credit to add or remove. Must be a positive value. | Required |
date | string | The date the credit was added. YYYY-mm-dd format. | Optional |
adminid | int | The active admin id to be associated with the credit record. Defaults to current admin. | Optional |
type | string | Whether to add or remove credit. One of ‘add’ or ‘remove’ | Optional |
Response Parameters
Parameter | Type | Description |
---|---|---|
result | string | The result of the operation: success or error |
newbalance | float | The new total credit balance |
Example Request (CURL)
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.example.com/includes/api.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
http_build_query(
array(
'action' => 'AddCredit',
// See https://developers.whmcs.com/api/authentication
'username' => 'IDENTIFIER_OR_ADMIN_USERNAME',
'password' => 'SECRET_OR_HASHED_PASSWORD',
'clientid' => '1',
'description' => 'Adding funds via api',
'amount' => '12.34',
'adminid' => '1',
'responsetype' => 'json',
)
)
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
Example Request (Local API)
$command = 'AddCredit';
$postData = array(
'clientid' => '1',
'description' => 'Adding funds via api',
'amount' => '12.34',
'adminid' => '1',
);
$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later
$results = localAPI($command, $postData, $adminUsername);
print_r($results);
Example Response JSON
{
"result": "success",
"newbalance": "123.45"
}
Error Responses
Possible error condition responses include:
- Type can only be add or remove
- Client ID Not Found
- Admin ID Not Found
- No Amount Provided
- Amount must be in decimal format: ### or ###.##
- Date Format is not Valid
Version History
Version | Changelog |
---|---|
1.0 | Initial Version |