Deactivate a Merchant

HTTP Request

POST /v2/developers/{developerId}/accounts/{postalReportingNumber}/deactivate

Summary

This operation deactivates an active merchant and starts the process of refunding the merchant’s postage balance. Once deactivated, a merchant can no longer print labels. Refunds to the merchant’s postage account are processed within 30 days. The account remains open for 90 days for any Scan-Based Return labels that get scanned and for any adjustments made through the USPS APV program.

Things to Consider

  1. You must issue this call using the same developer ID that was used to create the merchant’s account.
  2. The merchant’s account must be in the ACTIVE state, as defined by the merchantStatus field in the Merchant Object.
  3. The merchant is uniquely identified by the postalReportingNumber field. Do not use a different field.
  4. This operation is not reversible.

Request URIs

Sandbox: https://api-sandbox.pitneybowes.com/shippingservices/v2/developers/{developerId}/accounts/{postalReportingNumber}/deactivate
Production: https://api.pitneybowes.com/shippingservices/v2/developers/{developerId}/accounts/{postalReportingNumber}/deactivate

Path Parameters

Name Description
developerId
Required. Your Pitney Bowes developer ID. To retrieve your developer ID, log into Developer Hub and click your username and select Profile.
postalReportingNumber Required. The unique ID used to identify the merchant. To retrieve the merchant’s postalReportingNumber, issue the Get All Merchants API call.

Request Headers

Name
Description
Authorization Required. OAuth token generated using the Generate an OAuth Token API.
Content-Type Required. The media type of the request entity. Set this to application/json.
Accept-Language Language and country code. Default: en-US
X-PB-UnifiedErrorStructure Recommended. Set this to true to use the standard error object if an error occurs.

Request Element

Name Data Type Description
reason String Required. The reason for the account closure.

Response Elements

Important

The API returns a Merchant Object. The table below describes all the elements in a Merchant Object. Some fields might not apply to your operation.

Name
Data Type Description
fullName String The merchant’s full name.
email String The merchant’s email address.
registeredDate Number The date the merchant’s account was created, shown as milliseconds since the Unix Epoch. You can convert the date to human-readable form by rounding from milliseconds to seconds and then using the Unix timestamp conversion algorithm, or by using a web site that converts milliseconds since the Epoch, such as https://currentmillis.com.
deactivatedDate Number

For an inactive merchant, the date the merchant’s account was deactivated, shown as milliseconds since the Unix Epoch. For an active merchant, this field is set to null.

To convert milliseconds since the Epoch to human-readable form:

  1. Round from milliseconds to seconds.
  2. Apply the Unix timestamp conversion algorithm.

Alternatively, use a web site that converts milliseconds since the Epoch, such as https://currentmillis.com.

paymentAccountNumber String The Pitney Bowes customer account number assigned to the merchant.
enterpriseAccount String An enterprise account number that is associated with the merchant.
subscriptionAccount String Any subscription account that the merchant might have.
postalReportingNumber String

The unique ID used to identify the merchant.

Note: This value is also the merchant’s Shipper ID. You must specify Shipper ID when creating a shipment.

merchantStatus String

The merchant’s status. Possible values are:

  • ACTIVE
  • INACTIVE
merchantStatusReason String For an inactive merchant, the reason the merchant was deactivated as entered in the Deactivate a Merchant API. For an active merchant, this field is set to null.
parcelProtection String If true, the merchant can choose to request PB Parcel Protection coverage when creating a shipment.
paymentKey String If the merchant uses ACH as the payment method, this returns the ACH payment key. Otherwise this returns the null value.
paymentMethod String

When returned by the Authorize a Merchant API call, this field indicates the payment method for the merchant’s PB Postage Account. For other API calls, this field returns the null value.

For the Authorize a Merchant API call, the possible values are:

  • LineOfCredit: PB Line of Credit
  • CreditCard: Credit card
  • ACH: (Automated Clearing House)
merchantCarrierAccounts Array[Object] This applies if the merchant registered additional commercial carrier accounts, other than Newgistics or PB Presort. Each object in this array contains information on a specific carrier account.
    accountNumber String The merchant’s account number with the carrier.
    carrierName String

The carrier. Possible values:

  • UPS
  • FEDEX (Coming soon to Sandbox)
    deactivationDate Number If the merchant has removed the carrier account, this is the date the account was removed.
    isActive Boolean If true, the carrier account is active. If false, the merchant has removed the carrier account.
    isAuthorized Boolean If true, the PB Shipping APIs can generate labels with this carrier on behalf of the merchant. If false, the APIs cannot generate labels with the carrier for this merchant.
    merchantCarrierAccountAttributes Array[Object] The merchant’s account settings with the carrier. Each object in the array defines a setting and its value.
        attributeName String The name of the Carrier Account Attribute.
        attributeValue String The value of the Carrier Account Attribute.
    registrationDate Number The date the carrier account was registered to be used with Pitney Bowes.
    shipperCarrierAccountId String The unique identifier to use when the merchant performs an operation that uses this carrier account. The identifier is passed in the X-PB-Shipper-Carrier-AccountId request header of the API request.

Sample Request

curl -X POST .../v2/developers/<developer_id>/accounts/<postal_reporting_number>/deactivate \
-H "Authorization: Bearer <oauth_token>" \
-H "Content-Type: application/json" \
-H "Accept-Language: en-US" \
-H "X-PB-UnifiedErrorStructure: true" \
-d '
{
    "reason": "cost"
}'

Sample Response

The operation returns the Merchant Object.

{
    "fullName": "John Doe",
    "email": "johndoe@example.com",
    "registeredDate": 1480982400000,
    "deactivatedDate": 1490128851018,
    "paymentAccountNumber": "1234567",
    "enterpriseAccount": "2345678",
    "subscriptionAccount": "3456789",
    "postalReportingNumber": "55555555",
    "merchantStatus": "INACTIVE",
    "merchantStatusReason": "cost",
    "parcelProtection": false
}

Error Codes

For a list of all PB Shipping APIs error codes, please see Error Codes.