I hereby claim:
- I am ramontayag on github.
- I am ramontayag (https://keybase.io/ramontayag) on keybase.
- I have a public key ASA5gMYNcwlVLDUhf0lYaFevh4GzKIvprytB5_vyRVlDDgo
To claim this, I am signing this object:
{ | |
nonce: "1488805458327055805", | |
transaction: { | |
sender_info: { | |
address: "678 Mission St", | |
city: "San Francisco", | |
country: "US", | |
first_name: "Aldi", | |
last_name: "Dobbs", | |
email: "aldi@dobbs.com", |
I hereby claim:
To claim this, I am signing this object:
operational_days
: 0 - Sunday, 7 - Saturdayoperational_hours
: business hours (during business days) in UTCWe want the federation server to enable remittances to two types of institutions: banks and remittance centers (cash pick-up). Stellar provides a standard way of doing this for banks, but not for cash pick-up centers or institutions that forward the money to some other institution.
The following are similar to federation and compliance with some differences that enable further status updates.
In the Philippines, we cannot rely on a way to determine if a bank account is correct, if it's open, or if it can be deposited to electronically. Therefore, we have to do reasonable checks (some banks have a fixed bank account number limit) on the federation request:
/federation?type=forward&forward_type=bank_account&swift=BOPBPHMM&acct=2382376
for banks, orJSON shown in here shows what the attachment
in the update payload the receiving FI posts to the sending FI about a specific transaction. The fields of the JSON may have these keys:
transaction_id
: Stellar transaction ID that triggered this. This is how the sending FI knows what transaction the receiving FI is referring to.tx_status
awaiting_payment
: waiting for Stellar paymentprocessing
: attempting to depositdelay
: encountered issues but may be resolved manually, please stand byerror
: could not deposit{ | |
"info_status": "ok", | |
"tx_status": "ok", | |
"dest_info": "{\"name\": \"Bogart Doe\"}", | |
"updates_url": "https://receiver.com/remittance_by_nonce/1488805458327055805" | |
} |
{ | |
"sender":"aldi*bankA.com", | |
"need_info":true, | |
"tx":"AAABJnsibm9uY2UiOiIxNDg4ODA1NDU4MzI3MDU1ODA1IiwidHJhbnNhY3Rpb24iOnsic2VuZGVyX2luZm8iOnsiYWRkcmVzcyI6IjY3OCBNaXNzaW9uIFN0IiwiY2l0eSI6IlNhbiBGcmFuY2lzY28iLCJjb3VudHJ5IjoiVVMiLCJmaXJzdF9uYW1lIjoiQWxkaSIsImxhc3RfbmFtZSI6IkRvYmJzIn0sInJvdXRlIjoiMSIsIm5vdGUiOiIiLCJleHRyYSI6IiIsInVwZGF0ZV9jYWxsYmFja191cmwiOiJodHRwczovL3NlbmRlci5jb20vdHhuX3VwZGF0ZXMvMTQ4ODgwNTQ1ODMyNzA1NTgwNSJ9LCJvcGVyYXRpb25zIjpudWxsfQAA", | |
"attachment":"{\"nonce\":\"1488805458327055805\",\"transaction\":{\"sender_info\":{\"address\":\"678 Mission St\",\"city\":\"San Francisco\",\"country\":\"US\",\"first_name\":\"Aldi\",\"last_name\":\"Dobbs\"},\"route\":\"1\",\"note\":\"\",\"extra\":\"\",\"update_callback_url\":\"https://sender.com/txn_updates/1488805458327055805\"},\"operations\":null}" | |
} |
postgres=# \d+ operations | |
Table "public.operations" | |
Column | Type | Modifiers | Storage | Stats target | Description | |
-----------------+-----------------------------+---------------------------------------------------------+----------+--------------+------------- | |
id | integer | not null default nextval('operations_id_seq'::regclass) | plain | | | |
external_id | character varying | not null | extended | | | |
ledger_sequence | integer | not null | plain | | | |
body | jsonb | not null default '"{}"'::jsonb | extended | | | |
created_at | timestamp without time zone | not null |
GEM | |
remote: https://rubygems.org/ | |
specs: | |
actioncable (5.0.0.1) | |
actionpack (= 5.0.0.1) | |
nio4r (~> 1.2) | |
websocket-driver (~> 0.6.1) | |
actionmailer (5.0.0.1) | |
actionpack (= 5.0.0.1) | |
actionview (= 5.0.0.1) |
Ok great. First, I’m not a leather expert, so I may say some inaccurate things here.