I tried to send as follows:
transfer <address> <amount> <payment ID> <address2> <amount2> <paymentID2>
I received an error:
Error: failed to parse address
Did I do something incorrectly, or is there a limit of a single payment ID per
One payment ID at most is allowed, as seen in the help blurb for the transfer command (see the end):
transfer [index=<N1>[,<N2>,...]] [<priority>] [<ring_size>] <address> <amount> [<payment_id>] - Transfer <amount> to <address>. If the parameter "index=<N1>[,<N2>,...]" is specified, the wallet uses outputs received by addresses of those indices. If omitted, the wallet randomly chooses address indices to be used. In any case, it tries its best not to combine outputs across multiple addresses. <priority> is the priority of the transaction. The higher the priority, the higher the fee of the transaction. Valid values in priority order (from lowest to highest) are: unimportant, normal, elevated, priority. If omitted, the default value (see the command "set priority") is used. <ring_size> is the number of inputs to include for untraceability. Multiple payments can be made at once by adding <address_2> <amount_2> etcetera (before the payment ID, if it's included)
If you want more than one payment id, use as many transactions.