Using the ReturnGO API for Return Pickups

The ReturnGO API enables you to integrate with third-party pickup services to provide return pickups for your customers. This is useful if you want to offer pickup returns using a carrier that ReturnGO doesn't directly integrate with.

For more information, check out the article about the ReturnGO API and its abilities.


To use the ReturnGO API, you’ll need:

See full documentation of endpoints, webhooks, and more: ReturnGO API Documentation.

Enabling the Pickup Address Feature

In order to integrate with a pickup service carrier, make sure the pickup address confirmation feature is enabled.

By default, this feature is hidden, so you need to contact ReturnGO support to enable it. 

Once enabled, customers will be asked to confirm or update the pickup address as part of the portal flow.

This address can then be accessed via the ReturnGO API for creating pickups. The same address is also used to ship the new item in the case of an exchange.

How to Connect with a Pickup Carrier

Use the API connection with the pickup carrier to notify the carrier when an RMA is created and generate a return pickup request through the carrier.

A relevant label can then be automatically included in confirmation emails to customers.


  • A ship with any carrier return method - when this return method is selected as the RMA's return method, you’ll need to generate a return shipping label.
  • One or more return policy rules set with the relevant return method.
  • The return policy rules need to be set to manual approval. RMAs will be automatically approved through the API.

To connect a pickup carrier using the ReturnGO API:

  1. Receive webhook event on RMA creation - Register to the webhook event of RMA Created so that when an RMA is created in ReturnGO, you receive the event that an RMA has been created. 
  2. Get the RMA details - Use the GET RMA Details endpoint to get the information about the return, including addresses, customer information, etc.
  3. Generate the return pickup label - Generate the return label through the pickup carrier.
  4. Add label to the RMA - Use ReturnGO’s PUT Shipment endpoint to add the return label URL to the corresponding RMA. Shipping labels in PDF or PNG formats are fully supported.

If the return method is configured to generate a packing slip as well, the packing slip will be attached as a second page to the provided label.

This links the relevant information such as the shipment ID to the RMA, enabling you to include the URL in the RMA card so you can track it manually, as well as in emails so you can enable customers to register for updates.

Note: The shipment ID is generated when the return method requires the items to be returned and will appear in the RMA details.

5. Approve the RMA - Approve the RMA with ReturnGO’s PUT RMA Status endpoint. The pickup details will be documented in the RMA.

Make sure the shipping instructions for the return method include the relevant steps, including a {print_label_button} variable to include the label in the shipping instructions.

6. Receive shipment status updates - Use webhooks or polling to get shipment status updates from the carrier.

7. Set shipment status - Set shipment status to Shipped when the package is on its way or RMA status to Received when the package is delivered.


Note: The rate limit is up to 2000 calls per day and 100 calls per second. If you need a higher limit, contact ReturnGO support.

Adding Pickup Details to RMA Emails

ReturnGO sends update notifications to your customers based on the shipment status tracked by your system and then set using the API.

Tip: By adding a label URL through the API, the approval email will include a "print label" option. This makes it convenient for customers to access and print the pickup label directly from the email.

Learn more about using the ReturnGO API to integrate with shipping carriers.