Bulk Address Cleanup, Parser, CSV Creator for USPS Shipping Labels.

A vendor's best friend. Create USPS shipping labels in seconds instead of hours.

This tool takes as many destination addresses (no matter how poorly formatted) as you’ve got, cleans them up by removing any unnecessary information (including any notes the customer may have left), and then separates each address into the following columns:Name | Address/PO Box | Apt/Unit # | City | State

Then it takes that data & creates a pre-filled .csv file for download that is compatible with the bulk upload feature @ btcpostage.info.

Step 1. DL template & fill with your ‘to’ address(es), speed, and package type.

Download the template (you may have to right-click and “save as”) or select “Paste Address” and fill out the following columns:

– Destination addresses (one address per line if using the paste feature)

– Shipping speed (service),

– Package type (defaults to ‘Priority’ if blank).

You can paste the address exactly how the customer provides it to you as it will remove any extra “hello” or “ship to:” text the customer may leave

Step 2. Upload the file, don’t submit yet.

Step 3. Enter a “from” address and click the submit button.Wait a couple seconds then review the output.

This tool takes the address you provide and will clean it up & parse it correctly into the relevant parts (Name, Address/PO Box, Unit #, City, State)

You can make changes to any address that was not parsed correctly.

Step 4. DL the .csv & upload to btcpostage
Hit “next” and download the output .csv file.

This output file is a template .csv file that is compatible with btcpostage.

It contains the parsed addresses from step 2 and does not need to be adjusted.

It’s ready for immediate upload to https://bitcoinpostage.info/bulk

And you’re done!

Not working? Download the app instead

Is this app secure? What information is stored? (None)

This app requires very light Javascript to run. It’s a must unfortunately. If you download the app you can avoid having to turn javascript off on your main browser. The app is just a nativefier browser app with some privacy oriented settings

TLDR; no, we don’t collect any information. Each session is available only to you. Once you leave the page, or refresh it, your download will disappear. It is never stored on our servers, either. Click the button below to see the privacy code.

App will be free for a couple weeks. After that, free accounts will be able to process only 10 addresses at a time.
Membership will be $50/mo and will remove the limit entirely.

Step 1. Upload (or) paste your unformatted addresses

Upload the addresses to parse

To download the XLS/XLSX template click here
To download the CSV template click here

How would you like to upload your data:

Give it a couple seconds after hitting submit, make edits in the fields provided, or do nothing at all, then scroll to the bottom to download. The file is ready to be uploaded to bitcoinpostage.info, which you can do below. 

Step 2. Upload your file to bitcoinpostage.info

Step 3. Print and you're all done!

Use a thermal printer. Saves lots of time. 

Shipping Speed, Package Types, & FAQ

Available "Services (shipping speed)"

  • Priority
  • Express

Available "Package Types"

  • flatrateenvelope (Flat Rate Envelope)
  • flatratelegalenvelope (Flat Rate Legal Envelope)
  • flatratepaddedenvelope (Flat Rate Padded Envelope)
  • flatrategiftcardenvelope (Flat Rate Gift Card Envelope)
  • flatratewindowenvelope (Flat Rate Window Envelope)
  • flatratecardboardenvelope (Flat Cardboard Envelope)
  • smallflatratebox (Flat Rate Box – Small)
  • mediumflatratebox (Flat Rate Box – Medium)
  • largeflatratebox (Flat Rate Box – Large)


Step 3. Print and you're all done!

Use a thermal printer. Saves lots of time. 

Shipping Speed, Package Types & FAQ

Privacy Assurance Code

					$filename = DELIVERY_LABEL_GENERATOR_PLUGIN_DIR . '/assets/output-file.csv';

  // clean out other output buffers
  //$fp = fopen( $filename, 'w' );
  $fp = fopen( 'php://output', 'w' ) or show_error("Can't open php://output");

  //Creates the header row. Uses tab as a seperator
  $header_row = array_keys( $final_data[0] );
  fputcsv( $fp, $header_row, "," );

  //Maps the data row with the columns headers.
  foreach( $final_data as $row ) {
   fputcsv($fp, $row,",");
  //fclose($fp); To see how data is handled, pay attention what happens to '$csvStr;'
  fclose($fp) or show_error("Can't close php://output");
  $csvStr = ob_get_contents();

  //Generates url to access the final file.
  $output_file_url = DELIVERY_LABEL_GENERATOR_PLUGIN_URL . '/assets/output-file.csv';
  /*$output_file = "<p id='nt-download-link'>
       <a href='$output_file_url'>" .
        __( 'Download the output file by clicking here', 'nt-delivery-label-generator') .
  $output_file = $csvStr;
  $data = array(
   'data' => __( 'Thank you for sending us your feedback', 'nt-delivery-label-generator' ),
   'output_file' => $output_file
  wp_send_json_success( $data, 200 );


A cute dog