CancelInvoice API Operation

APIDeprecatedLast updated: October 12th 2021, @ 6:58:00 pm


Important: The Adaptive Platform API is not available for new integrations. PayPal provides this documentation to support existing integrations.

Cancels an invoice.

Example

This example calls CancelInvoice to cancel an invoice. PayPal can notify the payer that the invoice has been canceled.

curl https://sandbox.svcs.paypal.com/Invoice/CancelInvoice \ -s \ --insecure \ -H "X-PAYPAL-SECURITY-USERID: Your_API_username" \ -H "X-PAYPAL-SECURITY-PASSWORD: Your_API_password" \ -H "X-PAYPAL-SECURITY-SIGNATURE: Your_API_signature" \ -H "X-PAYPAL-REQUEST-DA TA-FORMAT: NV" \ -H "X-PAYPAL-RESPONSE-DATA-FORMAT: NV" \ -H "X-PAYPAL-APPLICATION-ID: Your_AppID"  \ -d requestEnvelope.errorLanguage=en_US \ -d invoiceID=INV2-RVY9-UWTW-64HZ-BR9W" \ -d subject=Cancel+it \ -d noteForPayer=Cancel+it+now \ -d sendCopyToMerchant=true

CancelInvoiceRequest Message

Use the CancelInvoiceRequest message to cancel an invoice.

RequestEnvelope Fields

Field Description
detailLevel common:DetailLevelCode (Optional) Level of detail required by the client application pertaining to a particular data component. The detail level is specified as a detail level code, which has all the enumerated values of the detail level for the component. By default, the detail level code is ReturnAll, which provides the maximum level of detail.
errorLanguage xs:string (Required) RFC 3066 language in which error messages are returned; by default it is en_US, which is the only language currently supported.

CancelInvoiceRequest Fields

Field Description
requestEnvelope common:requestEnvelope (Required) Information common to each API operation, such as the language in which an error message is returned.
invoiceID xs:string (Optional) ID of the invoice.
subject xs:string (Optional) Subject of the cancelation notification.
noteForPayerxs:string (Optional) Note to send payer within the cancelation notification.
sendCopyToMerchantxs:boolean (Optional) Indicates whether to send a copy of the cancelation notification to the merchant. Also see the description of the sendPayerNotification field, below. The sendCopyToMerchant field can be one of the following values:
  • false — Do not send a copy of the cancelation notification to the merchant (default).
  • true — Send a copy of the cancelation notification to the merchant.
sendPayerNotificationxs:boolean (Optional) Indicates whether a cancelation email is sent to the payer when the invoice is canceled. The sendPayerNotification field can contain one of the following values:
  • true — The payer is notified of the invoice cancelation (the default).
  • false — The payer is not notified of the invoice cancelation. Additionally, the value specified in sendCopyToMerchant is ignored.

CancelInvoiceResponse Message

Use the CancelInvoiceResponse message to cancel an invoice.

ResponseEnvelope Fields

Field Description
ack common:AckCode Acknowledgment code. Value is:
  • Success — The operation completed successfully.
  • Failure — The operation failed.
  • SuccessWithWarning — The operation completed successfully; however, there is a warning message.
  • FailureWithWarning — The operation failed with a warning message.
build xs:string Build number. It is used only by PayPal Merchant Technical Support.
correlationId xs:string Correlation identifier. It is a 13-character, alphanumeric string (for example, db87c705a910e) that is used only by PayPal Merchant Technical Support. Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues.
timestamp xs:datetime Date on which the response was sent, for example: 2012-04-02T22:33:35.774-07:00 Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues.

CancelInvoiceResponse Fields

Field Description
responseEnvelope common:ResponseEnvelope Common response information, including a timestamp and the response acknowledgment status.
invoiceID xs:string ID of the canceled invoice.
invoiceNumber xs:string Number of the canceled invoice.
invoiceURL xs:string URL location where merchants view the invoice details.

PPFault Message

The PPFaultMessage returns ErrorData and the ResponseEnvelope information to your application if an error occurs.

FaultMessage Fields

Field Description
error common:ErrorData Detailed error information.
responseEnvelope common:ResponseEnvelope Common response information, including a timestamp and the response acknowledgment status.

ErrorData Fields

Field Description
category common:ErrorCategory The location where the error occurred. Value is:
  • System — The system encountered errors; try again
  • Application — The application encountered errors; try again
  • Request — The request was incorrect
domain xs:string The domain to which this service belongs.
errorId xs:long A 6-digit number that uniquely identifies a particular error.
exceptionID This field is not used.
message xs:string A description of the error.
parameter common:ErrorParameter Represents contextual information about the error.
severity common:ErrorSeverity The severity of the error encountered. Value is:
  • Error — Processing of the request was interrupted
  • Warning — Processing of the request was completed
subdomain This field is not used.

ResponseEnvelope Fields

Field Description
ack common:AckCode Acknowledgment code. Value is:
  • Success — The operation completed successfully.
  • Failure — The operation failed.
  • SuccessWithWarning — The operation completed successfully; however, there is a warning message.
  • FailureWithWarning — The operation failed with a warning message.
build xs:string Build number. It is used only by PayPal Merchant Technical Support.
correlationId xs:string Correlation identifier. It is a 13-character, alphanumeric string (for example, db87c705a910e) that is used only by PayPal Merchant Technical Support.
Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues.
timestamp xs:datetime Date on which the response was sent, for example: 2012-04-02T22:33:35.774-07:00
Note: You must log and store this data for every response you receive. PayPal Technical Support uses the information to assist with reported issues.

CancelInvoice API Errors

CodeMessageAdditional Information
520002Internal error.
520003Authentication failed. API credentials are incorrect.
520009Account is restricted.
550026Partner did not create the invoice but attempted to access or modify it; a merchant's invoice can be accessed or modified only by the partner who created it.
550027Merchant cannot access or modify an invoice they did not create; an invoice can only be accessed or modified by the party who created it.
570058Authentication failed. User account is not confirmed.
570061Invoice cannot be canceled since it has already been paid.
570062The invoice has already been canceled.
570063A draft invoice cannot be canceled.
570099Invoice cannot be canceled since it has already been refunded.
571001The specified invoice ID is invalid because the invoice has already been deleted.
580022This error code corresponds to validation error messages that deal with errors of supplied parameters.
580047Invoice does not exist.