Sending Cross Currency in Ripple

I have been facing this issue for a while using Ripple JSON RPC, am actually working on a PoC for cross border transaction, as part of my use cases, I need to send transaction in NGN and be received in USD/EUR.

I have read your David Schwartz response here and here but still having issues with the transaction

Here is my request

{ "method": "submit", "params": [ { "offline": false, "secret": "sssssssssssssssssssssss", "tx_json": { "SendMax" : { "currency" : "USD", "value" : "200", "issuer" : "rU3BENzHa5SeB2HnwzovG5wdk7v8ChxXrc" }, "Account": "rU3BENzHa5SeB2HnwzovG5wdk7v8ChxXrc", "Amount":{ "value": "100", "issuer": "rK6qNr9HV62gJPRvKGNen1qHi2LYyHSDvj", "currency": "NGN" }, "Destination": "rK6qNr9HV62gJPRvKGNen1qHi2LYyHSDvj", "TransactionType": "Payment" }, "fee_mult_max": 10000 } ] }

and I got this as my response

{ "result": { "engine_result": "tecPATH_PARTIAL", "engine_result_code": 101, "engine_result_message": "Path could not send full amount.", "status": "success", "tx_blob": "1200002280000000240000005661D5038D7EA4C680000000000000000000000000004E474E0000000000CD2B28791E0BEB754A75AF8DB99BDEF21DD8D4A968400000000000000A69D5071AFD498D000000000000000000000000000055534400000000007A04D90FD6B8D1400B5CD796391444090AF06C1F7321031810282977B92281325F0AC5DAF4AB7EDB3FBBE5404A38D657E327B1A46B7897744730450221008269F1C23E2C719A73F7F41D484C0577C1EBF496D8BD6009AA975A852C627E7202207FBD5CBA3EF5F5BE7696FAF5C45F2E22BDCEA7FD48BA99D75897BF58C474BD0D81147A04D90FD6B8D1400B5CD796391444090AF06C1F8314CD2B28791E0BEB754A75AF8DB99BDEF21DD8D4A9", "tx_json": { "Account": "rU3BENzHa5SeB2HnwzovG5wdk7v8ChxXrc", "Amount": { "currency": "NGN", "issuer": "rK6qNr9HV62gJPRvKGNen1qHi2LYyHSDvj", "value": "100" }, "Destination": "rK6qNr9HV62gJPRvKGNen1qHi2LYyHSDvj", "Fee": "10", "Flags": 2147483648, "SendMax": { "currency": "USD", "issuer": "rU3BENzHa5SeB2HnwzovG5wdk7v8ChxXrc", "value": "200" }, "Sequence": 86, "SigningPubKey": "031810282977B92281325F0AC5DAF4AB7EDB3FBBE5404A38D657E327B1A46B7897", "TransactionType": "Payment", "TxnSignature": "30450221008269F1C23E2C719A73F7F41D484C0577C1EBF496D8BD6009AA975A852C627E7202207FBD5CBA3EF5F5BE7696FAF5C45F2E22BDCEA7FD48BA99D75897BF58C474BD0D", "hash": "A658DE84ABFED32E0E52FBF02E60FBC81E32C5E6186427C33AEBD938188FE4BB" } } }

I understand that tecPATH_PARTIAL means that the transaction failed because the provided paths did not have enough liquidity to send the full amount.

But I did not specify the path bcos I understand it’s best when ripple choose the path.

I will appreciate any help in right direction

Recent Questions – Bitcoin Stack Exchange

creating address in wallet and sending how it works

I’m a bit of noob so I will apologize in advance. I’m reading people suggesting using different address every time I send an bitcoin. If I were to say send a 1BTC to someone I’d need to create a new address underneath my wallet and need to transfer 1 BTC from my other addresses and then send it to that address right? Wouldn’t that kind of defeat the purpose of securing and also costly by paying extra fees? Thank you

Recent Questions – Bitcoin Stack Exchange

Sending transaction with Python + raw protocol

Two days ago I’ve found a few articles, about using raw bitcoin protocol, and now I’m still trying to send a transaction.

My code is based on this class, and if I understand all of this bitcoin magic right, I need to sign my raw input transaction with the private key for address 1LwPhYQi4BRBuuyWSGVeb6kPrTqpSVmoYz and add my public key right after it – and it will be a valid unlocking script?

Here’s a part of my code, which I have completely copied from the previous link:

tx_in_count = struct.pack("<B", 1) tx_in = {}                                                                                                                                                                                                     tx_in["outpoint_hash"] = flip_byte_order(previous_output_hash).decode("hex") tx_in["outpoint_index"] = struct.pack("<L", 1) tx_in["script"] = ("76a914%s88ac" % private_key).decode("hex") tx_in["script_bytes"] = struct.pack("<B", (len(tx_in["script"]))) tx_in["sequence"] = "ffffffff".decode("hex") 

I’m not sure about tx_in["script"] line, because there is nothing about signing transaction or public keys, so probably it’s the reason for my failures.

Thanks for any answers 🙂

Recent Questions – Bitcoin Stack Exchange