# BAUpdate API operation (NVP) (/api/nvp-soap/ba-update-nvp)



> **Note:** **Important:** NVP/SOAP is a legacy integration method. We accept new integrations and support existing integrations, but there are newer solutions. If you're starting an integration, [we recommend our latest solutions](/).

Updates or deletes a billing agreement.

## BAUpdate request message [#baupdate-request-message]

### BAUpdate request fields [#baupdate-request-fields]

| Field<br />                         | Description<br />                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `METHOD`<br />                      | *(Required)* Must be `BillAgreementUpdate`.<br />                                                                                                                                                                                                                                                                                                                                                                                                 |
| `REFERENCEID`<br />                 | *(Required)* An ID, such as a billing agreement ID or a reference transaction ID that is associated with a billing agreement.<br />                                                                                                                                                                                                                                                                                                               |
| `BILLINGAGREEMENTSTATUS`<br />      | *(Optional)* Use to cancel a billing agreement. To cancel a billing agreement, pass the value `Canceled`.<br />                   > **Note:** &#x2A;*Note:** If you do not pass the value `Canceled`, `BAUpdate` returns the buyer's latest billing address.                                                                                                                                                                                      |
| `BILLINGAGREEMENTDESCRIPTION`<br /> | *(Optional)* Description of goods or services associated with the billing agreement. This field is required for each recurring payment billing agreement. PayPal recommends that the description contain a brief summary of the billing agreement terms and conditions. For example, buyer will be billed at "9.99 per month for 2 years."<br />                  Character length and limitations: 127 single-byte alphanumeric characters<br /> |
| `BILLINGAGREEMENTCUSTOM`<br />      | *(Optional)* Custom annotation field for your own use.<br />                   > **Note:** &#x2A;*Note:** For recurring payments, this field is ignored.                  Character length and limitations: 256 single-byte alphanumeric characters<br />                                                                                                                                                                                         |

## BAUpdate response message [#baupdate-response-message]

### BAUpdate response fields [#baupdate-response-fields]

| Field<br />                         | Description<br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `BILLINGAGREEMENTID`<br />          | Identification number of the billing agreement. When the buyer approves the billing agreement, it remains valid until canceled by the buyer.<br /><br />                  > **Note:** &#x2A;*Note:** For [reference transactions](/archive/express-checkout/integration-guide/ECReferenceTxns/), you can pass a billing agreement ID in the `ReferenceID` request field. Also, a billing agreement ID is returned in the transaction response when the transaction references a billing agreement. <br /><br />Character length and limitations: 19 single-byte alphanumeric characters                                                                                                                                                                                                                                            |
| `BILLINGAGREEMENTDESCRIPTION`<br /> | Description of goods or services associated with the billing agreement. This field is required for each recurring payment billing agreement.<br />                  Character length and limitations: 127 single-byte alphanumeric characters<br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `BILLINGAGREEMENTCUSTOM`<br />      | Custom annotation field for your own use.<br />                  Character length and limitations: 256 single-byte alphanumeric characters<br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `BILLINGAGREEMENTSTATUS`<br />      | *(Optional)* Use to cancel a billing agreement. To cancel a billing agreement, pass the value `Canceled`.<br />                   > **Note:** &#x2A;*Note:** If you do not pass the value `Canceled`, `BAUpdate` returns the buyer's latest billing address.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `BILLINGAGREEMENTMAX`<br />         | Maximum amount for this billing agreement.<br />                   > **Note:** &#x2A;*Note:** This field only has a value if the buyer signed up for PayPal using Preapproved Payments; it is included for backwards compatibility with deprecated systems.                  Character length and limitations: Value is typically a positive number that cannot exceed nine (9) digits in SOAP request/response for USD, CLP, or JPY or the [per transaction limit for the currency](/api/nvp-soap/currency-codes/). It includes no currency symbol. Most currencies require two decimal places. The decimal separator must be a period (`.`), and the optional thousands separator must be a comma (`,`). Some currencies do not allow decimals. For details, see the [currency codes page](/api/nvp-soap/currency-codes/).<br /> |
| `BILLINGADDRESS`<br />              | Customer's billing address. If the customer has stored a credit card in his/her account then the billing address of the credit card is returned; otherwise the customer's primary address is returned.<br />                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

### Payer information fields [#payer-information-fields]

| Field                 | Description                                                                                                                                                                                    |
| --------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `EMAIL`<br />         | Email address of buyer.<br />                  Character length and limitations: 127 single-byte characters<br />                                                                              |
| `PAYERID`<br />       | Unique PayPal Customer Account identification number.<br />                  Character length and limitations: 17 single-byte alphanumeric characters<br />                                    |
| `PAYERSTATUS`<br />   | Status of buyer. It is one of the following values:<br />                  `verified``unverified`                 Character length and limitations: 10 single-byte alphabetic characters<br /> |
| `COUNTRYCODE`<br />   | Buyer's country of residence in the form of ISO standard 3166 2-character country codes.<br />                  Character length and limitations: 2 single-byte characters<br />               |
| `PAYERBUSINESS`<br /> | Buyer's business name.<br />                  Character length and limitations: 127 single-byte characters<br />                                                                               |

### Payer name fields [#payer-name-fields]

| Field<br />        | Description<br />                                                                                             |
| ------------------ | ------------------------------------------------------------------------------------------------------------- |
| `SALUTATION`<br /> | Buyer's salutation.<br />                  Character length and limitations: 20 single-byte characters<br />  |
| `FIRSTNAME`<br />  | Buyer's first name.<br />                  Character length and limitations: 64 single-byte characters<br />  |
| `MIDDLENAME`<br /> | Buyer's middle name.<br />                  Character length and limitations: 64 single-byte characters<br /> |
| `LASTNAME`<br />   | Buyer's last name.<br />                  Character length and limitations: 64 single-byte characters<br />   |
| `SUFFIX`<br />     | Buyer's suffix.<br />                  Character length and limitations: 12 single-byte characters<br />      |

### Bill to address fields [#bill-to-address-fields]

| Field               | Description                                                                                                                                           |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `BILLINGNAME`<br /> | Billing name associated with this billing address.<br />                  Character length and limitations: 32 single-byte characters<br />           |
| `STREET`<br />      | First billing street address.<br />                  Character length and limitations: 100 single-byte characters<br />                               |
| `STREET2`<br />     | Second billing street address.<br />                  Character length and limitations: 100 single-byte characters<br />                              |
| `CITY`<br />        | Name of billing city.<br />                  Character length and limitations: 40 single-byte characters<br />                                        |
| `STATE`<br />       | Billing state or province. Required for U.S. addresses only.<br />                  Character length and limitations: 40 single-byte characters<br /> |
| `ZIP`<br />         | U.S. billing ZIP code or other country-specific postal code.<br />                  Character length and limitations: 20 single-byte characters<br /> |
| `COUNTRYCODE`<br /> | Billing country code.<br />                  Character length and limitations: 2 single-byte characters<br />                                         |

### PayeeInfoType fields [#payeeinfotype-fields]

Information about the merchant or the owner of the billing agreement.

| Field              | Description                                                                                                                                                |
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `PAYEEEMAIL`<br /> | Email address of the merchant or owner of the billing agreement.<br />                  Character length and limitations: 127 single-byte characters<br /> |
| `PAYEEID`<br />    | Unique merchant account identification number.<br />                  Character length and limitations: 17 single-byte alphanumeric characters<br />       |

## Additional information [#additional-information]

* [API error codes](/api/nvp-soap/errors/)
